mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-16 10:05:13 -05:00
refactor: reworked all maps
This commit is contained in:
parent
b5aa0453e4
commit
a114034e0e
20 changed files with 220 additions and 207 deletions
|
@ -1,41 +1,4 @@
|
||||||
{lib, ...}: let
|
{lib, ...}: let
|
||||||
deviceNames = [
|
|
||||||
"desktop"
|
|
||||||
"laptop"
|
|
||||||
"nas"
|
|
||||||
"phone"
|
|
||||||
"printer0"
|
|
||||||
"printer1"
|
|
||||||
"server"
|
|
||||||
"tablet"
|
|
||||||
];
|
|
||||||
instanceNames = [
|
|
||||||
"acme"
|
|
||||||
"caddy"
|
|
||||||
"castopod"
|
|
||||||
"forgejo"
|
|
||||||
"jellyfin"
|
|
||||||
"mastodon"
|
|
||||||
"matrix"
|
|
||||||
"minecraft"
|
|
||||||
"nextcloud"
|
|
||||||
"nginx"
|
|
||||||
"ollama"
|
|
||||||
"owncast"
|
|
||||||
"peertube"
|
|
||||||
"postgresql"
|
|
||||||
"samba"
|
|
||||||
"syncthing"
|
|
||||||
"synology"
|
|
||||||
"vaultwarden"
|
|
||||||
"web"
|
|
||||||
"wiki"
|
|
||||||
"writefreely"
|
|
||||||
];
|
|
||||||
userNames = [
|
|
||||||
"user0"
|
|
||||||
"user1"
|
|
||||||
];
|
|
||||||
stringType = lib.mkOption {
|
stringType = lib.mkOption {
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
};
|
};
|
||||||
|
@ -60,11 +23,16 @@
|
||||||
in let
|
in let
|
||||||
peopleSubmodule = lib.types.submodule {
|
peopleSubmodule = lib.types.submodule {
|
||||||
options =
|
options =
|
||||||
builtins.listToAttrs (map (name: {
|
builtins.listToAttrs (
|
||||||
|
map (name: {
|
||||||
inherit name;
|
inherit name;
|
||||||
value = stringType;
|
value = stringType;
|
||||||
})
|
})
|
||||||
userNames)
|
[
|
||||||
|
"user0"
|
||||||
|
"user1"
|
||||||
|
]
|
||||||
|
)
|
||||||
// {
|
// {
|
||||||
user = lib.mkOption {
|
user = lib.mkOption {
|
||||||
type = lib.types.attrsOf userSubmodule;
|
type = lib.types.attrsOf userSubmodule;
|
||||||
|
@ -83,14 +51,33 @@ in let
|
||||||
};
|
};
|
||||||
serviceSubmodule = lib.types.submodule {
|
serviceSubmodule = lib.types.submodule {
|
||||||
options =
|
options =
|
||||||
builtins.listToAttrs (
|
builtins.listToAttrs (map (name: {
|
||||||
map
|
|
||||||
(name: {
|
|
||||||
inherit name;
|
inherit name;
|
||||||
value = stringType;
|
value = stringType;
|
||||||
})
|
})
|
||||||
instanceNames
|
[
|
||||||
)
|
"acme"
|
||||||
|
"caddy"
|
||||||
|
"castopod"
|
||||||
|
"forgejo"
|
||||||
|
"jellyfin"
|
||||||
|
"mastodon"
|
||||||
|
"matrix"
|
||||||
|
"minecraft"
|
||||||
|
"nextcloud"
|
||||||
|
"nginx"
|
||||||
|
"ollama"
|
||||||
|
"owncast"
|
||||||
|
"peertube"
|
||||||
|
"postgresql"
|
||||||
|
"samba"
|
||||||
|
"syncthing"
|
||||||
|
"synology"
|
||||||
|
"vaultwarden"
|
||||||
|
"web"
|
||||||
|
"wiki"
|
||||||
|
"writefreely"
|
||||||
|
])
|
||||||
// {
|
// {
|
||||||
instance = lib.mkOption {
|
instance = lib.mkOption {
|
||||||
type = lib.types.attrsOf instanceSubmodule;
|
type = lib.types.attrsOf instanceSubmodule;
|
||||||
|
@ -117,14 +104,20 @@ in let
|
||||||
};
|
};
|
||||||
systemSubmodule = lib.types.submodule {
|
systemSubmodule = lib.types.submodule {
|
||||||
options =
|
options =
|
||||||
builtins.listToAttrs (
|
builtins.listToAttrs (map (name: {
|
||||||
map
|
|
||||||
(name: {
|
|
||||||
inherit name;
|
inherit name;
|
||||||
value = stringType;
|
value = stringType;
|
||||||
})
|
})
|
||||||
deviceNames
|
[
|
||||||
)
|
"desktop"
|
||||||
|
"laptop"
|
||||||
|
"nas"
|
||||||
|
"phone"
|
||||||
|
"printer0"
|
||||||
|
"printer1"
|
||||||
|
"server"
|
||||||
|
"tablet"
|
||||||
|
])
|
||||||
// {
|
// {
|
||||||
device = lib.mkOption {
|
device = lib.mkOption {
|
||||||
type = lib.types.attrsOf deviceSubmodule;
|
type = lib.types.attrsOf deviceSubmodule;
|
||||||
|
|
|
@ -3,7 +3,16 @@
|
||||||
|
|
||||||
i18n = let
|
i18n = let
|
||||||
locale = "en_CA.UTF-8";
|
locale = "en_CA.UTF-8";
|
||||||
extraSettings = [
|
in {
|
||||||
|
defaultLocale = locale;
|
||||||
|
|
||||||
|
extraLocaleSettings =
|
||||||
|
builtins.listToAttrs
|
||||||
|
(map (option: {
|
||||||
|
name = option;
|
||||||
|
value = locale;
|
||||||
|
})
|
||||||
|
[
|
||||||
"LC_ADDRESS"
|
"LC_ADDRESS"
|
||||||
"LC_IDENTIFICATION"
|
"LC_IDENTIFICATION"
|
||||||
"LC_MEASUREMENT"
|
"LC_MEASUREMENT"
|
||||||
|
@ -13,18 +22,6 @@
|
||||||
"LC_PAPER"
|
"LC_PAPER"
|
||||||
"LC_TELEPHONE"
|
"LC_TELEPHONE"
|
||||||
"LC_TIME"
|
"LC_TIME"
|
||||||
];
|
]);
|
||||||
in {
|
|
||||||
defaultLocale = locale;
|
|
||||||
|
|
||||||
extraLocaleSettings = builtins.listToAttrs (
|
|
||||||
map (
|
|
||||||
option: {
|
|
||||||
name = option;
|
|
||||||
value = locale;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
extraSettings
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,34 +18,6 @@
|
||||||
directory = instance.acme.paths.path0;
|
directory = instance.acme.paths.path0;
|
||||||
environmentFile = config.sops.secrets."dns/namecheap".path;
|
environmentFile = config.sops.secrets."dns/namecheap".path;
|
||||||
};
|
};
|
||||||
|
|
||||||
domain0SubdomainNames = [
|
|
||||||
"nextcloud"
|
|
||||||
"jellyfin"
|
|
||||||
"minecraft"
|
|
||||||
"ollama"
|
|
||||||
"syncthing"
|
|
||||||
"vaultwarden"
|
|
||||||
];
|
|
||||||
|
|
||||||
domain1SubdomainNames = [
|
|
||||||
"wiki"
|
|
||||||
"nextcloud"
|
|
||||||
"castopod"
|
|
||||||
"forgejo"
|
|
||||||
"matrix"
|
|
||||||
"owncast"
|
|
||||||
"peertube"
|
|
||||||
"writefreely"
|
|
||||||
];
|
|
||||||
|
|
||||||
domainRoot = [
|
|
||||||
domain0
|
|
||||||
domain1
|
|
||||||
];
|
|
||||||
|
|
||||||
domain0Subdomains = map instanceName domain0SubdomainNames;
|
|
||||||
domain1Subdomains = map instanceName domain1SubdomainNames;
|
|
||||||
in {
|
in {
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
|
@ -58,17 +30,38 @@ in {
|
||||||
name = "${prefix}.${domain0}";
|
name = "${prefix}.${domain0}";
|
||||||
value = dnsConfig;
|
value = dnsConfig;
|
||||||
})
|
})
|
||||||
domain0Subdomains)
|
map
|
||||||
|
instanceName [
|
||||||
|
"nextcloud"
|
||||||
|
"jellyfin"
|
||||||
|
"minecraft"
|
||||||
|
"ollama"
|
||||||
|
"syncthing"
|
||||||
|
"vaultwarden"
|
||||||
|
])
|
||||||
++ (map (prefix: {
|
++ (map (prefix: {
|
||||||
name = "${prefix}.${domain1}";
|
name = "${prefix}.${domain1}";
|
||||||
value = dnsConfig;
|
value = dnsConfig;
|
||||||
})
|
})
|
||||||
domain1Subdomains)
|
map
|
||||||
|
instanceName [
|
||||||
|
"wiki"
|
||||||
|
"nextcloud"
|
||||||
|
"castopod"
|
||||||
|
"forgejo"
|
||||||
|
"matrix"
|
||||||
|
"owncast"
|
||||||
|
"peertube"
|
||||||
|
"writefreely"
|
||||||
|
])
|
||||||
++ (map (name: {
|
++ (map (name: {
|
||||||
name = name;
|
name = name;
|
||||||
value = dnsConfig;
|
value = dnsConfig;
|
||||||
})
|
})
|
||||||
domainRoot)
|
[
|
||||||
|
domain0
|
||||||
|
domain1
|
||||||
|
])
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,6 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["smtp" "database"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -72,7 +71,10 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"smtp"
|
||||||
|
"database"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
let
|
{
|
||||||
serviceFolders = [
|
imports =
|
||||||
|
(map
|
||||||
|
(folder: ./${folder})
|
||||||
|
[
|
||||||
"mastodon"
|
"mastodon"
|
||||||
];
|
])
|
||||||
|
++ (map
|
||||||
serviceFiles = [
|
(file: ./${file}.nix)
|
||||||
|
[
|
||||||
"acme"
|
"acme"
|
||||||
"caddy"
|
"caddy"
|
||||||
"jellyfin"
|
"jellyfin"
|
||||||
|
@ -19,9 +23,5 @@ let
|
||||||
# "forgejo"
|
# "forgejo"
|
||||||
# "castopod"
|
# "castopod"
|
||||||
# "nextcloud"
|
# "nextcloud"
|
||||||
];
|
]);
|
||||||
in {
|
|
||||||
imports =
|
|
||||||
(map (folder: ./${folder}) serviceFolders)
|
|
||||||
++ (map (file: ./${file}.nix) serviceFiles);
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,7 +64,6 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["smtp" "database"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -77,7 +76,10 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"smtp"
|
||||||
|
"database"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -146,7 +146,6 @@ in {
|
||||||
systemd.services.caddy.serviceConfig.ReadWriteDirectories = lib.mkForce ["/var/lib/caddy" "/run/mastodon-web"];
|
systemd.services.caddy.serviceConfig.ReadWriteDirectories = lib.mkForce ["/var/lib/caddy" "/run/mastodon-web"];
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["smtp" "database" "redis"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -159,7 +158,11 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"smtp"
|
||||||
|
"database"
|
||||||
|
"redis"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,6 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["pass"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -63,7 +62,9 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"pass"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,6 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["pass"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -88,7 +87,9 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"pass"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -81,7 +81,6 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["smtp" "database" "redis" "root" "secret"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}-pass";
|
path = "${service.sops.path0}/${service.name}-${secret}-pass";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -94,7 +93,13 @@ in {
|
||||||
name = "${service.name}-${secret}";
|
name = "${service.name}-${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"smtp"
|
||||||
|
"database"
|
||||||
|
"redis"
|
||||||
|
"root"
|
||||||
|
"secret"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,6 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["env"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
path = "${service.sops.path0}/${service.name}-${secret}";
|
||||||
owner = service.name;
|
owner = service.name;
|
||||||
|
@ -74,7 +73,9 @@ in {
|
||||||
name = "${service.name}/${secret}";
|
name = "${service.name}/${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"env"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,6 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
sops = let
|
sops = let
|
||||||
sopsSecrets = ["pass" "ssh"];
|
|
||||||
sopsPath = secret: {
|
sopsPath = secret: {
|
||||||
path = "${service.sops.path0}/${secret}";
|
path = "${service.sops.path0}/${secret}";
|
||||||
owner = "root";
|
owner = "root";
|
||||||
|
@ -62,7 +61,10 @@ in {
|
||||||
name = "${service.name}/${secret}";
|
name = "${service.name}/${secret}";
|
||||||
value = sopsPath secret;
|
value = sopsPath secret;
|
||||||
})
|
})
|
||||||
sopsSecrets
|
[
|
||||||
|
"pass"
|
||||||
|
"ssh"
|
||||||
|
]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
{flake, ...}: let
|
{flake, ...}: let
|
||||||
inherit (flake) self;
|
inherit (flake) self;
|
||||||
moduleNames = [
|
|
||||||
|
moduleImports =
|
||||||
|
map
|
||||||
|
(module: self.homeModules.${module})
|
||||||
|
[
|
||||||
"desktop"
|
"desktop"
|
||||||
"entertainment"
|
"entertainment"
|
||||||
"productionArt"
|
"productionArt"
|
||||||
|
@ -9,8 +13,6 @@
|
||||||
"productionWriting"
|
"productionWriting"
|
||||||
"shared"
|
"shared"
|
||||||
];
|
];
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) moduleNames;
|
|
||||||
in {
|
in {
|
||||||
imports = moduleImports;
|
imports = moduleImports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
{flake, ...}: let
|
{flake, ...}: let
|
||||||
inherit (flake) self;
|
inherit (flake) self;
|
||||||
moduleNames = [
|
|
||||||
|
moduleImports =
|
||||||
|
map
|
||||||
|
(module: self.homeModules.${module})
|
||||||
|
[
|
||||||
"entertainment"
|
"entertainment"
|
||||||
"desktop"
|
"desktop"
|
||||||
"productionWriting"
|
"productionWriting"
|
||||||
"shared"
|
"shared"
|
||||||
];
|
];
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) moduleNames;
|
|
||||||
in {
|
in {
|
||||||
imports = moduleImports;
|
imports = moduleImports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
{flake, ...}: let
|
{flake, ...}: let
|
||||||
inherit (flake) self;
|
inherit (flake) self;
|
||||||
moduleNames = [
|
|
||||||
|
moduleImports =
|
||||||
|
map
|
||||||
|
(module: self.homeModules.${module})
|
||||||
|
[
|
||||||
"shared"
|
"shared"
|
||||||
];
|
];
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) moduleNames;
|
|
||||||
in {
|
in {
|
||||||
imports = moduleImports;
|
imports = moduleImports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
{flake, ...}: let
|
{flake, ...}: let
|
||||||
inherit (flake) self;
|
inherit (flake) self;
|
||||||
moduleNames = [
|
|
||||||
|
moduleImports =
|
||||||
|
map
|
||||||
|
(module: self.homeModules.${module})
|
||||||
|
[
|
||||||
"desktop"
|
"desktop"
|
||||||
"entertainment"
|
"entertainment"
|
||||||
"productionWriting"
|
"productionWriting"
|
||||||
"shared"
|
"shared"
|
||||||
];
|
];
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) moduleNames;
|
|
||||||
in {
|
in {
|
||||||
imports = moduleImports;
|
imports = moduleImports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
{flake, ...}: let
|
{flake, ...}: let
|
||||||
inherit (flake) self;
|
inherit (flake) self;
|
||||||
moduleNames = [
|
|
||||||
|
moduleImports =
|
||||||
|
map
|
||||||
|
(module: self.homeModules.${module})
|
||||||
|
[
|
||||||
"desktop"
|
"desktop"
|
||||||
"entertainment"
|
"entertainment"
|
||||||
"productionWriting"
|
"productionWriting"
|
||||||
"shared"
|
"shared"
|
||||||
];
|
];
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) moduleNames;
|
|
||||||
in {
|
in {
|
||||||
imports = moduleImports;
|
imports = moduleImports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
{lib, ...}: let
|
{lib, ...}: {
|
||||||
desktopFiles = [
|
imports =
|
||||||
|
map
|
||||||
|
(file: ./${file}.nix)
|
||||||
|
[
|
||||||
"boot"
|
"boot"
|
||||||
"filesystem"
|
"filesystem"
|
||||||
"graphics"
|
"graphics"
|
||||||
|
@ -7,8 +10,6 @@
|
||||||
"networking"
|
"networking"
|
||||||
"sops"
|
"sops"
|
||||||
];
|
];
|
||||||
in {
|
|
||||||
imports = map (file: ./${file}.nix) desktopFiles;
|
|
||||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||||
system.stateVersion = lib.mkForce "24.05";
|
system.stateVersion = lib.mkForce "24.05";
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
{lib, ...}: let
|
{lib, ...}: {
|
||||||
laptopFiles = [
|
imports =
|
||||||
|
map
|
||||||
|
(file: ./${file}.nix)
|
||||||
|
[
|
||||||
"boot"
|
"boot"
|
||||||
"filesystem"
|
"filesystem"
|
||||||
"graphics"
|
"graphics"
|
||||||
|
@ -7,8 +10,6 @@
|
||||||
"networking"
|
"networking"
|
||||||
"sops"
|
"sops"
|
||||||
];
|
];
|
||||||
in {
|
|
||||||
imports = map (file: ./${file}.nix) laptopFiles;
|
|
||||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||||
system.stateVersion = lib.mkForce "24.05";
|
system.stateVersion = lib.mkForce "24.05";
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
{lib, ...}: let
|
{lib, ...}: {
|
||||||
serverFiles = [
|
imports =
|
||||||
|
map
|
||||||
|
(file: ./${file}.nix)
|
||||||
|
[
|
||||||
"boot"
|
"boot"
|
||||||
"filesystem"
|
"filesystem"
|
||||||
"graphics"
|
"graphics"
|
||||||
|
@ -7,8 +10,6 @@
|
||||||
"networking"
|
"networking"
|
||||||
"sops"
|
"sops"
|
||||||
];
|
];
|
||||||
in {
|
|
||||||
imports = map (file: ./${file}.nix) serverFiles;
|
|
||||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||||
system.stateVersion = lib.mkForce "24.05";
|
system.stateVersion = lib.mkForce "24.05";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue