diff --git a/modules/flake-parts/default.nix b/modules/flake-parts/default.nix index e3f9deee..0e6a6e98 100644 --- a/modules/flake-parts/default.nix +++ b/modules/flake-parts/default.nix @@ -8,6 +8,7 @@ imports = [ ./images.nix ./deploy-rs-nodes.nix + ./home-configurations.nix ./home-modules.nix ./setups ]; diff --git a/modules/flake-parts/home-configurations.nix b/modules/flake-parts/home-configurations.nix new file mode 100644 index 00000000..7e5bd27b --- /dev/null +++ b/modules/flake-parts/home-configurations.nix @@ -0,0 +1,29 @@ +{ lib, flake-parts-lib, ... }: + +{ + options = { + flake = flake-parts-lib.mkSubmoduleOptions { + homeConfigurations = lib.mkOption { + type = with lib.types; lazyAttrsOf raw; + default = {}; + description = '' + Instantiated home-manager configurations. + + `homeConfigurations is for specific home environments. If you want to + add reusable components, add them to {option}`homeModules`. + ''; + example = lib.literalExpression '' + { + foodogsquared = inputs.home-manager.lib.homeManagerConfiguration { + pkgs = inputs.nixpkgs.legacyPackages.''${system}; + modules = [ + inputs.sops-nix.homeManagerModules.sops + ./home.nix + ]; + }; + } + ''; + }; + }; + }; +}