I have switched from tiling window managers back to XFCE4 and I am happy

For the last year I have undertaken the effort for migrating my personal computing activities from a vanilla debian running on my dell xps laptop to a QubesOS running, coreboot’ed, Thinkpad X220.

My main concerns back then were:

  1. The alien and “all-seeing” BIOS chip containing Intel ME
  2. Having all my programs sharing the same root, home directories and all of them having access to all other directories in my home folder (simplifying the situation by ignoring possible AppArmor and SELinux mandatory access control schemes for the moment)

Now, the Coreboot-able laptop list is quite small and limited. Basically no laptops that came after thinkpad x230/t430 are not available for the coreboot mod (again, ignoring System76 laptops that apparently come with coreboot while employing a modern CPU—their machines aren’t accessible for me).

And since the second hand thinkpad x220 I found locally is quite limited in its CPU specs, I figured I should be learn how to use linux—and QubesOS in particular—in as lightweight a manner as possible.

Thus I have learned how to use i3wm and used my existing debian computer with i3wm.

Then I have installed i3wm to my QubesOS. I have even gone as far as compiling my own custom QubesOS iso, which I have followed the guide for, here: Advanced Qubes Installation (light installer / 4Kn Debian Template / Detached header / Encrypted Boot / Dom0 & DispVM in tmpfs) - #9 by 51lieal

Now, the i3wm out the box has some problems running with QubesOS. The first and the most visible one are the visual artefacts, glitches that you have on your screen with it. So, there exists a “fix” for that (easily available for reach if one searches in this forum). However, with that fix, there comes, apparently, other issues. I was constantly having total system freezes which were turning my ThinkpadX220 running QubesOS into a brick, and I was having to hard-reset the machine.

Other issues with using in QubesOS i3wm are inconsistent behavior of the networking and sys-whonix widgets. They keep dislocating themselves from the system tray, and sometimes completely disappear, if one reloads the i3wm config file.

Seriously, one can check my posting history under this forum constantly reporting/moaning about such issues under i3wm.

So, seeing these issues with i3wm, I considered other window manager support for QubesOS: I saw dwm and awesomewm support.

Then, I began the whole ordeal of teaching myself using dwm. It was quite lightweight but the task of constantly changing the config.h file and recompiling/reloading it to the window manager under QubesOS is just something I don’t have much time/patience for.

From dwm, I switched to using awesomewm. And for a month, I taught myself how to use it on my debian laptop first, and how to modify it config file to my liking, which is written in Lua language.

I need to stress, these window managers, i3wm, dwm, and awesomewm, while lightweight, are NOT fully fledged desktop environments, so, one has to “patch-in” the usual and expected stuff about sound widgets, battery widget, etc. etc. Which for me, turned out to be a masochistic undertaking. The whole experience for me was a mess with broken widgets, broken config files, inconsistent themes/behaviors of the windows/apps around the qubes.

Not to mention the whole “total system freezes” I was constantly having.

Then, two weeks ago, I have did a total reinstall of QubesOS, and when I booted into the vanilla version, all of a sudden, it looked good, it was consistent in its desktop environment experience, and it was lightweight! I mean, the whole reason for me to switch to i3wm, dwm, and awesomewm were mainly using as little system resources as possible (so that my app qubes would have as much resources to themselves as possible), and there it was, XFCE4 using quite a comparable amount of RAM out of the box as the i3wm!

Now, adding to that the fact that QubesOS looks the “best” with XFCE4 and all its widgets work out the boxt without me fiddling with the config file, were really a breath of fresh air for me.

So, there it is: I am back in XFCE4 after going through the phases of i3wm > dwm > awesomewm, closing loop.

I can say that I learned a lot about desktop environments and window managers throughout this journey, and I do not feel remorse. But writing this as a “headsup” to the future QubesOS users, who are new to QubesOS and window managers in general: you are probably going to end up using XFCE4 with QubesOS in the end!

9 Likes

Glitch, Freeze, etc likely depends on the hardware. Having no problem using i3 until now. Nice share!

2 Likes

Thanks for this invaluable headsup not only for Qubes novices.
And especially for Qubes/Linux novices, like I am (was, whichever), combining Xfce4 with this and whisker menu makes Qubes OS experience perfectly comfortable in my humble opinion.

