feat: refactor the modules/servers directory.

This commit is contained in:
CronyAkatsuki 2026-01-19 21:36:24 +01:00
parent 4e783c052b
commit 8b754d3a7e
69 changed files with 61 additions and 62 deletions

View file

@ -19,8 +19,7 @@
serverExtras =
if host.type == "server"
then [
# ./modules/servers/general
./modules/servers/${name}
./modules/servers/per-server/${name}
./modules/servers/home-manager
]
else [];

View file

@ -4,12 +4,12 @@
home-manager.backupFileExtension = "backup";
home-manager.users.root = {
imports = [
./root.nix
./users/root.nix
];
};
home-manager.users.crony = {
imports = [
./crony.nix
./users/crony.nix
];
};
}

View file

@ -1,5 +1,5 @@
{
imports = [./home.nix];
imports = [../home.nix];
home.username = "crony";
home.homeDirectory = "/home/crony";
}

View file

@ -1,5 +1,5 @@
{
imports = [./home.nix];
imports = [../home.nix];
home.username = "root";
home.homeDirectory = "/root";
}

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
]
++ hostModules;
}

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
./secrets.nix
]
++ hostModules;

View file

@ -2,10 +2,10 @@
age = {
secrets = {
rclone = {
file = ../../../secrets/rclone.age;
file = ../../../../secrets/rclone.age;
};
navidrome = {
file = ../../../secrets/navidrome.age;
file = ../../../../secrets/navidrome.age;
};
};
};

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
]
++ hostModules;
}

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
./secrets.nix
]
++ hostModules;

View file

@ -2,7 +2,7 @@
age = {
secrets = {
wg-heimdall = {
file = ../../../secrets/wg-heimdall.age;
file = ../../../../secrets/wg-heimdall.age;
};
};
};

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
./secrets.nix
]
++ hostModules;

View file

@ -2,10 +2,10 @@
age = {
secrets = {
searx = {
file = ../../../secrets/searx.age;
file = ../../../../secrets/searx.age;
};
miniflux = {
file = ../../../secrets/miniflux.age;
file = ../../../../secrets/miniflux.age;
};
};
};

View file

@ -8,7 +8,7 @@
in {
imports =
[
../general
../../common
./secrets.nix
]
++ hostModules;

View file

@ -0,0 +1,18 @@
{
age = {
secrets = {
forgejo-db = {
file = ../../../../secrets/forgejo-db.age;
};
plausible = {
file = ../../../../secrets/plausible.age;
};
conduit = {
file = ../../../../secrets/conduit.age;
};
lemmy-env = {
file = ../../../../secrets/lemmy.env.age;
};
};
};
}

View file

@ -0,0 +1,15 @@
{...}: let
servicesDir = ./services;
serviceFiles =
builtins.filter
(name: builtins.match "^.*\\.nix$" name != null)
(builtins.attrNames (builtins.readDir servicesDir));
hostModules = map (fn: import "${servicesDir}/${fn}") serviceFiles;
in {
imports =
[
../../common
./secrets.nix
]
++ hostModules;
}

View file

@ -2,46 +2,46 @@
age = {
secrets = {
wg-tyr = {
file = ../../../secrets/wg-tyr.age;
file = ../../../../secrets/wg-tyr.age;
};
duckdns = {
file = ../../../secrets/duckdns.age;
file = ../../../../secrets/duckdns.age;
};
restic-server-local-pass = {
file = ../../../secrets/restic-server-local-pass.age;
file = ../../../../secrets/restic-server-local-pass.age;
};
restic-server-pass = {
file = ../../../secrets/restic-server-pass.age;
file = ../../../../secrets/restic-server-pass.age;
};
restic-server-repo = {
file = ../../../secrets/restic-server-repo.age;
file = ../../../../secrets/restic-server-repo.age;
};
restic-server-env = {
file = ../../../secrets/restic-server-env.age;
file = ../../../../secrets/restic-server-env.age;
};
glance = {
file = ../../../secrets/glance.age;
file = ../../../../secrets/glance.age;
};
traefik = {
file = ../../../secrets/traefik.age;
file = ../../../../secrets/traefik.age;
owner = "traefik";
};
ddns = {
file = ../../../secrets/ddns.age;
file = ../../../../secrets/ddns.age;
path = "/var/lib/ddns-updater/config.json";
owner = "nobody";
group = "nogroup";
symlink = false;
};
linkwarden = {
file = ../../../secrets/linkwarden.age;
file = ../../../../secrets/linkwarden.age;
owner = config.services.linkwarden.user;
};
linkwarden-db = {
file = ../../../secrets/linkwarden.age;
file = ../../../../secrets/linkwarden.age;
};
paperless-ngx = {
file = ../../../secrets/paperless-ngx.age;
file = ../../../../secrets/paperless-ngx.age;
};
};
};

View file

@ -1,18 +0,0 @@
{
age = {
secrets = {
forgejo-db = {
file = ../../../secrets/forgejo-db.age;
};
plausible = {
file = ../../../secrets/plausible.age;
};
conduit = {
file = ../../../secrets/conduit.age;
};
lemmy-env = {
file = ../../../secrets/lemmy.env.age;
};
};
};
}

View file

@ -1,15 +0,0 @@
{...}: let
servicesDir = ./services;
serviceFiles =
builtins.filter
(name: builtins.match "^.*\\.nix$" name != null)
(builtins.attrNames (builtins.readDir servicesDir));
hostModules = map (fn: import "${servicesDir}/${fn}") serviceFiles;
in {
imports =
[
../general
./secrets.nix
]
++ hostModules;
}