Home News Projects/DOCS About Extra

Why suckless's software is, sucky

Suckless's software is a unique batch.
It is some of the most customizable, and hackable software out there for *Nix systems.
But, trying to customize it is stupid hard for people who don't code.
Even for people who know how to code in C, it's just inconvenient, and straight up harder to maintain.
But don't get me wrong, suckless, nor their software is 'bad'.
Once you get the hang of it, it's actually fun to use.
This is just my overall opinion when using it.
And don't let it change your overall mind about suckless themselves.

It makes a config less portable

When I used to use dwm, I never really changed my config much.
That was because it is inconvenient to even change just a simple value.
To add (or remove) a keybinding, you have to:

1: Go to your source directory
2: Edit your config.def.h (or your config.h)
3: compile, and install dwm (requires root access)
4: quit and startup dwm

This is inconvenient as you have to store a directory just somewhere in your home directory
instead of a stand alone config directory as a dotfile (or in .config).
I like to be organized with my home directory, specific directories for specific tasks.
It's just easier to have a config, as a dotfile.
Plus, all the libraries and stuff you have to install, to even use suckless software is just absurd.

Patching is the absolute worst

When configuring a suckless program (especially dwm)
it requires skill, devotion, and not making a small mistake and messing up your entire config.
Suckless devs did it this way to keep it's fan base elitist.
But, is it really worth it when the elitists get annoyed at the fact that they have to edit
individual lines of code to make alpha and systray to work together?
And when you make a mistake when patching something, and you don't know how to fix it.
Just delete your config and start all over again, even when you had a bunch of patches.
And once your done, you have to close your X session as well, like you didn't have to work
to even make your dwm config compile at all..

Status bar is hard to work with.

Something that is actually very nice that a lot of other window managers
don't do, is a status bar. Being able to see your workspaces, which one your on, window.
It's nice, in comparison to bspwm, and haskell.
Not having to install, and configure a separate bar is nice.
But, when you want to configure it, like adding a time/date widget..
It's hacky, requiring many shell scripts, and a main program to put them together.
And using it, sometimes even crashes your desktop, just out of the blue.
I went from dwmbar, to dwmblocks, to dwmblocks-async, and having 6 shell scripts in my
/usr/local/bin directory just for a status bar was just bad.


Using suckless software is really only nice when you want the absolute most minimal, and light
desktop imaginable. And I don't want to push people away from using suckless software.
I just want to give my opinion, and experience when using suckless's software.
I still use dmenu as it's so convenient in my current window manager (awesome).
In the end, use what ever you feel to be your favourite WM, fast or slow, minimal or complex.

DefectiveByDesign.org GPL-3 OSI