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

@@ -21,9 +21,8 @@ in
my.dev.cc = {
enable = lib.mkEnableOption "Install C/C++ tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install C/C++ packages for";
};
};

View File

@@ -18,9 +18,8 @@ in
my.dev.docker = {
enable = lib.mkEnableOption "Install Docker tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Docker packages for";
};
};

View File

@@ -9,9 +9,8 @@
options.my.emacs = {
enable = lib.mkEnableOption "Doom Emacs configuration";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Emacs packages for";
};
};

View File

@@ -24,9 +24,8 @@ in
my.dev.go = {
enable = lib.mkEnableOption "Install Go tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Go packages for";
};
};

View File

@@ -22,9 +22,8 @@ in
my.dev.haskell = {
enable = lib.mkEnableOption "Install Haskell tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Haskell packages for";
};
};

View File

@@ -16,9 +16,8 @@ in
my.dev.javascript = {
enable = lib.mkEnableOption "Install JavaScript tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install JavaScript packages for";
};
};

View File

@@ -15,9 +15,8 @@ in
my.dev.julia = {
enable = lib.mkEnableOption "Install Julia globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Julia packages for";
};
};

View File

@@ -22,9 +22,8 @@ in
my.dev.nix = {
enable = lib.mkEnableOption "Install Nix tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Nix packages for";
};
};

View File

@@ -34,9 +34,8 @@ in
my.dev.python = {
enable = lib.mkEnableOption "Install Python tools globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Python packages for";
};
};

View File

@@ -16,9 +16,8 @@ in
my.dev.ruby = {
enable = lib.mkEnableOption "Install Ruby tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Ruby packages for";
};
};

View File

@@ -21,9 +21,8 @@ in
my.dev.rust = {
enable = lib.mkEnableOption "Install Rust tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Rust packages for";
};
};

View File

@@ -20,9 +20,8 @@ in
my.dev.sh = {
enable = lib.mkEnableOption "Install shell scripting tools globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install shell scripting packages for";
};
};

View File

@@ -18,9 +18,8 @@ in
my.dev.zig = {
enable = lib.mkEnableOption "Install Zig tooling globally";
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.dev;
merge = inputs.self.lib.mergeUsersOption lib;
description = "Users to install Zig packages for";
};
};