summaryrefslogtreecommitdiffstats
path: root/lib/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'lib/default.nix')
-rw-r--r--lib/default.nix82
1 files changed, 19 insertions, 63 deletions
diff --git a/lib/default.nix b/lib/default.nix
index a5f3e17..430d6ec 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -1,75 +1,31 @@
-{ sources ? import ../npins
-, pkgs ? import sources.nixpkgs {}
+{ pkgs
+, sources
+, ...
}:
let
inherit (pkgs) lib;
-
- eval = configuration:
+in
+{
+ eval = config:
let
self =
lib.evalModules {
modules = [
- configuration
- {
- options = {
- machines = lib.mkOption {
- type = lib.types.attrsOf lib.types.raw;
- default = {};
- };
- outputs = lib.mkOption {
- type = lib.types.attrsOf lib.types.raw;
- default = {};
- };
- };
- config = {
- outputs.machines = lib.mapAttrs (name: configuration:
- nixos configuration
- ) self.config.machines;
- };
- }
+ config
+ ./machines.nix
+ ./nixosModules.nix
];
- specialArgs.self = self;
+ specialArgs = {
+ inherit
+ self
+ sources
+ pkgs
+ ;
+ inherit (pkgs)
+ lib
+ ;
+ };
};
-
- # nixos = config: lib.evalModules {
- # modules = [
- # config
- # {
- # # XXX Otherwise building manual fails
- # documentation.enable = false;
-
- # boot.loader.grub.device = "nodev";
- # fileSystems."/".device = "tmpfs";
- # nixpkgs.localSystem = "x86_64-linux";
- # }
- # ];
- # specialArgs.self = self;
- # };
-
- nixos = config: import (sources.nixpkgs + "/nixos/lib/eval-config.nix") {
- modules = [
- config
- {
- # XXX Otherwise building manual fails
- documentation.enable = false;
-
- boot.loader.grub.device = "nodev";
- fileSystems."/".device = "tmpfs";
- nixpkgs.localSystem = {
- system = "x86_64-linux";
- };
- }
- ];
- specialArgs.self = self;
-
- # The system is inherited from the current pkgs above.
- # Set it to null, to remove the "legacy" entrypoint's non-hermetic default.
- system = null;
- };
in
self;
-
-in
-{
- inherit eval;
}