mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 12:29:19 -08:00
feat: darwin configuration, LnL7/nix-darwin#310 patch
This commit is contained in:
parent
6e1080ad2c
commit
2e98ec90e0
20 changed files with 183 additions and 82 deletions
106
outputs.nix
106
outputs.nix
|
|
@ -4,9 +4,18 @@
|
|||
pkgs = import ./overlays { inherit inputs system; };
|
||||
inherit (pkgs) lib;
|
||||
|
||||
patchedInputs = inputs // { darwin = pkgs.applyPatches {
|
||||
name = "darwin";
|
||||
src = inputs.darwin;
|
||||
patches = [ (pkgs.fetchpatch {
|
||||
url = "https://patch-diff.githubusercontent.com/raw/LnL7/nix-darwin/pull/310.patch";
|
||||
sha256 = "sha256-drnLOhF8JGXx8YY7w1PD2arUZvbqafWPTatQNTHt+QI=";
|
||||
}) ];
|
||||
}; };
|
||||
|
||||
mkTree = import ./tree.nix { inherit lib; };
|
||||
localTree = mkTree {
|
||||
inherit inputs;
|
||||
inputs = patchedInputs;
|
||||
folder = ./.;
|
||||
config = {
|
||||
"/" = {
|
||||
|
|
@ -28,28 +37,28 @@
|
|||
(inputs.tf-nix + "/modules/nixos/secrets.nix")
|
||||
(inputs.tf-nix + "/modules/nixos/secrets-users.nix")
|
||||
] ++ (with (import (inputs.arcexprs + "/modules")).nixos; [
|
||||
nix
|
||||
systemd
|
||||
dht22-exporter
|
||||
glauth
|
||||
modprobe
|
||||
kernel
|
||||
crypttab
|
||||
mutable-state
|
||||
common-root
|
||||
pulseaudio
|
||||
wireplumber
|
||||
alsa
|
||||
yggdrasil
|
||||
bindings
|
||||
matrix-appservices
|
||||
matrix-synapse-appservices
|
||||
display
|
||||
filebin
|
||||
mosh
|
||||
base16 base16-shared
|
||||
doc-warnings
|
||||
]);
|
||||
nix
|
||||
systemd
|
||||
dht22-exporter
|
||||
glauth
|
||||
modprobe
|
||||
kernel
|
||||
crypttab
|
||||
mutable-state
|
||||
common-root
|
||||
pulseaudio
|
||||
wireplumber
|
||||
alsa
|
||||
yggdrasil
|
||||
bindings
|
||||
matrix-appservices
|
||||
matrix-synapse-appservices
|
||||
display
|
||||
filebin
|
||||
mosh
|
||||
base16 base16-shared
|
||||
doc-warnings
|
||||
]);
|
||||
};
|
||||
};
|
||||
"modules/home" = {
|
||||
|
|
@ -62,6 +71,7 @@
|
|||
};
|
||||
};
|
||||
"modules/darwin".functor.enable = true;
|
||||
"modules/system".functor.enable = true;
|
||||
"modules/meta".functor.enable = true;
|
||||
"nixos/systems".functor.enable = false;
|
||||
"darwin/systems".functor.enable = false;
|
||||
|
|
@ -71,6 +81,7 @@
|
|||
"darwin/*".functor = {
|
||||
enable = true;
|
||||
};
|
||||
"system".functor.enable = true;
|
||||
"hardware".evaluateDefault = true;
|
||||
"nixos/cross".evaluateDefault = true;
|
||||
"hardware/*".evaluateDefault = true;
|
||||
|
|
@ -80,7 +91,7 @@
|
|||
};
|
||||
};
|
||||
trustedTree = mkTree {
|
||||
inherit inputs;
|
||||
inputs = patchedInputs;
|
||||
folder = inputs.trusted;
|
||||
config = {
|
||||
"secrets".evaluateDefault = true;
|
||||
|
|
@ -104,34 +115,35 @@
|
|||
|
||||
eval = let
|
||||
nixosNodes = (map
|
||||
(node: {
|
||||
network.nodes.nixos.${node} = {
|
||||
imports = config.lib.kw.nixosImport node;
|
||||
networking = {
|
||||
hostName = node;
|
||||
};
|
||||
(node: {
|
||||
network.nodes.nixos.${node} = {
|
||||
imports = config.lib.kw.nixosImport node;
|
||||
networking = {
|
||||
hostName = node;
|
||||
};
|
||||
})
|
||||
(lib.attrNames nixfiles.nixos.systems));
|
||||
};
|
||||
})
|
||||
(lib.attrNames nixfiles.nixos.systems));
|
||||
darwinNodes = (map
|
||||
(node: {
|
||||
network.nodes.darwin.${node} = {
|
||||
imports = config.lib.kw.darwinImport node;
|
||||
networking = {
|
||||
hostName = node;
|
||||
};
|
||||
(node: {
|
||||
network.nodes.darwin.${node} = {
|
||||
imports = config.lib.kw.darwinImport node;
|
||||
networking = {
|
||||
hostName = node;
|
||||
};
|
||||
})
|
||||
(lib.attrNames nixfiles.darwin.systems));
|
||||
};
|
||||
})
|
||||
(lib.attrNames nixfiles.darwin.systems));
|
||||
in lib.evalModules {
|
||||
modules = lib.singleton metaBase
|
||||
++ lib.singleton nixfiles.modules.meta
|
||||
++ lib.attrValues nixfiles.targets
|
||||
++ nixosNodes
|
||||
++ darwinNodes;
|
||||
++ lib.singleton nixfiles.modules.meta
|
||||
++ lib.attrValues nixfiles.targets
|
||||
++ nixosNodes
|
||||
++ darwinNodes;
|
||||
|
||||
specialArgs = {
|
||||
inherit inputs root tree;
|
||||
inherit root tree;
|
||||
inputs = patchedInputs;
|
||||
meta = self;
|
||||
} // nixfiles;
|
||||
};
|
||||
|
|
@ -139,6 +151,6 @@
|
|||
inherit (eval) config;
|
||||
|
||||
|
||||
self = config // { inherit pkgs lib inputs tree; } // nixfiles;
|
||||
self = config // { inherit pkgs lib tree; inputs = patchedInputs; } // nixfiles;
|
||||
in
|
||||
self
|
||||
self
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue