Overcomplicated agenix setup done!

This commit is contained in:
Henry Hiles 2025-03-20 21:52:16 -04:00
parent a7a0869dbe
commit 1c125ab3b2
4 changed files with 17 additions and 13 deletions

View file

@ -26,9 +26,10 @@
}; };
outputs = inputs: let outputs = inputs: let
lib = inputs.nixpkgs.lib;
dirUtils = { dirUtils = {
opt = inputs.nixpkgs.lib.optionals; opt = inputs.nixpkgs.lib.optionals;
dirFiles = dir: map (file: "${dir}/${file}") (builtins.attrNames (builtins.readDir dir)); dirFiles = type: dir: lib.filter (lib.hasSuffix type) (lib.filesystem.listFilesRecursive dir);
}; };
system = hostname: isDesktop: system = hostname: isDesktop:
inputs.nixpkgs.lib.nixosSystem { inputs.nixpkgs.lib.nixosSystem {
@ -43,10 +44,10 @@
inputs.agenix.nixosModules.default inputs.agenix.nixosModules.default
inputs.nix-gaming.nixosModules.pipewireLowLatency inputs.nix-gaming.nixosModules.pipewireLowLatency
] ]
++ dirFiles "${inputs.self}/${hostname}" ++ dirFiles ".nix" "${inputs.self}/${hostname}"
++ dirFiles ./modules/common ++ dirFiles ".nix" ./modules/common
++ opt isDesktop ( ++ opt isDesktop (
(dirFiles ./modules/common-desktop) (dirFiles ".nix" ./modules/common-desktop)
++ [ ++ [
inputs.stylix.nixosModules.stylix inputs.stylix.nixosModules.stylix
./stylix.nix ./stylix.nix

View file

@ -13,6 +13,6 @@
}; };
sharedModules = sharedModules =
[{home.stateVersion = "23.11";}] [{home.stateVersion = "23.11";}]
++ dirUtils.dirFiles ./home-manager; ++ dirUtils.dirFiles ".nix" ./home-manager;
}; };
} }

View file

@ -3,13 +3,16 @@
inputs, inputs,
lib, lib,
... ...
}: let }: {
secretsPath = ../../secrets;
in {
environment.systemPackages = [inputs.agenix.packages.x86_64-linux.default]; # TODO: USE WRAPPER environment.systemPackages = [inputs.agenix.packages.x86_64-linux.default]; # TODO: USE WRAPPER
age.secrets = lib.listToAttrs (map (name: _: { age = {
name = name; identityPaths = [
value.file = "${secretsPath}/${name}"; "/home/quadradical/.ssh/id_ed25519"
}) (lib.filter (name: lib.hasSuffix ".age" name) (dirUtils.dirFiles secretsPath))); ];
secrets = lib.listToAttrs (map (path: {
name = lib.last (builtins.split "/" (toString path));
value.file = path;
}) (dirUtils.dirFiles ".age" ../../secrets));
};
} }

View file

@ -8,7 +8,7 @@
environment.systemPackages = with dirUtils; [ environment.systemPackages = with dirUtils; [
(inputs.wrapper-manager.lib.build { (inputs.wrapper-manager.lib.build {
inherit pkgs; inherit pkgs;
modules = dirFiles ./common ++ opt isDesktop (dirFiles ./common-desktop); modules = dirFiles ".nix" ./common ++ opt isDesktop (dirFiles ".nix" ./common-desktop);
}) })
]; ];
} }