1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-26 21:19:45 +01:00

flake: list deprecated args in throw

The use of `throwIf` was retained on the off chance that someone
intentionally overrides it.
This commit is contained in:
aameen-tulip 2022-09-27 00:07:03 -05:00 committed by Robert Helgesson
parent 1f5ef2bb41
commit 6dc8a43f39
No known key found for this signature in database
GPG key ID: 36BDAA14C2797E89

View file

@ -45,8 +45,7 @@
, configuration ? null, extraModules ? null, stateVersion ? null
, username ? null, homeDirectory ? null, system ? null }@args:
let
throwForRemovedArg = v:
lib.throwIf (v != null) ''
msgForRemovedArg = ''
The 'homeManagerConfiguration' arguments
- 'configuration',
@ -60,12 +59,23 @@
'modules'. See the 22.11 release notes for more.
'';
throwForRemovedArgs = throwForRemovedArg configuration # \
throwForRemovedArg username # \
throwForRemovedArg homeDirectory # \
throwForRemovedArg stateVersion # \
throwForRemovedArg extraModules # \
throwForRemovedArg system;
throwForRemovedArgs = v:
let
used = builtins.filter (n: (args.${n} or null) != null) [
"configuration"
"username"
"homeDirectory"
"stateVersion"
"extraModules"
"system"
];
msg = msgForRemovedArg + ''
Deprecated args passed: ''
+ builtins.concatStringsSep " " used;
in lib.throwIf (used != [ ]) msg v;
in throwForRemovedArgs (import ./modules {
inherit pkgs lib check extraSpecialArgs;
configuration = { ... }: {