---
title: "suck less or suck more"
date: "30/05/2025"
---

I love [suckless software](https://suckless.org/) and the suckless philosophy. I've been using [dwm](https://dwm.suckless.org/), [st](https://st.suckless.org/), [dmenu](https://dwm.suckless.org/), and [slock](https://tools.suckless.org/slock/) for years. You can see my code [here](https://git.barrettruth.com).

Simplicity is always better and I love being able to understand why things are happening. It's fun, it's quirky, it's cool.

Except when it doesn't work.

After years of use, I've found that suckless software is not built to be compatible with other less-sucking software. It is not compatible with running 40 ROS nodes at a time, nor 3 Chrome instances with a plethora of tabs and jobs open. I've had my st terminal go blank and my dwm crash on me consistently.

Maybe this is the point. But I can't avoid [foxglove](https://wiki.ros.org/FoxgloveStudio), I can't avoid bloat to work for school and research-related projects. Most importantly, after spending half of my day patching st and having it crash on me, I don't feel like fixing it any longer. **Sadly, suck-ful software is here to stay and I don't have time to fight it right now.**

I've switched to [spectrwm](https://github.com/conformal/spectrwm) (essentially [this](https://github.com/conformal/spectrwm)) and [ghostty](https://ghostty.org/).

# update: goodbye xorg <span class="date">09/10/2025</span>

I am now sick of Xorg and their lack of per-monitor DPI scaling. The new stack is:

- window system protocol: [wayland](https://wayland.freedesktop.org/)
- compositor: [sway](https://swaywm.org/)
- dynamic menu: [rofi](https://github.com/davatorium/rofi)
- screen lock: [swaylock](https://github.com/swaywm/swaylock) triggered by [swayidle](https://github.com/swaywm/swayidle)
  - [its](https://github.com/swaywm/swaylock/issues/416) [pretty](https://github.com/swaywm/swayidle/issues/169) [bad](https://github.com/swaywm/swaylock/issues/306)
