diff options
author | Linnnus <[email protected]> | 2024-12-29 19:17:35 +0000 |
---|---|---|
committer | Linnnus <[email protected]> | 2025-01-27 19:50:41 +0000 |
commit | 47e2c211d343a73260a65995514f46f2ccba103d (patch) | |
tree | 083d306c1f215932b04a375e3f70de1dea5e25bd | |
parent | 3eb0a3c2d694e65053227d6fd33eb44edfccdd50 (diff) |
hosts/omar: Refactor desktop-environment, fix DWM status formatting
-rw-r--r-- | hosts/omar/desktop-environment/default.nix | 40 | ||||
-rw-r--r-- | hosts/omar/desktop-environment/input.nix | 11 | ||||
-rw-r--r-- | hosts/omar/desktop-environment/window-manager.nix | 25 |
3 files changed, 41 insertions, 35 deletions
diff --git a/hosts/omar/desktop-environment/default.nix b/hosts/omar/desktop-environment/default.nix index f187404..48598eb 100644 --- a/hosts/omar/desktop-environment/default.nix +++ b/hosts/omar/desktop-environment/default.nix @@ -1,40 +1,13 @@ # This module configures a desktop environment specific to this host. -{pkgs, ...}: - { - # Enable the X11 windowing system. - services.xserver.enable = true; - - services.xserver.windowManager.dwm.enable = true; - - systemd.services.dwm-battery = { - description = "Battery status update"; - after = ["graphical-session.target"]; - wantedBy = ["graphical-session.target"]; - - serviceConfig = { - script = '' - while true; do - echo "$(date +%H:%M) - $(cat /sys/class/power_supply/BAT0/capacity)" - sleep 5 - done | ${pkgs.dwm-setstatus}/bin/dwm-setstatus - ''; - }; - }; - - environment.systemPackages = with pkgs; [ - st - dmenu + imports = [ + ./window-manager.nix + ./input.nix ]; - # Configure keymap in X11 - services.xserver.xkb.layout = "dk"; - services.xserver.xkb.options = "caps:escape"; - console.useXkbConfig = true; - - # Enable CUPS to print documents. - # services.printing.enable = true; + # Enable the X11 windowing system. + services.xserver.enable = true; # Enable sound. # hardware.pulseaudio.enable = true; @@ -43,7 +16,4 @@ # enable = true; # pulse.enable = true; # }; - - # Enable touchpad support (enabled default in most desktopManager). - services.libinput.enable = true; } diff --git a/hosts/omar/desktop-environment/input.nix b/hosts/omar/desktop-environment/input.nix new file mode 100644 index 0000000..bb138c7 --- /dev/null +++ b/hosts/omar/desktop-environment/input.nix @@ -0,0 +1,11 @@ +{ + + # Configure keymap in X11 + services.xserver.xkb.layout = "dk"; + services.xserver.xkb.options = "caps:escape"; + + console.useXkbConfig = true; + + # Enable touchpad support (enabled default in most desktopManager). + services.libinput.enable = true; +} diff --git a/hosts/omar/desktop-environment/window-manager.nix b/hosts/omar/desktop-environment/window-manager.nix new file mode 100644 index 0000000..1237148 --- /dev/null +++ b/hosts/omar/desktop-environment/window-manager.nix @@ -0,0 +1,25 @@ +{pkgs, ...}: + +{ + services.xserver.windowManager.dwm.enable = true; + + # Show battery and clock in status bar. This is a background daemon which + # updates the root window, which DWM uses for status. + systemd.user.services.dwm-battery = { + description = "Battery status update"; + partOf = ["graphical-session.target"]; + wantedBy = ["graphical-session.target"]; + + serviceConfig.ExecStart = pkgs.writeShellScript "dwm-battery" '' + while true; do + echo "$(date +%H:%M) - $(cat /sys/class/power_supply/BAT0/capacity)%" + sleep 5 + done | ${pkgs.dwm-setstatus}/bin/dwm-setstatus + ''; + }; + + environment.systemPackages = with pkgs; [ + st + dmenu + ]; +} |