From 14a285ce03b49f9dd8d20ec27f416880a7d04457 Mon Sep 17 00:00:00 2001 From: SebastianStork Date: Sun, 21 Jul 2024 01:47:42 +0200 Subject: [PATCH] Reorganize user configuration --- flake/hosts.nix | 2 +- users/common.nix | 40 +++++++++----------------- users/home-manager.nix | 12 ++++++++ users/seb/@inspiron/default.nix | 9 ++++-- users/seb/@north/default.nix | 44 ++++++++++++++++------------- users/seb/home.nix | 2 ++ users/seb/{default.nix => user.nix} | 4 --- 7 files changed, 61 insertions(+), 52 deletions(-) create mode 100644 users/home-manager.nix rename users/seb/{default.nix => user.nix} (81%) diff --git a/flake/hosts.nix b/flake/hosts.nix index 612fa74..c1d227b 100644 --- a/flake/hosts.nix +++ b/flake/hosts.nix @@ -16,9 +16,9 @@ in inherit inputs self; }; modules = [ + { networking.hostName = name; } "${self}/hosts/${name}" "${self}/users/seb/@${name}" - { networking.hostName = name; } ]; } ); diff --git a/users/common.nix b/users/common.nix index 3c21b9e..2916f9c 100644 --- a/users/common.nix +++ b/users/common.nix @@ -1,31 +1,19 @@ -{ inputs, self, ... }: +{ self, ... }: { - imports = [ inputs.home-manager.nixosModules.home-manager ]; - - home-manager = { - useGlobalPkgs = true; - useUserPackages = true; - extraSpecialArgs = { - inherit inputs self; - }; - }; - - home-manager.sharedModules = [ + imports = [ self.homeManagerModules.default self.wrappers.default - - { - programs.home-manager.enable = true; - systemd.user.startServices = "sd-switch"; - - xdg = { - enable = true; - userDirs = { - enable = true; - createDirectories = true; - extraConfig.XDG_SCREENSHOTS_DIR = "$HOME/Pictures/Screenshots"; - }; - }; - } ]; + + programs.home-manager.enable = true; + systemd.user.startServices = "sd-switch"; + + xdg = { + enable = true; + userDirs = { + enable = true; + createDirectories = true; + extraConfig.XDG_SCREENSHOTS_DIR = "$HOME/Pictures/Screenshots"; + }; + }; } diff --git a/users/home-manager.nix b/users/home-manager.nix new file mode 100644 index 0000000..4668c41 --- /dev/null +++ b/users/home-manager.nix @@ -0,0 +1,12 @@ +{ inputs, self, ... }: +{ + imports = [ inputs.home-manager.nixosModules.home-manager ]; + + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + extraSpecialArgs = { + inherit inputs self; + }; + }; +} diff --git a/users/seb/@inspiron/default.nix b/users/seb/@inspiron/default.nix index 9585d40..20841ad 100644 --- a/users/seb/@inspiron/default.nix +++ b/users/seb/@inspiron/default.nix @@ -1,9 +1,14 @@ +{ self, ... }: { - imports = [ ../default.nix ]; + imports = [ + "${self}/users/home-manager.nix" + ../user.nix + ]; home-manager.users.seb = { - home.stateVersion = "23.11"; + imports = [ ../home.nix ]; + home.stateVersion = "23.11"; myConfig.theme = "light"; wayland.windowManager.hyprland.settings.monitor = [ diff --git a/users/seb/@north/default.nix b/users/seb/@north/default.nix index 26fc048..591ddda 100644 --- a/users/seb/@north/default.nix +++ b/users/seb/@north/default.nix @@ -1,26 +1,32 @@ -{ pkgs, ... }: +{ self, ... }: { - imports = [ ../default.nix ]; + imports = [ + "${self}/users/home-manager.nix" + ../user.nix + ]; - home-manager.users.seb = { - home.stateVersion = "23.11"; + home-manager.users.seb = + { pkgs, ... }: + { + imports = [ ../home.nix ]; - myConfig.theme = "dark"; + home.stateVersion = "23.11"; + myConfig.theme = "dark"; - home.packages = [ - pkgs.ffmpeg - pkgs.obs-studio - pkgs.davinci-resolve - pkgs.gimp - ]; - - wayland.windowManager.hyprland.settings = { - monitor = [ - "Unknown-1,disable" - "DP-1,2560x1440@144,0x0,1" - "HDMI-A-1,2560x1440@60,-1440x-617,1,transform,1" + home.packages = [ + pkgs.ffmpeg + pkgs.obs-studio + pkgs.davinci-resolve + pkgs.gimp ]; - workspace = [ "m[HDMI-A-1],layoutopt:orientation:top" ]; + + wayland.windowManager.hyprland.settings = { + monitor = [ + "Unknown-1,disable" + "DP-1,2560x1440@144,0x0,1" + "HDMI-A-1,2560x1440@60,-1440x-617,1,transform,1" + ]; + workspace = [ "m[HDMI-A-1],layoutopt:orientation:top" ]; + }; }; - }; } diff --git a/users/seb/home.nix b/users/seb/home.nix index 9b85f6e..24f1ea1 100644 --- a/users/seb/home.nix +++ b/users/seb/home.nix @@ -5,6 +5,8 @@ ... }: { + imports = [ ../common.nix ]; + myConfig = { sops.enable = true; shell.zsh.enable = true; diff --git a/users/seb/default.nix b/users/seb/user.nix similarity index 81% rename from users/seb/default.nix rename to users/seb/user.nix index c586c6d..fdd4d93 100644 --- a/users/seb/default.nix +++ b/users/seb/user.nix @@ -1,7 +1,5 @@ { config, ... }: { - imports = [ ../common.nix ]; - sops.secrets.seb-password.neededForUsers = true; users.users.seb = { @@ -15,6 +13,4 @@ "video" ]; }; - - home-manager.users.seb = ./home.nix; }