flake-parts/setups: add configName option

This commit is contained in:
Gabriel Arazas 2024-02-14 21:14:06 +08:00
parent e22a197e37
commit f5c9f0f876
No known key found for this signature in database
GPG Key ID: ADE0C41DAB221FCC
4 changed files with 15 additions and 5 deletions

View File

@ -135,7 +135,7 @@ let
config = { config = {
modules = [ modules = [
../../../configs/home-manager/${name} ../../../configs/home-manager/${config.configName}
( (
let let

View File

@ -302,7 +302,7 @@ let
config.modules = [ config.modules = [
# Bring in the required modules. # Bring in the required modules.
inputs.${config.homeManagerBranch}.nixosModules.home-manager inputs.${config.homeManagerBranch}.nixosModules.home-manager
../../../configs/nixos/${name} ../../../configs/nixos/${config.configName}
# Mapping the declarative home-manager users (if it has one) into NixOS # Mapping the declarative home-manager users (if it has one) into NixOS
# users. # users.
@ -403,7 +403,7 @@ let
programs.nixvim = { ... }: { programs.nixvim = { ... }: {
enable = lib.mkDefault true; enable = lib.mkDefault true;
imports = imports =
partsConfig.setups.nixvim.${config.nixvim.instance}.modules partsConfig.setups.nixvim.configs.${config.nixvim.instance}.modules
++ partsConfig.setups.nixvim.sharedModules ++ partsConfig.setups.nixvim.sharedModules
++ setupConfig.nixvim.additionalModules; ++ setupConfig.nixvim.additionalModules;
}; };

View File

@ -69,7 +69,7 @@ let
config = { config = {
modules = [ modules = [
../../../configs/nixvim/${name} ../../../configs/nixvim/${config.configName}
]; ];
}; };
}; };

View File

@ -1,4 +1,4 @@
{ lib, systems, ... }: { { lib, name, systems, ... }: {
options = { options = {
systems = lib.mkOption { systems = lib.mkOption {
type = with lib.types; listOf str; type = with lib.types; listOf str;
@ -18,5 +18,15 @@
A list of NixOS modules specific for that host. A list of NixOS modules specific for that host.
''; '';
}; };
configName = lib.mkOption {
type = lib.types.nonEmptyStr;
default = name;
example = "plover";
description = ''
The name of the configuration to be used. Useful for creating variants
of the same declarative environment.
'';
};
}; };
} }