1 Like

Yeah, it turns out XFCE4 also has some capability of “replicating” tiling window managers, too. For example one can setup keybindings for

  • putting a window to fullscreen, default size, move to the left/right of the screen
  • move around and resize the selected window using the keyboard

One can also put a keybinding for spawning Application Finder, which really does well mimicking the dmenu, and spawn programs inside qubes/disposables with keyboard.

I am satisfied that I am able to replicate most of my keyboard navigation workflow that I grew accustomed to when I was using i3wm/awesomewm, on XFCE4 too.

2 Likes

Good point. I only use i3wm in a very basic way. Move containers left and right. Maybe stack. But rarely any tiling! I just use tabbed mode with a bunch of windows and a few workspaces. That gets confusing quickly. Also I dont have glitching after using the well known fix, but the qube i use the most mysteriously crashes once or twice a day. It’s annoying to restart my workflow and I don’t feel like looking at logs to troubleshoot.

Someone did a test of how many resources different desktops use

2022 Linux Desktop Environments System Usage (Gnome, KDE, XFCE, LXQT, Cinnamon, Mate) under Fedora 37

It’s not a complete list, but XFCE doesn’t seem to use a lot of resources.

1 Like

I need to stress, these window managers, i3wm, dwm, and awesomewm, while lightweight, are NOT fully fledged desktop environments, so, one has to “patch-in” the usual and expected stuff about sound widgets, battery widget, etc. etc.

That may be the experience on a non-Qubes distribution but I found the Qubes defaults for awesome to be extremely noob friendly. After installing awesome (after installing the default Qubes iso), most widgets like battery, network, sound, are in the panel by default so no need for extra configuration. One could even use xfce and set awesome or i3 as their window manager to reap the benefits of the xfce panel and widgets alongside the benefits of dynamic tiling.

Which for me, turned out to be a masochistic undertaking.

dwm is the pinnacle of masochism in my opinion. Can’t imagine having to recompile every time the config is changed :crazy_face:. I found awesome to have sane defaults with similar tiling layout to dwm, and i3 to have ok defaults.

1 Like

It is definitely more noob friendly than dwm, for example, but then again, with awesomewm, you won’t have some usual amenities such as volume manager—and one will have to either code a lua script for it, or copy some ready-made one they get from online.

It is many such things that add on top of each other, with awesomewm. In order to get a coherent, functional setup going, one really has to mess around with the default.lua file (or whatever its config file was). This demands time, attention, and investment into learning basic lua scripting.

I thought the volume widget was there by default after installing awesome, but you’re right it’s not there. I usually pull up pavucontrol on desktop or use the volume keys on laptop.

I don’t know how to write lua, but I’m comfortable editing the config files. If your goal is ease of use with out of the box settings and lightweight, then xfce is a fine choice. If you ever want to add in a tiling window manager, while keeping all of your xfce panels and widgets, it’s fairly straightforward. Here’s a video if you’re interested: Use Awesome WM with XFCE - YouTube

xfce is certainly a decent choice. However, except for a passing mention, no one has mentioned KDE yet. I’d say the menu on KDE is the best one out there; fully customizable through an editor. I’m able to group VMs by their role in my setup, not just by class.

https://wiki.xfce.org/howto/customize-menu

1 Like

Yes, i3 setup has a middling or easy difficulty if you keep customization simple… My biggest concern was battery consumption from i3 bar command refreshes but I put a battery threshold on my thinkpad anyway, so I charge often.

Relevant comment. I know that tanky0u has already replied to it but perhaps others haven’t seen it yet.

Emphasis on SOME people having problems with the intel fix for tearing. taradiddles, the one who wrote this comment, has made some suggestions like installing a compositing manager with this default “fb” driver.

Some more explanation. It’s especially interesting that removing xfce’s compositor led to similar crashes as i3 users experience with the intel fix:

2 Likes

If you want just a little more tiling functionality for XFCE4 then look for tiling helpers.
Personally, I’m pretty happy with the dynamic tiler xpytile.

2 Likes

I’ll try it out, thanks, it seems promising. Welcome to the forum!

As an update, I am indeed happy with switching to XFCE with some keyboard shortcuts. No browser freezes anymore.

1 Like