labwc- A journal, a tutorial?

8 Dec 2023- Original Rough DRAFT
9 Dec 2023- Revision 1 of the Draft
11 Dec 2023 – Revision 2 of the Draft

This is a work-in-progress (updates will occur, as I remember to write them). Be AWARE, labwc is fragile. It breaks quite seriously and without much warning and few error detection assists (that I can find or understand) are provided. Use it at your own Risk.

None of this is to say that you should avoid trying to make labwc function, please do; such is the opensource community. Without us, no one will know what ‘needs doing’. By all means jump in and help find the problem areas. Now… on with the show.

There are two pretty ‘straight forward’ method for installing labwc on Debian (sid). I am only testing on sid; thus, you may need to run the meson install method if you are on Debian Stable or some other distro altogether.. Here is a link to the labwc Github page for Build & Install instructions/ guidance. If you are using Debian Sid, here’s a link to the Debian labwc package page. I personally use the following from my terminal (foot) on my SwayWM desktop.

sudo apt install labwc

Next you should make certain that you have the appropriate labwc config files. These seem to mirror those from Openbox. Instructions on how-to get these setup are available from Github. Further clarification and explanation is available on the “Getting Started” page. Reading the aforementioned page provides invaluable insight(s).

Either of the Debian based options work quite smoothly. After you have the Config setup (in basic form) I recommend you reboot. Once your reboot is complete and you login, you even get something akin to a Desktop. Pretty skinny, granted. But it is a good point to build from.

Next, you can begin playing with your favorite Openbox config and try deploying them on labwc. I do this in a step-wise fashion. Below is a current screenshot.

Themes especially for stacking window manager style Desktops are nice to have. Here is a recommended collection. To review and learn about all labwc theme options, see labwc-theme(5) or the themerc example file. Caveat: I have NOT tried using all these themes.

Now for a treasure trove of pre-built themes:

No matter the theme(s) you choose, place them in ~/.local/share/themes/

On Github, johanmalm provides a listing of suggested apps for use with labwc. I have annotated his list with the tools I use (my choice of tool(s) appears in parens.):

Additional tools I use include:

  • file manager: thunar (for root functions I use sudo -E thunar )
  • email: (Thunderbird)
  • software: ( I use synaptic called from terminal via sudo -E synaptic or nala/ apt used normally)
  • browser(s): (Firefox, Microsoft-Edge-Beta)
  • terminal: ( foot )
  • wallpaper changer: ( setwall )
  • I have changed from wofi to a rofi-wayland fork (which runs on both x11 and Wayland), “almost” accurately. Where it has difficulty is in showing all active Wayland/ Xwayland running applications under to command rofi -show window. It is better than nothing (since wofi doesn’t work at this task either), but not by much.

Sad (troublesome) items

Here are some features that are not yet ready and these omissions may make your move from Openbox disappointing. They make mine difficult.

  • Debugging Problems. I find it very difficult to debug errors. When errors occur they are often catastrophic and debug tools are not obvious, to me.
  • Workspaces. They simply are not handled in the same manner as they are on Sway nor do they function like they did using ewmh on Openbox. Here’s the thread highlighting the issue. More posts are available on the web, should you need them. I have found what might eventually be a useful tool, sfwbar. Perhaps, you can make it work better than I am able.
  • Keybinding tools sxhkd/swhkd. Neither seems to be described anywhere I have looked. Thus defining keybindings is a unique and time consuming event, manually needing to built and codified in rc.xml.
  • It is probably worth noting that keybindings are, also, different from Openbox, albeit only slightly.

A word of Caution (because I have now been caught twice unprepared): Be extremely cautious of any updates you might make. Be absolutely certain you are able to roll back to a previous state. Even little (tiny) mistakes can be a cause for a complete rebuild.

More to come as I progress and gather my notes…

Contact me directly with ideas, questions, comments.

Remember, like with all of my work, I am able to provide the following assurance(s):
  • It is almost certainly going to work until it breaks; although I have to admit it may never work and that would be sad.
  • When/if it does break, you may keep all of the pieces.
  • If you find my materials helpful, both you & I will be happy, at least for a little while.
  • My advice is worth every penny you paid for it!