mirror of
https://github.com/nix-community/home-manager.git
synced 2025-03-10 18:57:22 +00:00
Instead of having to manually stub packages that should not be downloaded we instead automatically stub all packages (except a small list of whitelisted ones). Tests can re-introduce the real package by using the `realPkgs` module argument.
21 lines
485 B
Nix
21 lines
485 B
Nix
modulePath:
|
|
{ config, lib, realPkgs, ... }:
|
|
|
|
let
|
|
|
|
cfg = lib.getAttrFromPath modulePath config;
|
|
|
|
in lib.mkIf config.test.enableBig
|
|
(lib.setAttrByPath modulePath { enable = true; } // {
|
|
home.stateVersion = "19.09";
|
|
|
|
_module.args.pkgs = lib.mkForce realPkgs;
|
|
|
|
nmt.script = ''
|
|
package=${cfg.package}
|
|
finalPackage=${cfg.finalPackage}
|
|
if [[ $package != $finalPackage ]]; then
|
|
fail "Expected finalPackage ($finalPackage) to equal package ($package)"
|
|
fi
|
|
'';
|
|
})
|