forked from mirrors_public/oddlama_nix-config
refactor: remove meta.nix in favor of direct declaration in flake.nix
This commit is contained in:
parent
08290e5052
commit
30cfdaf860
7 changed files with 26 additions and 43 deletions
17
flake.nix
17
flake.nix
|
@ -86,7 +86,22 @@
|
||||||
content = import ./nix/secrets.nix inputs;
|
content = import ./nix/secrets.nix inputs;
|
||||||
};
|
};
|
||||||
|
|
||||||
hosts = import ./nix/hosts.nix inputs;
|
hosts = {
|
||||||
|
nom = {
|
||||||
|
type = "nixos";
|
||||||
|
system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
ward = {
|
||||||
|
type = "nixos";
|
||||||
|
system = "x86_64-linux";
|
||||||
|
microVmHost = true;
|
||||||
|
};
|
||||||
|
zackbiene = {
|
||||||
|
type = "nixos";
|
||||||
|
system = "aarch64-linux";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
colmena = import ./nix/colmena.nix inputs;
|
colmena = import ./nix/colmena.nix inputs;
|
||||||
colmenaNodes = ((colmena.lib.makeHive self.colmena).introspect (x: x)).nodes;
|
colmenaNodes = ((colmena.lib.makeHive self.colmena).introspect (x: x)).nodes;
|
||||||
microvmNodes = import ./nix/microvms.nix inputs;
|
microvmNodes = import ./nix/microvms.nix inputs;
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
type = "nixos";
|
|
||||||
system = "x86_64-linux";
|
|
||||||
physicalConnections = {
|
|
||||||
"10-lan1" = "LAN 1";
|
|
||||||
"10-wlan1" = "WiFi";
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -39,6 +39,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#environment.persistence."/persist".directories = [
|
||||||
|
# { directory = "/var/lib/acme"; user = "acme"; group = "acme"; }
|
||||||
|
#];
|
||||||
|
|
||||||
# After importing the rpool, rollback the root system to be empty.
|
# After importing the rpool, rollback the root system to be empty.
|
||||||
boot.initrd.systemd.services = {
|
boot.initrd.systemd.services = {
|
||||||
impermanence-root = {
|
impermanence-root = {
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
type = "nixos";
|
|
||||||
system = "x86_64-linux";
|
|
||||||
microVmHost = true;
|
|
||||||
physicalConnections = {
|
|
||||||
"10-lan" = "LAN";
|
|
||||||
"10-wan" = "WAN";
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
type = "nixos";
|
|
||||||
system = "aarch64-linux";
|
|
||||||
physicalConnections = {
|
|
||||||
"10-lan1" = "LAN 1";
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,15 +1,15 @@
|
||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
|
agenix,
|
||||||
|
agenix-rekey,
|
||||||
colmena,
|
colmena,
|
||||||
disko,
|
disko,
|
||||||
home-manager,
|
home-manager,
|
||||||
#impermanence,
|
#impermanence,
|
||||||
|
microvm,
|
||||||
nixos-hardware,
|
nixos-hardware,
|
||||||
nixos-nftables-firewall,
|
nixos-nftables-firewall,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
microvm,
|
|
||||||
agenix,
|
|
||||||
agenix-rekey,
|
|
||||||
...
|
...
|
||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
inherit (nixpkgs.lib) optionals;
|
inherit (nixpkgs.lib) optionals;
|
||||||
|
@ -22,23 +22,21 @@ in
|
||||||
inherit (self) extraLib nodes;
|
inherit (self) extraLib nodes;
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
inherit nodeName;
|
inherit nodeName;
|
||||||
inherit nodeMeta;
|
|
||||||
secrets = self.secrets.content;
|
secrets = self.secrets.content;
|
||||||
nodeSecrets = self.secrets.content.nodes.${nodeName};
|
nodeSecrets = self.secrets.content.nodes.${nodeName};
|
||||||
nixos-hardware = nixos-hardware.nixosModules;
|
nixos-hardware = nixos-hardware.nixosModules;
|
||||||
#impermanence = impermanence.nixosModules;
|
|
||||||
};
|
};
|
||||||
imports =
|
imports =
|
||||||
[
|
[
|
||||||
(../hosts + "/${nodeName}")
|
(../hosts + "/${nodeName}")
|
||||||
home-manager.nixosModules.default
|
|
||||||
#impermanence.nixosModules.default
|
|
||||||
agenix.nixosModules.default
|
agenix.nixosModules.default
|
||||||
agenix-rekey.nixosModules.default
|
agenix-rekey.nixosModules.default
|
||||||
disko.nixosModules.disko
|
disko.nixosModules.disko
|
||||||
|
home-manager.nixosModules.default
|
||||||
|
#impermanence.nixosModules.default
|
||||||
nixos-nftables-firewall.nixosModules.default
|
nixos-nftables-firewall.nixosModules.default
|
||||||
]
|
]
|
||||||
++ optionals nodeMeta.microVmHost [
|
++ optionals (nodeMeta.microVmHost or false) [
|
||||||
microvm.nixosModules.host
|
microvm.nixosModules.host
|
||||||
]
|
]
|
||||||
++ optionals (nodeMeta.type == "microvm") [
|
++ optionals (nodeMeta.type == "microvm") [
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
{nixpkgs, ...}: let
|
|
||||||
hostDefaults = {
|
|
||||||
physicalConnections = {};
|
|
||||||
microVmHost = false;
|
|
||||||
};
|
|
||||||
in
|
|
||||||
nixpkgs.lib.concatMapAttrs (nodeName: fileType:
|
|
||||||
if fileType == "directory" && nodeName != "common"
|
|
||||||
then {${nodeName} = hostDefaults // import (../hosts + "/${nodeName}/meta.nix");}
|
|
||||||
else {}) (builtins.readDir ../hosts)
|
|
Loading…
Add table
Add a link
Reference in a new issue