diff --git a/modules/boot.nix b/modules/boot.nix
index f93c554..8a4a8af 100644
--- a/modules/boot.nix
+++ b/modules/boot.nix
@@ -1,6 +1,11 @@
 { pkgs, options, lib, ... }: {
   config = {
+    services.logind.extraConfig = ''
+      HandlePowerKey=Ignore
+      LidSwitchIgnoreInhibited=no
+    '';
     boot = {
+      kernelParams = [ "acpi_backlight=video" ];
       loader = {
         systemd-boot = {
           /* enable = true; */ # Replaced by secure-boot.nix
@@ -24,6 +29,7 @@
         "tap"
         "tun"
         "veth"
+        "hid_sensor_hub"
       ];
     };
   };
diff --git a/modules/xmonad.nix b/modules/xmonad.nix
index 0457b73..9195235 100644
--- a/modules/xmonad.nix
+++ b/modules/xmonad.nix
@@ -1,17 +1,18 @@
-{ lib, pkgs, home, config, ... }: {
+{ lib, pkgs, home, config, utils, ... }: {
   home = {
+    home.packages = with pkgs; [ xob pamixer ];
     xsession = {
       windowManager.xmonad = {
         enable = true;
         enableContribAndExtras = true;
-        config = ./xmonad/xmonad.hs;
+        config = utils.interpolateFile ./xmonad/xmonad.hs;
         libFiles = lib.pipe ./xmonad [
           builtins.readDir
           builtins.attrNames
           (builtins.filter (name: name != "xmonad.hs"))
           (map (name: {
             inherit name;
-            value = "${./xmonad}/${name}";
+            value = utils.interpolateFile "${./xmonad}/${name}";
           }))
           builtins.listToAttrs
         ];
diff --git a/modules/xmonad/XMonadLog.hs b/modules/xmonad/XMonadLog.hs
index b07485c..fb5bbe7 100644
--- a/modules/xmonad/XMonadLog.hs
+++ b/modules/xmonad/XMonadLog.hs
@@ -33,11 +33,12 @@
       grey   = "#474e5d"
       orange = "#e5c07b"
       purple = "#c678dd"
+      green  = "#98c379"
       red    = "#e06c75"
   in def { ppOutput          = dbusOutput dbus
          , ppCurrent         = wrapper red
-         , ppVisible         = wrapper blue
-         , ppUrgent          = wrapper orange
+         , ppVisible         = wrapper orange
+         , ppUrgent          = wrapper green
          , ppHidden          = wrapper blue
          , ppHiddenNoWindows = wrapper grey
          , ppTitle           = shorten 100 . wrapper purple
diff --git a/modules/xmonad/vol_change.py b/modules/xmonad/vol_change.py
new file mode 100644
index 0000000..6629995
--- /dev/null
+++ b/modules/xmonad/vol_change.py
@@ -0,0 +1,30 @@
+#!${{pkgs.python3}}/bin/python3
+
+import sys
+import os
+import subprocess
+
+args = sys.argv
+
+device_argument = "--default-source" if "-i" in args else ""
+
+control_argument = ""
+control_argument += "-i" if "-u" in args else ""
+control_argument += "-d" if "-d" in args else ""
+control_argument += "-t" if "-m" in args else " 5"
+
+os.system(
+    f"${{pkgs.pamixer}}/bin/pamixer {device_argument} {control_argument} --set-limit 150"
+)
+mute_char = (
+    "!"
+    if subprocess.getoutput(f"${{pkgs.pamixer}}/bin/pamixer {device_argument} --get-mute")
+    == "true"
+    else ""
+)
+volume = subprocess.getoutput(f"${{pkgs.pamixer}}/bin/pamixer {device_argument} --get-volume")
+
+socket_path = f"{os.environ['XDG_RUNTIME_DIR']}/xob.sock"
+
+with open(socket_path, "w") as socket:
+    socket.write(f"{volume}{mute_char}\n")
diff --git a/modules/xmonad/xmonad.hs b/modules/xmonad/xmonad.hs
index b1b3219..76c29f5 100644
--- a/modules/xmonad/xmonad.hs
+++ b/modules/xmonad/xmonad.hs
@@ -1,4 +1,5 @@
 -- spell-checker:words xmonad
+{-# OPTIONS_GHC -Wno-deferred-out-of-scope-variables #-}
 import           XMonad
 
 import           System.Exit
@@ -14,20 +15,28 @@
 
 import           Blaze.ByteString.Builder     (toByteString)
 import           Foreign.C
-import           XMonad
+import           Graphics.X11.ExtraTypes      (xF86XK_AudioLowerVolume,
+                                               xF86XK_AudioMute,
+                                               xF86XK_AudioRaiseVolume,
+                                               xF86XK_MonBrightnessDown,
+                                               xF86XK_MonBrightnessUp,
+                                               xF86XK_Xfer)
+import qualified XMonad                       as W
 import           XMonad.Hooks.DynamicProperty (dynamicPropertyChange)
 import           XMonad.Hooks.ManageHelpers   (doFullFloat, doLower,
-                                               isInProperty, doRectFloat)
+                                               doRectFloat, isInProperty)
 import           XMonad.Hooks.UrgencyHook
 import           XMonad.Layout.Drawer         (propertyToQuery)
 import           XMonad.Layout.Gaps
 import           XMonad.Layout.Spacing
 import qualified XMonad.StackSet              as W
 import           XMonad.Util.Hacks
-import qualified XMonad as W
-import XMonad.Util.PureX (curScreenId, curScreen)
+import           XMonad.Util.PureX            (curScreen, curScreenId)
+import           XMonad.Util.Run              (safeSpawn, safeSpawnProg)
 
-terminal = "kitty"      -- Kitty, my beloved <3
+volumeChangeCmd = "${{./vol_change.py}}"
+
+terminal = "/usr/bin/env SHLVL=0 kitty"      -- Kitty, my beloved <3
 launcher = "pkill rofi; rofi -show combi"
 networkManager = "wpa_cli select_network $(wpa_cli list_networks | tail -n +3 | awk '!seen[$2]++' | rofi -dmenu -window-title 'Select Network' | awk '{print $1;}')"
 
@@ -36,7 +45,7 @@
 
 modifierKey = mod4Mask  -- Use Super as our mod key
 
-statusBar = "pkill polybar; polybar"
+statusBar = "pkill polybar; polybar main; polybar dp1; polybar dp2; polybar dp3; polybar dp4"
 compositor = "pkill picom; picom"
 background = "pkill show; show ~/.xmonad/wallpaper.glsl > /dev/null"
 colorSelection = "xcolor | xclip -sel clip"
@@ -44,11 +53,16 @@
 
 shift = shiftMask
 
+-- spell-checker:words xobsock
+xobsock = "$XDG_RUNTIME_DIR/xob.sock"
+
 startupHook = do
   spawn Main.statusBar
   spawn Main.compositor
   spawn background
   spawn keybindings
+  spawn "pgrep keepass || run_keepass"
+  spawn $ "pkill xob; rm -f " ++ xobsock ++ " && mkfifo " ++ xobsock ++ " && tail -f " ++ xobsock ++ " | xob"
 
 
 main :: IO ()
@@ -92,4 +106,15 @@
   , ((modifierKey .|. Main.shift, xK_s), spawn selectScreenshot)
   , ((modifierKey .|. Main.shift, xK_h), spawn colorSelection)
   , ((0, xK_Print), spawn screenshot)
+  , ((modifierKey .|. Main.shift, xK_Return), spawn Main.terminal)
+  , ((0, xF86XK_AudioLowerVolume), spawn $ volumeChangeCmd ++ " -d")
+  , ((0, xF86XK_AudioRaiseVolume), spawn $ volumeChangeCmd ++ " -u")
+  , ((0, xF86XK_AudioMute), spawn $ volumeChangeCmd ++ " -m")
+  , ((modifierKey, xF86XK_AudioLowerVolume), spawn $ volumeChangeCmd ++ " -d -i")
+  , ((modifierKey, xF86XK_AudioRaiseVolume), spawn $ volumeChangeCmd ++ " -u -i")
+  , ((modifierKey, xF86XK_AudioMute), spawn $ volumeChangeCmd ++ " -m -i")
+  , ((0, xF86XK_MonBrightnessDown), spawn $ "light -U 6 && light -G | cut -d'.' -f1 > " ++ xobsock)
+  , ((0, xF86XK_MonBrightnessUp), spawn $ "light -A 6 && light -G | cut -d'.' -f1 > " ++ xobsock)
+  , ((modifierKey, xF86XK_MonBrightnessDown), spawn $ "light -U 3 && light -G | cut -d'.' -f1 > " ++ xobsock)
+  , ((modifierKey, xF86XK_MonBrightnessUp), spawn $ "light -A 3 && light -G | cut -d'.' -f1 > " ++ xobsock)
   ]
