about summary refs log tree commit diff
path: root/nix/mkSystem.nix
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2022-06-09 10:55:31 -0700
committerFranck Cuny <franck@fcuny.net>2022-06-09 11:00:37 -0700
commit9511e0069947cf823df0676eb2e72d8777d5a467 (patch)
tree3f3312df36f089774240171166632f78aeb3d817 /nix/mkSystem.nix
parentref(nix): rename lib/ to nix/ (diff)
downloadworld-9511e0069947cf823df0676eb2e72d8777d5a467.tar.gz
ref(nix): move the mkSystem function to its own file
Make the default system be x86-linux.

Change-Id: I13e00e4d4cb8b7c49cc549509e37a6d0f022a051
Reviewed-on: https://cl.fcuny.net/c/world/+/299
Reviewed-by: Franck Cuny <franck@fcuny.net>
Diffstat (limited to '')
-rw-r--r--nix/mkSystem.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/nix/mkSystem.nix b/nix/mkSystem.nix
new file mode 100644
index 0000000..28e42b1
--- /dev/null
+++ b/nix/mkSystem.nix
@@ -0,0 +1,27 @@
+inputs@{ self, ... }:
+{ system ? "x86_64-linux", hostname, }:
+inputs.nixpkgs.lib.nixosSystem {
+  inherit system;
+  specialArgs = { inherit inputs system hostname; };
+  modules = [
+    "${self}/modules"
+    "${self}/hosts/${hostname}"
+    ./private-wireguard.nix
+    {
+      networking.hostName = hostname;
+      nixpkgs = {
+        config.allowUnfree = true;
+        overlays = [
+          inputs.emacs-overlay.overlay
+          inputs.nur.overlay
+          (final: prev: {
+            tools = { gerrit-hook = import ../tools/gerrit-hook final; };
+          })
+        ];
+      };
+      # Add each input as a registry
+      nix.registry = inputs.nixpkgs.lib.mapAttrs'
+        (n: v: inputs.nixpkgs.lib.nameValuePair (n) ({ flake = v; })) inputs;
+    }
+  ];
+}