From 8ca7b4c80659eff8b68ffe9ab39d255e7695cd1e Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Sun, 27 Jul 2025 20:03:18 +0100 Subject: [PATCH] Move and refactor dwm configuration --- hosts/t480/configuration.nix | 6 --- modules/nixos/default.nix | 1 - modules/nixos/dwm/default.nix | 57 ------------------------- modules2/dwm/config.nix | 11 +++++ modules2/dwm/dwm-status/order.nix | 8 ++++ modules2/dwm/dwm-status/restart.nix | 3 ++ modules2/dwm/packages.nix | 16 +++++++ {modules/nixos => modules2}/dwm/xinitrc | 0 modules2/hosts/t480/dwm/dwm-status.nix | 3 ++ modules2/hosts/t480/dwm/dwm.nix | 3 ++ 10 files changed, 44 insertions(+), 64 deletions(-) delete mode 100644 modules/nixos/dwm/default.nix create mode 100644 modules2/dwm/config.nix create mode 100644 modules2/dwm/dwm-status/order.nix create mode 100644 modules2/dwm/dwm-status/restart.nix create mode 100644 modules2/dwm/packages.nix rename {modules/nixos => modules2}/dwm/xinitrc (100%) create mode 100644 modules2/hosts/t480/dwm/dwm-status.nix create mode 100644 modules2/hosts/t480/dwm/dwm.nix diff --git a/hosts/t480/configuration.nix b/hosts/t480/configuration.nix index 9bf9d683..90f3f4ea 100644 --- a/hosts/t480/configuration.nix +++ b/hosts/t480/configuration.nix @@ -18,12 +18,6 @@ ../../users/opdavies.nix ]; - features = { - desktop = { - dwm.enable = true; - }; - }; - services = { auto-cpufreq.enable = true; geoclue2.enable = true; diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 0679b892..8be377c9 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -1,6 +1,5 @@ { imports = [ - ./dwm ./gitea-actions-runner.nix ./nixpad ./podman.nix diff --git a/modules/nixos/dwm/default.nix b/modules/nixos/dwm/default.nix deleted file mode 100644 index 795fde3a..00000000 --- a/modules/nixos/dwm/default.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; - -let - cfg = config.features.desktop.dwm; -in -{ - options.features.desktop.dwm.enable = mkEnableOption "Enable dwm"; - - config = mkIf cfg.enable { - services = { - dwm-status = { - enable = true; - - settings.order = [ - "audio" - "battery" - "network" - "time" - ]; - }; - - xserver.windowManager.dwm.enable = true; - }; - - systemd.user.services.dwm-status.serviceConfig.Restart = "on-failure"; - - environment.systemPackages = with pkgs; [ - dmenu - dmenu-bluetooth - dunst - networkmanager_dmenu - poweralertd - slock - xdotool - xwallpaper - ]; - - home-manager.users.opdavies = - { config, ... }: - { - home = { - file."${config.home.sessionVariables.XINITRC}".source = ./xinitrc; - - sessionVariables = { - XINITRC = "${config.xdg.configHome}/X11/xinitrc"; - }; - }; - }; - }; -} diff --git a/modules2/dwm/config.nix b/modules2/dwm/config.nix new file mode 100644 index 00000000..99fd7d0e --- /dev/null +++ b/modules2/dwm/config.nix @@ -0,0 +1,11 @@ +{ + flake.modules.homeManager.gui = + { config, ... }: + { + home = { + file."${config.home.sessionVariables.XINITRC}".source = ./xinitrc; + + sessionVariables.XINITRC = "${config.xdg.configHome}/X11/xinitrc"; + }; + }; +} diff --git a/modules2/dwm/dwm-status/order.nix b/modules2/dwm/dwm-status/order.nix new file mode 100644 index 00000000..9d383168 --- /dev/null +++ b/modules2/dwm/dwm-status/order.nix @@ -0,0 +1,8 @@ +{ + flake.modules.nixos.pc.services.dwm-status.settings.order = [ + "audio" + "battery" + "network" + "time" + ]; +} diff --git a/modules2/dwm/dwm-status/restart.nix b/modules2/dwm/dwm-status/restart.nix new file mode 100644 index 00000000..d3bd1b34 --- /dev/null +++ b/modules2/dwm/dwm-status/restart.nix @@ -0,0 +1,3 @@ +{ + flake.modules.nixos.pc.systemd.user.services.dwm-status.serviceConfig.Restart = "on-failure"; +} diff --git a/modules2/dwm/packages.nix b/modules2/dwm/packages.nix new file mode 100644 index 00000000..5e58932e --- /dev/null +++ b/modules2/dwm/packages.nix @@ -0,0 +1,16 @@ +{ + flake.modules.nixos.pc = + { pkgs, ... }: + { + environment.systemPackages = with pkgs; [ + dmenu + dmenu-bluetooth + dunst + networkmanager_dmenu + poweralertd + slock + xdotool + xwallpaper + ]; + }; +} diff --git a/modules/nixos/dwm/xinitrc b/modules2/dwm/xinitrc similarity index 100% rename from modules/nixos/dwm/xinitrc rename to modules2/dwm/xinitrc diff --git a/modules2/hosts/t480/dwm/dwm-status.nix b/modules2/hosts/t480/dwm/dwm-status.nix new file mode 100644 index 00000000..c6770e61 --- /dev/null +++ b/modules2/hosts/t480/dwm/dwm-status.nix @@ -0,0 +1,3 @@ +{ + flake.modules.nixos.pc.services.dwm-status.enable = true; +} diff --git a/modules2/hosts/t480/dwm/dwm.nix b/modules2/hosts/t480/dwm/dwm.nix new file mode 100644 index 00000000..b6f219f6 --- /dev/null +++ b/modules2/hosts/t480/dwm/dwm.nix @@ -0,0 +1,3 @@ +{ + flake.modules.nixos.pc.services.xserver.windowManager.dwm.enable = true; +}