summaryrefslogtreecommitdiff
path: root/lib/configs.nix
diff options
context:
space:
mode:
authorseth <[email protected]>2023-05-22 02:35:15 -0400
committerseth <[email protected]>2023-05-23 11:05:28 -0400
commit630934a2631d9429b4e46c1b6ec0f6640f332384 (patch)
treed8bd14cafb0ac382625bc5dca79b84d497e9bab7 /lib/configs.nix
parent2cb6cfab9553184c1e6a10303cb832fe96080d00 (diff)
!hercules-ci -> hydra
Diffstat (limited to 'lib/configs.nix')
-rw-r--r--lib/configs.nix37
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/configs.nix b/lib/configs.nix
new file mode 100644
index 0000000..8da37bc
--- /dev/null
+++ b/lib/configs.nix
@@ -0,0 +1,37 @@
+inputs: {
+ mkNixOS = {
+ name,
+ profile,
+ modules ? profile.modules,
+ system ? profile.system,
+ specialArgs ? profile.specialArgs,
+ }:
+ profile.builder {
+ inherit specialArgs system;
+ modules =
+ [../hosts/${name}]
+ ++ (
+ if modules == profile.modules
+ then modules
+ else modules ++ profile.modules
+ );
+ };
+
+ mkHMUser = {
+ name,
+ modules ? [],
+ pkgs ? import inputs.nixpkgs {system = "x86_64-linux";},
+ extraSpecialArgs ? inputs,
+ }:
+ inputs.home-manager.lib.homeManagerConfiguration {
+ inherit pkgs extraSpecialArgs;
+ modules =
+ [
+ {
+ programs.home-manager.enable = true;
+ }
+ ]
+ ++ [../users/${name}/home.nix]
+ ++ modules;
+ };
+}