diff --git a/nix/manifest.nix b/nix/manifest.nix index ef39862..069377e 100644 --- a/nix/manifest.nix +++ b/nix/manifest.nix @@ -23,6 +23,7 @@ } ]; }; + extraCfg.server.web-apps.comfy-ui.enable = true; }; apollo = { graphical = false; diff --git a/nix/modules/server/web-apps/comfy-ui.nix b/nix/modules/server/web-apps/comfy-ui.nix new file mode 100644 index 0000000..738e2e5 --- /dev/null +++ b/nix/modules/server/web-apps/comfy-ui.nix @@ -0,0 +1,34 @@ +{ + lib, + config, + inputs, + ... +}: +let + inherit (lib.lists) singleton; + inherit (config.flake.lib.services) mkWebApp; +in +{ + flake.modules.nixos.default = + { config, ... }: + let + upstreamCfg = config.services.comfyUi; + in + mkWebApp { + inherit config; + name = "comfy-ui"; + defaultPort = 8188; + persistDirs = singleton { + directory = upstreamCfg.dataDir; + inherit (upstreamCfg) user group; + mode = "777"; + }; + extraConfig.services.comfyUi = { + enable = true; + listenHost = "0.0.0.0"; + }; + } + // { + imports = [ inputs.stable-diffusion-webui-nix.nixosModules.default ]; + }; +}