summaryrefslogtreecommitdiff
path: root/lib/configs.nix
diff options
context:
space:
mode:
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;
+ };
+}