49 lines
1.2 KiB
Nix
49 lines
1.2 KiB
Nix
{
|
|
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";
|
|
};
|
|
};
|
|
};
|
|
}
|