If you don't have previous Haskell experience, then other window managers like i3 or bspwm might be more comfortable.
If you don't have previous Haskell experience, then other window managers like i3 or bspwm might be more comfortable.
My biggest beef with xmonad is that its configuration file is itself Haskell source code. So even if xmonad is the only Haskell project I use, I have to pull in GHC to compile my configuration. Since I'm not a Haskell guy, this means that I'm easily tipped off the cliff into cabal hell, which is not where I want to be when updating my WM config. For all that, xmonad is great when it works, and I stuck with it from 2011 to 2014 before moving on to i3.
Even Haskell people find themselves easily in the cabal hell. Everyone is aware of the issue, but it's still not solved.
It's possible this situation has improved since last year, when I switched to i3, but it can never be fully rectified as long as the config file is itself Haskell source. I find it surprising that, despite the Haskell community's claims that Haskell is great for writing domain-specific languages, xmonad does not expose a DSL for you to configure it with.
I presume it's nice that you can actually customize xmonad with code. So an appropriate DSL would be a programming language so using Haskell makes sense. Any other DSL would be more limiting.
> If you want your config to use a Haskell package that's not provided by your distro, as many of the config examples do, you're out of luck unless you want to take the cabal route.
I can understand that this would cause pain. I suppose it's up to cabal and/or distros to fix this.
You've hit the nail on the head here --- the problem is that xmonad offers an unlimited scope for configuration, including extensions to the behavior of xmonad. I'd rather see a clear separation between mechanisms for configuration and extension, even if that reduces the power of configuration.
There's a bug open for KDE explicitly asking for xmonad-like mutiple monitor support, which is marked WONTFIX as a result. But yes, I absolutely adore xmonad's take on it, and it's well worth the occasional glitches.
right now awesomewm does everything i need and config being in lua helps a ton with readability and flexibility.
Super+e to open emacs, and then having emacs automatically sent/assigned to the tag/workspace titled "emacs"? Love it.
But my fav is having the "Menu" key bound to "open urxvt". Super convenient.
I can do all of that in i3 with a simple text editor.
It would be different if there was a lot of configuration to do, but simplicity is the whole point here.