Wayland in 2023

Posted on May 26, 2023

I’ve been using Linux on the Desktop since probably around 1998. While i did try a few desktop environments (KDE, Gnome, GNUStep), i always came back to just using fvwm2 with a terminal (and netscape/mozilla/firefox).

However, Xorg is dying and so i’ve moved on to Wayland about 2 years ago, settling on swaywm with foot or/and Alacritty.

I never really liked the setup: While SwayWM felt quite okay on may laptop, i never liked it on my workstation and somehow ended up using wayfire which also always felt - ieks (just getting focus-follows-mouse working was a pain).

Also i never really liked foot which has been crashing on my a few times and some folks developing alacritty seem to be jerks.

Anyway, fast forward 2023, i finally got around to revisit my setup and ended up with a configuration i’m very happy with - at least so far :-)

Compositor: Labwc

I did like sway overall, but in the end i’m a stacking-window-manager person and with labwc, i’ve finally found one that i really like!

Labwc is:

  • Small and fast
  • Easy to configure shortcuts
  • Good ‘focus follows mouse’ support
  • Supports Virtual Desktops

My configuration can be found here.

Autostart

The autostart file configures which processes labwc should launch on startup. There is nothing too unusual in there other than starting pipewire and wireplumber and setting the backlight to 40%.

Environment

The environment file configures the, ehr.. environment labwc will setup :-)

Some noteworthy entries:

XCURSOR_THEME=Adwaita
XCURSOR_SIZE=32

GDK_DPI_SCALE=1.15
QT_FONT_DPI=118

This configures the cursor theme and size to use (XCURSOR_*) and increases the scaling of GDK/GTK and QT applications to not look too tiny on my 4k Monitor.

Note that one could also scale the desktip using wlr-randr but somehow fractional scaling didn’t work well and caused some fonts (in labwcs menu!) to become blurry. Never figured out why but since GDK_DPI_SCALE and QT_FONT_DPI work well, i never bothered enough to debug this.

Terminal: Wezterm

I love wezterm - how did it take me so long to find this piece of software?

It is highly configureable and just works (oh, and the author seems to be a very nice guy!).

My config is here

Status Bar: Yambar

Yambar is.. the best i found so far. I don’t love it (and hate its configuration syntax) but ‘it works’ well enough.

The config i’m currently using can be found here

Launcher: Fuzzel

Fuzzel is fast and no-nonsense. It works well out of the box but i adjusted some colors in my config

Screenshot

Screenshot