From 96c88b1b85600cc189ed84ccef08ce20f6a20e1c Mon Sep 17 00:00:00 2001 From: Nikolaos Karaolidis Date: Sat, 29 Jun 2024 14:08:39 +0300 Subject: [PATCH] Refactor group management Signed-off-by: Nikolaos Karaolidis --- hosts/common/configs/brightnessctl/default.nix | 12 +++++++++++- hosts/common/configs/networkmanager/default.nix | 3 +++ hosts/common/default.nix | 2 +- hosts/eirene/base/default.nix | 8 ++++---- users/common/configs/persist/default.nix | 2 +- users/common/configs/sops/default.nix | 2 +- users/common/configs/xdg/default.nix | 2 +- users/nick/nogui.nix | 2 +- 8 files changed, 23 insertions(+), 10 deletions(-) create mode 100644 hosts/common/configs/networkmanager/default.nix diff --git a/hosts/common/configs/brightnessctl/default.nix b/hosts/common/configs/brightnessctl/default.nix index bb66554..464ed2c 100644 --- a/hosts/common/configs/brightnessctl/default.nix +++ b/hosts/common/configs/brightnessctl/default.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ config, lib, pkgs, ... }: { environment.systemPackages = with pkgs; [ brightnessctl ]; @@ -14,4 +14,14 @@ ACTION=="add", SUBSYSTEM=="leds", RUN+="${chgrp} input /sys/class/leds/%k/brightness" ACTION=="add", SUBSYSTEM=="leds", RUN+="${chmod} g+w /sys/class/leds/%k/brightness" ''; + + users.groups = + let + members = builtins.attrNames + (lib.attrsets.filterAttrs (_: config: config.isNormalUser) config.users.users); + in + { + video.members = members; + input.members = members; + }; } diff --git a/hosts/common/configs/networkmanager/default.nix b/hosts/common/configs/networkmanager/default.nix new file mode 100644 index 0000000..f29d881 --- /dev/null +++ b/hosts/common/configs/networkmanager/default.nix @@ -0,0 +1,3 @@ +{ + networking.networkmanager.enable = true; +} diff --git a/hosts/common/default.nix b/hosts/common/default.nix index 80ea8f7..8b0e937 100644 --- a/hosts/common/default.nix +++ b/hosts/common/default.nix @@ -6,6 +6,7 @@ ./configs/sops ./configs/getty ./configs/plymouth + ./configs/networkmanager ./configs/brightnessctl ./configs/pipewire ./configs/zsh @@ -39,7 +40,6 @@ }; hardware.graphics.enable32Bit = true; - networking.networkmanager.enable = true; i18n.defaultLocale = "en_US.UTF-8"; users = { diff --git a/hosts/eirene/base/default.nix b/hosts/eirene/base/default.nix index e8e8c7e..a75e207 100644 --- a/hosts/eirene/base/default.nix +++ b/hosts/eirene/base/default.nix @@ -58,10 +58,6 @@ }]; }; - theme = { - cursor.size = 24; - }; - programs.zsh.loginExtra = lib.mkBefore '' AMD=/dev/dri/by-path/pci-0000:06:00.0-card NVIDIA=/dev/dri/by-path/pci-0000:01:00.0-card @@ -74,6 +70,10 @@ ln -sf $CARD $HOME/.config/hypr/card ''; + + theme = { + cursor.size = 24; + }; }]; nixpkgs.config = { diff --git a/users/common/configs/persist/default.nix b/users/common/configs/persist/default.nix index 43c8a0e..225d485 100644 --- a/users/common/configs/persist/default.nix +++ b/users/common/configs/persist/default.nix @@ -1,7 +1,7 @@ { config, inputs, lib, ... }: let - users = lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users; + users = lib.attrsets.filterAttrs (_: config: config.isNormalUser) config.users.users; in { programs.fuse.userAllowOther = lib.mkIf (users != [ ]) true; diff --git a/users/common/configs/sops/default.nix b/users/common/configs/sops/default.nix index 9139211..f468aff 100644 --- a/users/common/configs/sops/default.nix +++ b/users/common/configs/sops/default.nix @@ -1,7 +1,7 @@ { config, inputs, lib, ... }: let - users = lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users; + users = lib.attrsets.filterAttrs (_: config: config.isNormalUser) config.users.users; sopsKeyPath = ".config/sops-nix/key.txt"; in { diff --git a/users/common/configs/xdg/default.nix b/users/common/configs/xdg/default.nix index 196f813..8fe974b 100644 --- a/users/common/configs/xdg/default.nix +++ b/users/common/configs/xdg/default.nix @@ -1,7 +1,7 @@ { config, lib, ... }: let - users = lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users; + users = lib.attrsets.filterAttrs (_: config: config.isNormalUser) config.users.users; in { home-manager.users = lib.attrsets.mapAttrs diff --git a/users/nick/nogui.nix b/users/nick/nogui.nix index a755777..b891b7b 100644 --- a/users/nick/nogui.nix +++ b/users/nick/nogui.nix @@ -26,7 +26,7 @@ in fullName = "Nikolaos Karaolidis"; description = user.fullName; hashedPasswordFile = config.sops.secrets.nick-password.path; - extraGroups = [ "wheel" "video" ]; + extraGroups = [ "wheel" ]; linger = true; uid = 1000; };