about summary refs log tree commit diff
path: root/lib/system.nix
diff options
context:
space:
mode:
Diffstat (limited to 'lib/system.nix')
-rw-r--r--lib/system.nix22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/system.nix b/lib/system.nix
new file mode 100644
index 0000000..8fc4dce
--- /dev/null
+++ b/lib/system.nix
@@ -0,0 +1,22 @@
+{ self, inputs, lib, pkgs, ... }:
+
+with lib;
+with lib.my;
+{
+  mkSystem = path: attrs @ { ... }: {
+    imports = [
+      {
+        networking.hostName = mkDefault
+          (removeSuffix ".nix" (baseNameOf path));
+        system.configurationRevision = self.rev or "dirty";
+      }
+      ../. # /default.nix
+      (import path)
+    ];
+  };
+
+  mapSystems = dir: attrs @ { system ? system, ... }:
+    mapModules dir
+      (hostPath: mkSystem hostPath attrs);
+}
+