mirror of
https://gitlab.com/rensa-nix/utils.git
synced 2025-12-10 22:50:12 +01:00
36 lines
1 KiB
Nix
36 lines
1 KiB
Nix
{lib}: userConfig: let
|
|
inherit (lib) evalModules types assertMsg isAttrs toString;
|
|
evaled = evalModules {
|
|
modules = [
|
|
./ren-module.nix
|
|
userConfig
|
|
{
|
|
config._module.check = true;
|
|
config._module.freeformType = types.unspecified;
|
|
}
|
|
];
|
|
};
|
|
|
|
home-manager = assert assertMsg (isAttrs evaled.config.ren.home-manager) "home-manager input unset"; evaled.config.ren.home-manager;
|
|
hmLib = import (home-manager + /modules/lib/stdlib-extended.nix) lib;
|
|
hmModules = import (home-manager + /modules/modules.nix) {
|
|
inherit (evaled.config.ren) pkgs;
|
|
lib = hmLib;
|
|
check = true;
|
|
useNixpkgsModule = false;
|
|
};
|
|
|
|
homeConfig = hmLib.evalModules {
|
|
specialArgs = {
|
|
modulesPath = toString (evaled.config.bee.home + /modules);
|
|
};
|
|
modules = [./ren-module.nix userConfig] ++ hmModules;
|
|
};
|
|
in {
|
|
inherit userConfig;
|
|
innerConfig = {
|
|
imports = [userConfig ./ren-module.nix];
|
|
};
|
|
inherit (homeConfig) options config;
|
|
inherit (homeConfig.config.home) activationPackage;
|
|
}
|