💾 Archived View for gem.hack.org › mc › log › compositors.gmi captured on 2022-07-16 at 13:30:44. Gemini links have been rewritten to link to archived content

View Raw

More Information

➡️ Next capture (2023-04-19)

-=-=-=-=-=-=-

Wayland compositors

Since I ditched X11 I have lived with the Sway Wayland compositor. It's nice but, as I wrote earlier, I miss the simpler, minimalist dwm window manager, especially when I'm on a tiny laptop screen. I have investigated some Wayland options to dwm:

https://github.com/djpohly/dwl

https://github.com/inclement/vivarium

https://github.com/riverwm/river

I've patched dwl some but later found out that most of my changes had also been done by someone else here:

https://github.com/djpohly/dwl/wiki/Patches

Check out the smartborders, pertag and autostart patches. Should have known that a project like this would follow the dwm patch collection tradition as well.

dwl still can't handle screen locking, though.

vivarium is also a dwm-like but perhaps even more from the xmonad family but without the Haskell. It's an impressive piece of work and very lightweight. It's a bit under-documented, though. I need to experiment more with it. I'm a bit confused about how it handles multiple monitors and I can't seem to figure out how to configure keyboard delay and repeat. Is this really the only way?

diff --git a/src/viv_seat.c b/src/viv_seat.c
index 82f109c..69f754b 100644
--- a/src/viv_seat.c
+++ b/src/viv_seat.c
@@ -126,7 +126,7 @@ void viv_seat_create_new_keyboard(struct viv_seat *seat, struct wlr_input_device
     wlr_keyboard_set_keymap(device->keyboard, keymap);
     xkb_keymap_unref(keymap);
        xkb_context_unref(context);
-       wlr_keyboard_set_repeat_info(device->keyboard, 25, 600);
+       wlr_keyboard_set_repeat_info(device->keyboard, 40, 240);

     // Handle events from the wlr_keyboard
        keyboard->modifiers.notify = keyboard_handle_modifiers;

With all of these compositors Firefox (and GTK Emacs) unfortunately draws a fat title bar because GTK uses an obsolete protocol for controlling CSD that none of these compositors support. One way around it is to right click on the Firefox toolbar, click on "Customize Toolbar..." then uncheck "Title Bar". I'm still using a terminal Emacs so I don't have the same problem there.

What I ended up with:

- Compositor: river with rivercarro layout engine (for Monocle).

- Terminal: foot.

- Screen locking: swayidle + swaylock.

- Status bar: yambar (with -Dbackend-x11=disabled, of course) but I'm considering using only river-tag-overlay instead of a status bar.

- Launcher and generic input: bemenu.

Recent screenshot

I've also looked into the stacktile layout engine which I really think is neat, but I would like to have Monocle mode as well. I'll see if I can add that.

Funny thing, if you search for "riverwm" you might end up at "River wealth management", which is something else entirely.

rivercarro layout engine

stacktile layout engine

river-tag-overlay

waylock, simpler screen locking using ext-session-lock-v1.

yambar status bar

foot terminal

mc,

Pungenday, the 2 day of Confusion in the YOLD 3188 (2022-05-28)

mc

mc's gemlog