nixos-config/user/wm/xmonad
2024-01-18 15:36:52 -06:00
..
lib/Colors Organized xmonad color config + added stylix xmobar 2023-05-16 19:44:57 -05:00
README.org Added more documentation for important configs 2023-06-11 21:39:16 -05:00
startup.sh No longer use twmnd 2023-07-28 11:33:41 -05:00
xmobar-st-check.sh.mustache Updated xmobar st status to recognize process stop 2023-06-20 17:01:13 -05:00
xmobarrc.mustache Updated xmonad startup, xmobar syncthing, + networkmanager_dmenu keybind 2023-06-19 16:33:46 -05:00
xmonad.hs More user config variables set in flake 2023-06-22 15:48:09 -05:00
xmonad.nix Optimized some specialArgs and module argument use 2024-01-18 15:36:52 -06:00
xmonad.org Optimized some specialArgs and module argument use 2024-01-18 15:36:52 -06:00

XMonad

What is XMonad?

XMonad is a tiling window manager written and configured in Haskell. Since I have built up my own XMonad config over a few years, it is extremely efficient for me to operate (since it can be managed fully with the keyboard).

/byteio/nixos-config/media/commit/d5297c68f9673323ab548dcdce6aa068046f8950/user/wm/xmonad/xmonad.png

With my XMonad setup, there are several auxiliary utilities required to make it a "full desktop environment." A few of these packages include:

  • xmobar - Status bar
  • rofi - App launcher
  • alttab - Window switcher
  • feh - Wallpaper utility
  • pavucontrol and pamixer - Sound and volume control
  • networkmanager_dmenu - Internet connection control
  • brightnessctl - Screen brightness control
  • sct - Adjust screen color temperature
  • xkill and killall - Better than hitting Ctrl+Alt+Delete and waiting a few minutes

My Config

This directory includes my XMonad configuration, which consists of:

  • xmonad.hs - Main configuration
  • startup.sh - Startup script called by XMonad on startup
  • lib/Colors/Stylix.hs.mustache - Mustache template used to generate color library to theme XMonad with Stylix
  • xmobarrc.mustache - Mustache template used to generate my xmobar config themed with Stylix
  • xmonad.nix - Loads XMonad and my configuration (along with any necessary packages for my config) into my flake when imported

My full config is a literate org document (xmonad.org).