Moving Back to a Tiling WM โ€“ XMonad

https://news.ycombinator.com/rss Hits: 7
Summary

Here are my dotfiles. When I was still using Manjaro Linux back in 2019, I got a nudge to try i3wm. It was my first experience with any window manager. And I spent nearly 5 years with it, enjoying the absolute control over my workflow. Nearing the end of 2023, when I finally decided to leave Manjaro (for good), I had a bunch of options on my hand. Fedora looked really promising at that time. But even then, I wasnโ€™t sure I was going to be using any tiling window manager. I happily switched to Gnome in Fedora 40. I ran it along with XOrg so that I could make my capslock key act as a ctrl when held and as an escape when pressed once, using setxkbmap and xcape. But only after spending a few months there, I realized I missed that finer control at my fingertips. So, I resumed searching for a newer tiling window manager. I was also learning Haskell at that time, so picking up XMonad was natural. There are a lot of things that I like about XMonad apart from its standard tiling manager features. I enjoy writing the configuration in Haskell. Where ever possible, I try to leverage the benefits of Haskellโ€™s strong type system. Defining keybindings with a strong type system ensures that I cannot go very wrong with it. Using stack for building my configuration allows me to port the entire configuration easily to other systems, which are my various virtual machines. I have split configuration in various modules. src โ”œโ”€โ”€ Keybindings.hs โ”œโ”€โ”€ Layout.hs โ”œโ”€โ”€ Plugins โ”‚ โ”œโ”€โ”€ Bluetooth.hs โ”‚ โ”œโ”€โ”€ Pomodoro.hs โ”‚ โ””โ”€โ”€ Soundtrack.hs โ”œโ”€โ”€ Preferences.hs โ”œโ”€โ”€ Theme โ”‚ โ”œโ”€โ”€ Dmenu.hs โ”‚ โ”œโ”€โ”€ Font.hs โ”‚ โ”œโ”€โ”€ Theme.hs โ”‚ โ””โ”€โ”€ Xresources.hs โ”œโ”€โ”€ Workspaces.hs โ”œโ”€โ”€ xmobar.hs โ””โ”€โ”€ xmonad.hs 3 directories, 13 files If you want to poke around the config according to your needs, go through Preferences.hs. It contains lots of variables which can be customized like terminal emulator, browser, scratchpads, window gap size etc. It also contains a list of applications which you would like to start automatically at boot. Overal...

First seen: 2025-11-14 17:52

Last seen: 2025-11-15 04:53