diff options
| author | adikro <adikro@disroot.org> | 2025-12-24 16:21:00 +0100 |
|---|---|---|
| committer | adikro <adikro@disroot.org> | 2025-12-24 16:21:00 +0100 |
| commit | 6aaa5993e4c1cfb205ed555d958702f9bba1770d (patch) | |
| tree | 3af8cf20967cf10542edd2e51232b1da70002fde /os/core/users.nix | |
| parent | 2ceabfd1d1dc03ca895e960048b73a82e29e45e8 (diff) | |
a bunch of changes, renames sys to os and refactored some of the logic
Diffstat (limited to 'os/core/users.nix')
| -rw-r--r-- | os/core/users.nix | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/os/core/users.nix b/os/core/users.nix new file mode 100644 index 0000000..d0af69f --- /dev/null +++ b/os/core/users.nix @@ -0,0 +1,24 @@ +{ config, lib, pkgs, username, ... }: +let + cfg = config.sys.core.users; +in +{ + options.sys.core.users.enable = lib.mkEnableOption "enables user accounts"; + config = lib.mkIf cfg.enable { + programs.fish.enable = true; + users.users.${username} = { + isNormalUser = true; + shell = pkgs.fish; + + extraGroups = lib.mkMerge [ + [ "wheel" ] + + (lib.mkIf (config.sys.core.drivers.amd.enable or false) [ "video" "render" ]) + (lib.mkIf (config.sys.core.network.enable or false) [ "networkmanager" ]) + (lib.mkIf (config.sys.srv.kvm.enable or false) [ "libvirtd" ]) + (lib.mkIf (config.sys.srv.docker.enable or false) [ "docker" ]) + (lib.mkIf (config.sys.srv.autoclicker.enable or false) [ "input" ]) + ]; + }; + }; +} |
