From a2cebf3117d43e22987ce669fb40440261f04ab2 Mon Sep 17 00:00:00 2001 From: Nick Date: Sun, 3 Aug 2025 22:19:54 -0500 Subject: [PATCH] feat: testing comfy --- modules/nixos/services/comfyui/default.nix | 50 ++++++---------------- 1 file changed, 13 insertions(+), 37 deletions(-) diff --git a/modules/nixos/services/comfyui/default.nix b/modules/nixos/services/comfyui/default.nix index 77b973f..04d4794 100755 --- a/modules/nixos/services/comfyui/default.nix +++ b/modules/nixos/services/comfyui/default.nix @@ -68,45 +68,21 @@ in allowedTCPPorts = [ cfg.port ]; }; - systemd.services.comfyui = - let - comfyui-wrapper = pkgs.writeShellScript "comfyui-wrapper" '' - # Let ComfyUI initialize its files first - cd /var/lib/comfyui + systemd.services.comfyui = { + description = "ComfyUI Service"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; - # Start ComfyUI in background to initialize files - ${cfg.package}/bin/comfyui --port ${toString cfg.port} --listen ${cfg.host} & - COMFYUI_PID=$! - - # Wait a moment for file initialization - sleep 2 - - # Kill the initialization process - kill $COMFYUI_PID 2>/dev/null || true - wait $COMFYUI_PID 2>/dev/null || true - - # Now recreate the custom_nodes directory - mkdir -p /var/lib/comfyui/custom_nodes - - # Start ComfyUI properly - exec ${cfg.package}/bin/comfyui --port ${toString cfg.port} --listen ${cfg.host} - ''; - in - { - description = "ComfyUI Service"; - wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; - - serviceConfig = { - Type = "simple"; - ExecStartPre = "${pkgs.coreutils}/bin/mkdir -p /var/lib/comfyui/custom_nodes"; - ExecStart = "${comfyui-wrapper}"; - Restart = "on-failure"; - User = "comfyui"; - Group = "comfyui"; - WorkingDirectory = "/var/lib/comfyui"; - }; + serviceConfig = { + Type = "simple"; + ExecStart = "${cfg.package}/bin/comfyui --port ${toString cfg.port} --listen ${cfg.host}"; + ExecStartPost = "${pkgs.bash}/bin/bash -c 'sleep 5 && mkdir -p /var/lib/comfyui/custom_nodes'"; + Restart = "on-failure"; + User = "comfyui"; + Group = "comfyui"; + WorkingDirectory = "/var/lib/comfyui"; }; + }; users.users.comfyui = { group = "comfyui";