This time, is the time for monsterwm. Lately I use this minimalist wm, yes it’s a tiling wm, and figure something out. Monsterwm is awesome. It comes with pre-config. Much like dwm, you must config the wm before compile it so you can use it. I don’t really like the concept of pre-config wm at first. I think, such a pain in the ass. We must make, make install, then log out from X and relogin. But after using it for a while, I found this wm is pretty customizable.
What I want, is to make this clone of xmonad desktop using some other wm. For that, I will use monsterwm with some of its pre-configuration and make another desktop that resembles it.
Okay, let’s move to the documentation
First, you clone it using git. In this case, I’m using its branch ‘uselessgap’ so I can add a Gap between each window that stacked.
credit to c00kiemon5ter for making this awesome wm.
If you ls inside its directory, you can see there is config.def.h. Or usually just config.h. It’s okay. We will just proceed to the next step. Configuring monsterwm’s pre-config.
Edit config.h or config.def.h using your favorite editor. I’m using vim, just so you know. Inside, we will stumble upon many line of code, so I will skip some code, and just edit the ones that i need.
I define MOD1, MOD4, and MOD5 for altkey, superkey, and I already forgot what MOD5 means respectively. As you can see we can define anything in that header file. Underneath that code, we can find many keybindings configuration. So, I will leave that area in your preferences. I only change small parts for keybindings.
Aaaaand, we’re done. Just type make and then sudo make install in your terminal to make our ‘configed’ monsterwm on the run.
What now? If we try our monsterwm, it’s just a blank screen with some control of window. There will be no bar, no wallpaper, and no, I don’t like emptiness. So, the next step is to costumize the bar, the wallpaper, and the other complimentaries to make this wm okay to use.
For the top panel, I will use LemonBoy’s bar. It’s like dzen2, but with its own plus minus. You can use whatever panel you want. The configuration is pretty easy I think. There is no xft support on the LemonBoy’s bar, so if you want something that has xft support, you can use dzen2 or raedwulf’s version of bar with full xft support. Your choice.
Okay, we will begin.
First, monsterwm is not xmonad. So we must config it before start it. Means, we have to parse some of its output and change it. Confusing? I can’t tell you what actually I mean, so let’s just make some code. May the Code bless us with its understanding. I will make startup file to launch monsterwm and it’s complimentaries.
And the rest is to put the output of our parsing into bar. For now, I’m too lazy to explaining what in the name of hell is the meaning of this code. Maybe later when I’m not busy.
The code above will make the bar look like this.
Next, we will try to make statusbar beside the main bar. My purpose is to make something like the following screenshot. Including the wallpaper, terminal (which is rxvt-unicode), and the other complimentaries that running in the terminal. Here is the screenshot what it has to be if we continue tweaking.