{ lib, namespace, ... }:
with lib;
{
  options.${namespace}.services.orca-slicer = {
    enable = mkEnableOption "orca slicer docker service";

    autoStart = mkOption {
      type = types.bool;
      default = true;
    };

    httpPort = mkOption {
      type = types.str;
      default = "3000";
    };

    httpsPort = mkOption {
      type = types.str;
      default = "3001";
    };

    name = mkOption {
      type = types.str;
      default = "orca-slicer";
    };

    image = mkOption {
      type = types.str;
      default = "linuxserver/orcaslicer";
    };

    configPath = mkOption {
      type = types.str;
      default = "/media/nas/main/ssd_app_data/orca-slicer";
    };

    dataPath = mkOption {
      type = types.str;
      default = "/media/nas/main/3d_printer";
    };

    puid = mkOption {
      type = types.str;
      default = "911";
    };

    pgid = mkOption {
      type = types.str;
      default = "1000";
    };

    timeZone = mkOption {
      type = types.str;
      default = "America/Chicago";
    };
  };
}
