Refactor user option types across modules for consistency

Updated multiple configuration files to replace the user option type with a unified `usersOptionType`, enhancing consistency in user management across applications and services. This change simplifies the user configuration process and improves maintainability.
This commit is contained in:
Danilo Reyes
2026-01-16 13:40:44 -06:00
parent f1e6015d39
commit 6573392c3b
29 changed files with 43 additions and 65 deletions

View File

@@ -40,9 +40,8 @@ in
apps.art = {
enable = lib.mkEnableOption "digital art and creative applications";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install art packages for";
};
};

View File

@@ -21,9 +21,8 @@ in
options.my.apps.dictionaries = {
enable = lib.mkEnableOption "dictionaries and language tools";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install dictionaries packages for";
};
};

View File

@@ -26,9 +26,8 @@ in
gaming = {
enable = lib.mkEnableOption "gaming applications and emulators";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install gaming packages for";
};
};

View File

@@ -31,9 +31,8 @@ in
options.my.apps.internet = {
enable = lib.mkEnableOption "internet browsers and communication apps";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install internet packages for";
};
};

View File

@@ -9,9 +9,8 @@
options.my.apps.misc = {
enable = lib.mkEnableOption "miscellaneous desktop applications";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install misc packages for";
};
};

View File

@@ -33,17 +33,15 @@ in
options.my.apps.multimedia = {
enable = lib.mkEnableOption "multimedia applications and media players";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install multimedia packages for";
};
videoEditing = {
enable = lib.mkEnableOption "video editing applications";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install video editing packages for";
};
};

View File

@@ -9,9 +9,8 @@
options.my.apps.piano = {
enable = lib.mkEnableOption "piano learning and music theory apps";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install piano packages for";
};
};

View File

@@ -9,9 +9,8 @@
options.my.apps.office = {
enable = lib.mkEnableOption "office applications and productivity tools";
users = lib.mkOption {
type = lib.types.either lib.types.str (lib.types.listOf lib.types.str);
type = inputs.self.lib.usersOptionType lib;
default = config.my.toggleUsers.apps;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install office packages for";
};
};