modules: inject nixpkgs source as a special arg

This commit is contained in:
Yueh-Shun Li 2024-02-16 01:03:01 +08:00
parent 23b8cce084
commit 5828992466
3 changed files with 8 additions and 6 deletions

View file

@ -1,6 +1,6 @@
# Copyright (c) 2019-2023, see AUTHORS. Licensed under MIT License, see LICENSE.
{ pkgs, home-manager, nmdSrc }:
{ pkgs, nixpkgs, home-manager, nmdSrc }:
let
nmd = import nmdSrc { inherit pkgs; };
@ -14,7 +14,7 @@ let
};
modules = import ../modules/module-list.nix {
inherit pkgs;
inherit pkgs nixpkgs;
home-manager-path = home-manager.outPath;
isFlake = true;
};

View file

@ -25,7 +25,7 @@
};
};
outputs = { self, nixpkgs, nixpkgs-for-bootstrap, home-manager, nix-formatter-pack, nmd }:
outputs = { self, nixpkgs, nixpkgs-for-bootstrap, home-manager, nix-formatter-pack, nmd }@inputs:
let
forEachSystem = nixpkgs.lib.genAttrs [ "aarch64-linux" "x86_64-linux" ];
@ -80,6 +80,7 @@
{ modules ? [ ]
, extraSpecialArgs ? { }
, pkgs ? pkgs'
, nixpkgs ? inputs.nixpkgs
, home-manager-path ? home-manager.outPath
# deprecated:
, config ? null
@ -103,7 +104,7 @@
See the 22.11 release notes for more.
''
(import ./modules {
inherit extraSpecialArgs home-manager-path pkgs;
inherit extraSpecialArgs home-manager-path nixpkgs pkgs;
config.imports = modules;
isFlake = true;
});
@ -118,7 +119,7 @@
};
docs = import ./docs {
inherit home-manager;
inherit nixpkgs home-manager;
pkgs = nixpkgs.legacyPackages.${system};
nmdSrc = nmd;
};

View file

@ -3,6 +3,7 @@
{ config ? null
, extraSpecialArgs ? { }
, pkgs ? import <nixpkgs> { }
, nixpkgs ? <nixpkgs>
, home-manager-path ? <home-manager>
, isFlake ? false
}:
@ -21,7 +22,7 @@ let
rawModule = evalModules {
modules = [ configModule ] ++ nodModules;
specialArgs = extraSpecialArgs;
specialArgs = { inherit nixpkgs; } // extraSpecialArgs;
};
failedAssertions = map (x: x.message) (filter (x: !x.assertion) rawModule.config.assertions);