bonfire/nixosModules/default.nix
L-Nafaryus a4d8f5232e
Some checks failed
nix / check (push) Failing after 1m15s
flake: huge rework
flake: fix name conventions
flake: configurations -> lib.preconfiguredModules
flake.packages: rework platform dependency with convient module and
evaluator `lib.collectPackages`
packages.bonfire-docs: convient evaluators `nixosModulesDoc` and
`packagesDoc`
new: packages.postgresql: container image
new: packages.redis: container image
remove: packages.lego: needed dns provider was added to lego and nixpkgs
packages.netgen: broken
2024-07-18 15:49:05 +05:00

56 lines
1.0 KiB
Nix

{
lib,
bonLib,
self,
check ? true,
...
}: let
moduleList = [
./misc/bonfire/default.nix
./services/papermc.nix
./services/qbittorrent-nox.nix
./services/spoofdpi.nix
];
configModule = {
config,
pkgs,
...
}: {
config = {
# module type checking
_module.check = check;
# extra arguments
_module.args = {
bonPkgs = self.packages.${pkgs.system};
};
};
};
importedModules =
map (path: {...}: {
# imports provide path for each module needed for documentation
# inject module configuration
imports = [path configModule];
})
moduleList;
importedModuleNames = map (path: bonLib.nameFromPath path) moduleList;
bonfireModule = {
config,
pkgs,
...
}: {
# collect all modules
imports = importedModules;
};
in
lib.listToAttrs (
lib.zipListsWith (name: value: {inherit name value;}) importedModuleNames importedModules
)
// {
bonfire = bonfireModule;
default = bonfireModule;
}