Compare commits
No commits in common. "8db9ceb372f2ce799beebf573b609909f573aa7c" and "5f42498a39cf55848447e96802c4d1fbd9aa4f7a" have entirely different histories.
8db9ceb372
...
5f42498a39
5 changed files with 26 additions and 126 deletions
50
flake.lock
generated
50
flake.lock
generated
|
@ -428,31 +428,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"python-flexseal": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"stable-diffusion-webui-nix",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"stable-diffusion-webui-nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751898758,
|
||||
"narHash": "sha256-8EmTPdfOymvvHhmHYWiyO3cwZ4gtLo5uBFm3CU5vySo=",
|
||||
"owner": "Janrupf",
|
||||
"repo": "python-flexseal",
|
||||
"rev": "af318e1fd047abbefcc68d0292a4d902179c95fe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Janrupf",
|
||||
"repo": "python-flexseal",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"dedupe_flake-compat": "dedupe_flake-compat",
|
||||
|
@ -472,7 +447,6 @@
|
|||
"nur": "nur",
|
||||
"nvf": "nvf",
|
||||
"sops-nix": "sops-nix",
|
||||
"stable-diffusion-webui-nix": "stable-diffusion-webui-nix",
|
||||
"stylix": "stylix",
|
||||
"systems": "systems",
|
||||
"text": "text"
|
||||
|
@ -498,30 +472,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stable-diffusion-webui-nix": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"dedupe_flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"python-flexseal": "python-flexseal"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751899247,
|
||||
"narHash": "sha256-bh6xwc24Rv0YE4grKXvj+kmXmydns+OrlWn4WLnJSY4=",
|
||||
"owner": "janrupf",
|
||||
"repo": "stable-diffusion-webui-nix",
|
||||
"rev": "d5ba5dccd190b0ded17f9c4a23dc7665c6dc2eae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "janrupf",
|
||||
"repo": "stable-diffusion-webui-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
|
|
30
flake.nix
30
flake.nix
|
@ -15,17 +15,6 @@
|
|||
systems.url = "github:nix-systems/default";
|
||||
# nixos-unstable provides a binary cache for all packages.
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
# home-manager manages our user packages and dotfiles
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
# the nix user repository for mainly firefox extensions
|
||||
nur = {
|
||||
url = "github:nix-community/NUR";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-parts.follows = "flake-parts";
|
||||
};
|
||||
# impermanence provides a nice abstraction over linking files from /persist
|
||||
impermanence.url = "github:nix-community/impermanence";
|
||||
# flake-parts lets us define flake modules.
|
||||
|
@ -76,13 +65,24 @@
|
|||
};
|
||||
};
|
||||
|
||||
### FLAKES ###
|
||||
### HOME-MANAGER ###
|
||||
|
||||
# home-manager manages our user packages and dotfiles
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
# nix-index-database indexes the nixpkgs binaries for use with comma
|
||||
nix-index-database = {
|
||||
url = "github:nix-community/nix-index-database";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
# the nix user repository for mainly firefox extensions
|
||||
nur = {
|
||||
url = "github:nix-community/NUR";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-parts.follows = "flake-parts";
|
||||
};
|
||||
# nvf provides modules to wrap neovim
|
||||
nvf = {
|
||||
url = "github:notashelf/nvf";
|
||||
|
@ -94,12 +94,6 @@
|
|||
mnw.follows = "dedupe_mnw";
|
||||
};
|
||||
};
|
||||
# provides comfy ui and sdwebui services
|
||||
stable-diffusion-webui-nix = {
|
||||
url = "github:janrupf/stable-diffusion-webui-nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "dedupe_flake-utils";
|
||||
};
|
||||
|
||||
### DEDUPE ###
|
||||
|
||||
|
|
|
@ -18,33 +18,14 @@ in
|
|||
mkHost = domain: if isRootDomain domain then domain else mkWildcardDomain (mkRootDomain domain);
|
||||
mkWebApp =
|
||||
{
|
||||
config,
|
||||
name,
|
||||
defaultPort,
|
||||
persistDirs ? [ ],
|
||||
serviceConfig ? { },
|
||||
extraOptions ? { },
|
||||
extraConfig ? { },
|
||||
}:
|
||||
let
|
||||
cfg = config.server.web-apps.${name};
|
||||
networkingConfig =
|
||||
{
|
||||
config,
|
||||
cfg,
|
||||
name,
|
||||
}:
|
||||
mkIf (cfg.domain != "") {
|
||||
assertions = singleton {
|
||||
assertion = config.server.web-servers.nginx.enable;
|
||||
message = "You must enable a web server if you want to set server.web-apps.${name}.domain.";
|
||||
};
|
||||
server.ddns.domains = singleton (mkRootDomain cfg.domain);
|
||||
server.web-servers.nginx.proxies = singleton {
|
||||
source = cfg.domain;
|
||||
target = "http://${config.hostname}:${toString cfg.port}";
|
||||
};
|
||||
};
|
||||
|
||||
in
|
||||
{
|
||||
options.server.web-apps.${name} = {
|
||||
|
@ -60,10 +41,20 @@ in
|
|||
inherit persistDirs;
|
||||
networking.firewall = mkIf cfg.openFirewall { allowedTCPPorts = singleton cfg.port; };
|
||||
}
|
||||
(networkingConfig { inherit config cfg name; })
|
||||
extraConfig
|
||||
(mkIf (cfg.domain != "") {
|
||||
assertions = singleton {
|
||||
assertion = config.server.web-servers.nginx.enable;
|
||||
message = "You must enable a web server if you want to set server.web-apps.${name}.domain.";
|
||||
};
|
||||
server.networking.ddns.domains = singleton (mkRootDomain cfg.domain);
|
||||
server.web-servers.nginx.proxies = singleton {
|
||||
source = cfg.domain;
|
||||
target = "http://${config.hostname}:${toString cfg.port}";
|
||||
};
|
||||
})
|
||||
serviceConfig
|
||||
cfg.extraCfg
|
||||
]);
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
}
|
||||
];
|
||||
};
|
||||
extraCfg.server.web-apps.comfy-ui.enable = true;
|
||||
};
|
||||
apollo = {
|
||||
graphical = false;
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue