about summary refs log tree commit diff stats
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--flake.nix17
1 files changed, 13 insertions, 4 deletions
diff --git a/flake.nix b/flake.nix
index b6df3c8..cf3fd77 100644
--- a/flake.nix
+++ b/flake.nix
@@ -38,14 +38,19 @@
     flake-utils,
     treefmt-nix,
     ...
-  }:
-    flake-utils.lib.eachDefaultSystem (system: let
-      pkgs = nixpkgs.legacyPackages."x86_64-linux";
+  }: let
+    pkgs = nixpkgs.legacyPackages."x86_64-linux";
 
+    back = pkgs.callPackage ./nix/package.nix {};
+    module = import ./nix/module.nix {extraPackages = {inherit back;};};
+  in
+    (flake-utils.lib.eachDefaultSystem (system: let
       treefmtEval = import ./treefmt.nix {
         inherit treefmt-nix pkgs;
       };
 
+      nixos-lib = import (nixpkgs + "/nixos/lib") {};
+
       rustfmt = pkgs.writeShellScriptBin "rustfmt" ''
         # Avoid the duplicated edition flag, that rust-analyzer passes.
         if [ "$1" = "--edition" ] && [ "$2" == "2024" ]; then
@@ -57,6 +62,7 @@
     in {
       checks = {
         formatting = treefmtEval.config.build.check self;
+        nixos = pkgs.callPackage ./tests/base.nix {inherit module nixos-lib;};
       };
 
       formatter = treefmtEval.config.build.wrapper;
@@ -75,7 +81,10 @@
           pkgs.reuse
         ];
       };
-    });
+    }))
+    // {
+      nixosModules.default = module;
+    };
 }
 # vim: ts=2