A Phil Wayne’s Rice of Dwm

Before I begin, I would like to thank all my YouTube subscribers. We recently hit 100 and I feel flattered to already have so many people listening to my rambling. I would also like to thank every one of you reading this blog, since we are about to hit 200. None of this would be possible without you, so THANK YOU!

After several months of living in this window manager, I finally feel ready to present my dwm’s final configuration. If you are looking for something rather minimalist, with only a few applied patches, but yet that still has a pretty thrilling design, you should not be disappointed.

My Latest YouTube Video

In case you preferred this format, I also added the video to this post:

My Dwm configuration can be broken down into 3 main key components:

  1. Dwm: Dynamic Window Manager
  2. St: The Simple Terminal
  3. Slstatus: Suckless Status

Here is a list of the patches which I applied for Dwm:

  1. Dwm-alpha
  2. Centered-window-name
  3. Color-bar
  4. Iscentered

I used to have a lot more, which you could notice if you had the curiosity to look into my patches/ directory. It is full of unapplied patches, essentially. Patches which I applied and then removed because I was not happy with the result.

As for my St config, only has 2 patches:

  1. Transparency
  2. Scrolling: Press [Shift + PgUp] or [Shift + PgDown]

I am currently not using St. I recently installed Alacritty to test it out, along with another window manager which I will reveal at the end of this article.

Finally, here is how I configured Slstatus:

  1. I installed font-awesome for all icons to display as expected.
  2. I got an item to look over my first battery (bat0) and my second battery (bat1). In case I would not be paying attention to the power level displayed in the bar, I also set up a cron job which checks for me every 1 minute whether my battery level is higher than 15%. If not, it warns me that I should plug my computer to a power source. Needless to say, I won’t get any alert if my bash script running in the background notices that my computer already is plugged in. Do feel free to check out this script, by the way. You can find it in Dotfiles/.local/scripts/batteryinfo.
  3. I have 4 more items: one which checks the sound level; one for CPU usage; one for RAM usage; and finally one which gives me the current time and date. It is all rather convienent but it remains the bare minimum one could ask, I would say.

Keybindings [mod = super key]:

Most of my keybindings will remind you of my Qtile config, for those of you who remember that video. Click on this link, if you have not seen it.

​Custom bindings:

  • Super + v: vifm
  • Super + p: alacritty mocp -T /usr/share/moc/themes/yellow_red_theme
  • Super + t: thunderbird-bin
  • Super + b: brave-bin
  • Super + d: dmenu
  • Super + a: anki
  • Super + n: st -e newsboat -r
  • Super + s: pavucontrol
  • Super + o: libreoffice
  • Super + c: calcurse
  • Super + g: game launcher script
  • Super + u: usb mounter script
  • Super + z: zeal

​System bindings:

  • Super + w: close a window
  • Super + Enter: open a window
  • Super + Control + Q: Quit dwm
  • Super + [number]: Switch workspace
  • Super + shift + [number]: move a window to another workspace
  • Super h/j/k/l: move from one window to another

​Mode bindings:

  • Super + shift + o: floating center mode
  • Super + shift + u: awesome mode
  • Super + shift + t: tile mode
  • Super + shift + m: monocle mode
  • Super + shift + f: floating mode
  • Super + shift + b: the bar disappears
  • Super + shift + space: locks screen
  • Super + shift + s: scrot (take a screenshot)

Function keys:

As any Windows system, I set up my dwm to respond to function keys. This way, I can manage the sound level and the brightness of my screen with the function key and then F1 (mute), F2 (lower volume), F3 (increase volume) and finally F5 and F6 to respectively decrease and increase the brightness of my screen.

A Refreshing Sign-Off?

As promised, let me tell you which window manager I have recently been exploring: Awesome WM! Something much bloater than what I usually deal with, right?! Anyway, if you wish to have a look at my dwm configuration, you may find a link to my GitHub on my about page. Since you have been patient to read until the end, I will also reveal something to you: I rarely use St anymore. The terminal emulator I have replaced it with is Alacritty. Not because it is written in Rust, calm your enthusiasm!