Desktop evolution

arc
6 min readDec 27, 2015

--

Desktops. There’s a lot. And there’s a lot of factors that go into what makes a solid desktop. I’ve been ricing for around a year now, and here’s what I’ve learned over that year.

First rice. It was hell and I miserably hate it.

Before looking at the utter shit that this is, what did I do right here?

  • Nothing

That ended quickly.

Fast forward to a month later. I get sick of MATE, and a friend convinces me to try this “amazing” standalone window manager called i3.

Yes, this is horrible too. However, here I began learning the speed and efficiency of using a standalone window manager compared to a DE.

Eventually, I began actually ricing and tweaking my configs. This is one of the only one of my early rices which I can actually stand to some extent.

Yeah, it’s still pretty shit. :P

However, this is when I began favoring configuration files over graphical config tools. This began granting me more power to change applications, yet I didn’t use it (yet).

New laptop, fancy big screen. Back to a DE, as unfortunate as that is. However, at this point I began learning about how setups should follow a theme. I attempted to achieve consistency here. I largely failed, but I learned.

I needed more character than just BLUE AND BLACK EVERYWHERE, though.

I did have a GNOME 3 setup, and another i3 setup, but they were so horrible that I’m not going to put them here. Namely, the GNOME 3 setup was just stereotypical “Numix-And-Arc”, and the i3 setup was just me trying to get to a better setup.

Colorschemes, colorschemes, colorschemes.

Here, I learned about colorschemes, and how important they are when using CLI applications. This was especially important as I was slowly drifting away from GUIs and leaning more towards CLIs. Even the wallpaper’s colors were part of the colorscheme here. I wouldn’t try my hand at crafting a colorscheme until later.

I drifted away from i3 as I wanted more customization, more fine-grained control. I installed swm. swm was a nice start into wmutils.

This certainly was far from good. However, I began trying to perfect colorscheme consistency. Here, I failed, and you can also see my more heavy use of GUI applications (which would fade very quickly). I also loved swm’s extensibility and how far I could tweak it.

And here’s the first rice I’m actually proud of. Around here, I switched from Arch to Void, and began learning about how I could tweak things not just skin-deep (UI), but deeper into the system as well. Void’s package management was fantastic. I loved the ability to make easy-to-read templates, to have a far-easier way of application building, and so on. I also managed to finally make it look good.

I went from swm to pure wmutils. It took hours for initial setup, but in the end, I felt like I had my window manager, and my setup, not someone else’s. I also began developing a theme with each of my setups, which would become prevalent later.

This was also the birth of my first colorscheme, “nvo”. This was my first manually-created colorscheme, and it’ll probably be my last (more on this later on).

And it just kept going. I improved my shell-scripting skills and wrote a far better bar script, and attempted to create a theme that enveloped the whole desktop. I began preferring CLI applications full-time and avoided GUI applications. I learned vim and stopped using Sublime Text, and so on.

I continued playing with wmutils and attempted to stretch my scripting abilities. Most of these setups don’t have much more to them other than the workflow behind them. I also began tweaking the inner pieces of my setup.

Here I switched to CRUX as well. CRUX has some of the best package management I have ever used.

All good things must come to an end. I loved wmutils, but there were issues with some applications I used due to lack of ICCCM and EWMH compliance. Thus, I dropped wmutils and went to Openbox briefly.

Okay, first off, why is there a seperator here, of all places? The next setup looks just like the last!

Here, I began tweaking font rendering. I installed Infinality and fixed spacing issues and such. I’m a fan of bitmap fonts, but I also wanted to use better fonts in other places as well. I’m still on the quest for perfect font rendering, though.

There was also some crazy interactivity with the bars at this point. I removed it as I found myself not using it for any purpose, however it was quite nice.

I liked Openbox decently, but the fact that the config file was XML pissed me off. I prefer to have easily readable configs. I loved the extensibility of wmutils, so I began using herbstluftwm (which I will refer to as “HLWM” for the rest of this as it’s a long name which I can’t remember).

The big question is:

Where am I now?

I’ve improved. With my latest setup, I finally dropped my old colorscheme nvo and began generating colorschemes with urnn, which is a very nice tool if you don’t want to have to manually generate configs. I added just enough information to the bar, and left the rest to notifications. And best of all, it looks good.

--

--