standalone: pass extraSpecialArgs to lib.evalModules directly (#914)

This commit is contained in:
Mirko Lenz 2024-01-07 20:49:17 +01:00 committed by GitHub
parent f85f26878f
commit 46ca452d0b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 8 deletions

View file

@ -2,14 +2,26 @@
makeNixvimWithModule,
pkgs,
}: let
defaultModule = {regularArg, ...}: {
extraConfigLua = ''
-- regularArg=${regularArg}
'';
};
generated = makeNixvimWithModule {
module = {importedArgument, ...}: {
extraConfigLua = ''
-- importedArgument=${importedArgument}
'';
module = {
regularArg,
extraModule,
...
}: {
_module.args = {regularArg = "regularValue";};
imports = [defaultModule extraModule];
};
extraSpecialArgs = {
importedArgument = "foobar";
extraModule = {
extraConfigLua = ''
-- specialArg=specialValue
'';
};
};
};
in
@ -17,8 +29,12 @@ in
printConfig = "${generated}/bin/nixvim-print-init";
} ''
config=$($printConfig)
if ! "$printConfig" | grep -- '-- importedArgument=foobar'; then
echo "Missing importedArgument in config"
if ! "$printConfig" | grep -- '-- regularArg=regularValue'; then
echo "Missing regularArg in config"
exit 1
fi
if ! "$printConfig" | grep -- '-- specialArg=specialValue'; then
echo "Missing specialArg in config"
exit 1
fi

View file

@ -16,7 +16,8 @@ default_pkgs: {
};
eval = lib.evalModules {
modules = [module wrap {_module.args = extraSpecialArgs;}] ++ shared.topLevelModules;
modules = [module wrap] ++ shared.topLevelModules;
specialArgs = extraSpecialArgs;
};
handleAssertions = config: let