aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaroline Larimore <caroline@larimo.re>2025-04-14 14:54:40 -0700
committerCaroline Larimore <caroline@larimo.re>2025-04-14 18:58:53 -0700
commit5ee9dd8cf0bbf837f967f6c902b8fd3c427ff495 (patch)
treed5949ceb2fbade754e2083f7b84ac9edf36f867e
parent5a8d24052232b776858aae9d63da58169db62465 (diff)
migration: image webserver
-rw-r--r--roles/web/default.nix1
-rw-r--r--roles/web/images/default.nix26
-rw-r--r--snowfall/modules/nixos/services/web/images/default.nix34
-rw-r--r--snowfall/systems/x86_64-linux/copenhagen/default.nix1
4 files changed, 35 insertions, 27 deletions
diff --git a/roles/web/default.nix b/roles/web/default.nix
index d15d682..d9fc202 100644
--- a/roles/web/default.nix
+++ b/roles/web/default.nix
@@ -2,7 +2,6 @@
{
imports = [
- ./images
./personal
./stargazers
];
diff --git a/roles/web/images/default.nix b/roles/web/images/default.nix
deleted file mode 100644
index cc95d9d..0000000
--- a/roles/web/images/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ config, lib, ... }:
-with lib;
-
-let
- cfg = config.roles.web.images;
-in {
- options.roles.web.images = {
- enable = mkEnableOption "images site";
- };
-
- config = mkIf cfg.enable {
- networking.firewall.allowedTCPPorts = [ 80 443 ];
-
- services.nginx = {
- enable = true;
- virtualHosts = {
- "i.cxl.sh" = {
- addSSL = true;
- enableACME = true;
-
- root = "/srv/web/images";
- };
- };
- };
- };
-}
diff --git a/snowfall/modules/nixos/services/web/images/default.nix b/snowfall/modules/nixos/services/web/images/default.nix
new file mode 100644
index 0000000..b1c44e6
--- /dev/null
+++ b/snowfall/modules/nixos/services/web/images/default.nix
@@ -0,0 +1,34 @@
+{ options, config, lib, namespace, ... }:
+
+with lib; with lib.${namespace}; let
+ cfg = config.${namespace}.services.web.images;
+ impermanence = config.${namespace}.system.impermanence;
+in {
+ options.${namespace}.services.web.images = with types; {
+ enable = mkEnableOption "image webserver";
+ };
+
+ config = mkIf cfg.enable {
+ cxl.services.web.enable = true;
+
+ environment.persistence.${impermanence.location} = {
+ directories = [
+ "/srv/web/images"
+ ];
+ };
+
+ networking.firewall.allowedTCPPorts = [ 80 443 ];
+
+ services.nginx = {
+ enable = true;
+ virtualHosts = {
+ "i.cxl.sh" = {
+ addSSL = true;
+ enableACME = true;
+
+ root = "/srv/web/images";
+ };
+ };
+ };
+ };
+}
diff --git a/snowfall/systems/x86_64-linux/copenhagen/default.nix b/snowfall/systems/x86_64-linux/copenhagen/default.nix
index ff0c0ed..20bfabb 100644
--- a/snowfall/systems/x86_64-linux/copenhagen/default.nix
+++ b/snowfall/systems/x86_64-linux/copenhagen/default.nix
@@ -18,6 +18,7 @@ with lib; with lib.${namespace}; {
services = {
web = {
enable = true;
+ images.enable = true;
}
}
};