feat: clean up the repo

This commit is contained in:
Kat Inskip 2023-04-29 12:00:58 -07:00
parent bc9c310c77
commit f6ec9f37eb
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
249 changed files with 804 additions and 13048 deletions

103
meta.nix
View file

@ -1,61 +1,62 @@
{ inputs, system ? builtins.currentSystem or "x86_64-linux" , ... }: let
patchedInputs = import ./patchedInputs.nix { inherit inputs system; };
pkgs = import ./overlays { inherit system; inputs = patchedInputs; };
{
inputs,
system ? builtins.currentSystem or "x86_64-linux",
...
}: let
patchedInputs = import ./patchedInputs.nix {inherit inputs system;};
pkgs = import ./overlays {
inherit system;
inputs = patchedInputs;
};
inherit (pkgs) lib;
tree = import ./tree.nix { inherit lib; inputs = patchedInputs; };
tree = import ./tree.nix {
inherit lib;
inputs = patchedInputs;
};
root = ./.; # Required for modules/meta/imports.nix to find hosts
nixfiles = tree.impure;
eval = let
esphomeNodes = (map
(node: {
network.nodes.esphome.${node} = {
imports = config.lib.nixfiles.esphomeImport node;
esphome = {
name = node;
};
};
})
(lib.attrNames nixfiles.esphome.boards));
nixosNodes = (map
(node: {
network.nodes.nixos.${node} = {
imports = config.lib.nixfiles.nixosImport node;
networking = {
hostName = node;
};
};
})
(lib.attrNames nixfiles.nixos.systems));
darwinNodes = (map
(node: {
network.nodes.darwin.${node} = {
imports = config.lib.nixfiles.darwinImport node;
networking = {
hostName = node;
};
};
})
(lib.attrNames nixfiles.darwin.systems));
in lib.evalModules {
modules = [
nixfiles.modules.meta
nixosNodes = [
{
_module.args.pkgs = lib.mkDefault pkgs;
network.nodes.tewi = {
imports = [
./tewi/nixos.nix
nixfiles.nixos.base
];
networking = {
hostName = "tewi";
};
};
}
]
++ lib.attrValues nixfiles.targets
++ nixosNodes
++ darwinNodes
++ esphomeNodes;
];
in
lib.evalModules {
modules =
[
nixfiles.modules.meta
{
_module.args.pkgs = lib.mkDefault pkgs;
}
]
++ nixosNodes;
specialArgs = {
inherit root tree;
inputs = patchedInputs;
meta = self;
} // nixfiles;
};
specialArgs =
{
inherit root tree;
inputs = patchedInputs;
meta = self;
}
// nixfiles;
};
inherit (eval) config;
self = config // { inherit pkgs lib tree; inputs = patchedInputs; } // nixfiles;
in self
self =
config
// {
inherit pkgs lib tree;
inputs = patchedInputs;
}
// nixfiles;
in
self