-
|
Is this correct: The expression in {
a = {
wrapperModules = {
alacritty = module;
audacity = module;
};
checks = {
alacritty = { ... };
audacity = { ... };
};
};
b = {
wrapperModules = {
bmenu = module;
};
checks = {
bmenu = module;
};
};
...
}and then finally merges them into: {
wrapperModules = {
alacritty = module;
audacity = module;
bmenu = module;
};
checks = {
alacritty = { ... };
audacity = { ... };
bmenu = { ... };
};
...
}The "library modules" (makeWrapper, symlinkScript) are not included in |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 22 replies
-
|
They are not thay are just modules. They don't set package option, so they are not wrapping anything, thus not wrapperModules. They are in And then from the top level of the flake, the result of .apply is exposed for easy access to .wrap under outputs.wrapperModules and wlib is exported as outputs.lib Within the modules, you should be grabbing wlib via your module arguments. Outside of calling evalModule on the thing originally, you likely will not need it outside of the module after that. |
Beta Was this translation helpful? Give feedback.
Thank you for all the explanations.
This discussion cleared things up for me.
There are two classes of modules. "Helper modules" which now live in
./modulesaimed to provide assistance when creating wrapper by leveraging the module system and "wrapper modules" which now live in./wrapperModulescontaining a collection of pre-defined modules to configure wrappers for specific applications.