{ inputs, outputs, lib, config, pkgs, ... }: { imports = [ ./home.nix ./util/local-webapp.nix ]; home = { username = "bolt"; homeDirectory = "/home/bolt"; packages = with pkgs; [ nicotine-plus ]; }; localWebApps = { stable-diffusion = { name = "ComfyUI (Stable Diffusion)"; icon = ./icons/comfyui.png; id = 5; port = 7860; service = { WorkingDirectory = "${config.home.homeDirectory}/code/etc/stable-diffusion-webui-docker"; ExecStart = "${lib.getExe pkgs.docker} compose --profile comfy up --build"; }; }; openwebui = rec { name = "OpenWebUI (Ollama)"; icon = ./icons/openwebui.png; id = 6; port = 3021; service = let docker = lib.getExe pkgs.docker; in { Type = "exec"; ExecStartPre = "-${docker} create -e PORT=${builtins.toString port} --network host --gpus all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama"; ExecStart = "${docker} start open-webui"; ExecStop = "${docker} stop open-webui"; }; }; }; }