diff options
Diffstat (limited to 'modules/shared/traits')
| -rw-r--r-- | modules/shared/traits/default.nix | 2 | ||||
| -rw-r--r-- | modules/shared/traits/users.nix | 39 | ||||
| -rw-r--r-- | modules/shared/traits/users/default.nix | 5 | ||||
| -rw-r--r-- | modules/shared/traits/users/seth.nix | 38 |
4 files changed, 44 insertions, 40 deletions
diff --git a/modules/shared/traits/default.nix b/modules/shared/traits/default.nix index 2c409a7..ad1ecb0 100644 --- a/modules/shared/traits/default.nix +++ b/modules/shared/traits/default.nix @@ -2,6 +2,6 @@ imports = [ ./home-manager.nix ./locale.nix - ./users.nix + ./users ]; } diff --git a/modules/shared/traits/users.nix b/modules/shared/traits/users.nix deleted file mode 100644 index e18e40a..0000000 --- a/modules/shared/traits/users.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - cfg = config.traits.users; -in { - options.traits.users = { - seth = { - enable = lib.mkEnableOption "Seth's user & home configurations"; - }; - }; - - config = lib.mkMerge [ - (lib.mkIf cfg.seth.enable { - users.users.seth = - { - shell = pkgs.fish; - home = lib.mkDefault ( - if pkgs.stdenv.isDarwin - then "/Users/seth" - else "/home/seth" - ); - } - // lib.optionalAttrs pkgs.stdenv.isLinux { - extraGroups = ["wheel"]; - isNormalUser = true; - }; - - programs.fish.enable = lib.mkDefault true; - - home-manager.users.seth = { - imports = [../../../users/seth]; - seth.enable = true; - }; - }) - ]; -} diff --git a/modules/shared/traits/users/default.nix b/modules/shared/traits/users/default.nix new file mode 100644 index 0000000..a81dacf --- /dev/null +++ b/modules/shared/traits/users/default.nix @@ -0,0 +1,5 @@ +{ + imports = [ + ./seth.nix + ]; +} diff --git a/modules/shared/traits/users/seth.nix b/modules/shared/traits/users/seth.nix new file mode 100644 index 0000000..ce86efb --- /dev/null +++ b/modules/shared/traits/users/seth.nix @@ -0,0 +1,38 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.traits.users.seth; +in { + options.traits.users.seth = { + enable = lib.mkEnableOption "Seth's user & home configurations"; + }; + + config = lib.mkMerge [ + (lib.mkIf cfg.enable { + users.users.seth.shell = pkgs.fish; + + programs.fish.enable = true; + + home-manager.users.seth = { + imports = [../../../../users/seth]; + seth.enable = true; + }; + }) + + (lib.mkIf (cfg.enable && pkgs.stdenv.isDarwin) { + users.users.seth = { + home = lib.mkDefault "/Users/seth"; + }; + }) + + (lib.mkIf (cfg.enable && pkgs.stdenv.isLinux) { + users.users.seth = { + extraGroups = ["wheel"]; + isNormalUser = true; + }; + }) + ]; +} |
