This Guide Now Works for AwesomeWM AND i3WM + fedora-40-minimal

Guide:

  1. Start completely fresh with new sys-gui and clean fedora-40-minimal template. (Delete old and reinstall with salt formula.)

  2. In sys-gui template ("fedora-40-minimal" if unmodified), install necessary packages and shutdown template:

  3. GUIVM packages: gui-templ# dnf install qubes-manager qubes-linux-desktop-manager qubes-vm-guivm lightdm-gtk dummy-psu-receiver dummy-psu-module dummy-vm-backlight
  4. AwesomeWM: gui-templ# dnf install awesome

  5. Switch sys-gui template to the one just created and start sys-gui.

  6. In sys-gui, open a Xen console, login as user. In sys-gui terminal execute: sys-gui$ echo "exec awesome" | tee ~/.xinitrc 1> /dev/null sys-gui$ XSESSION=awesome sys-gui$ mkdir ~/.config/awesome/ && sudo cp /etc/xdg/awesome/rc.lua .config/awesome/ (The above command is unnecessary, but it moves the Awesome config to user dir to avoid errors from editing it should you do so. I personally consider it a part of correctly configuring Awesome, but it will run fine without.)

  7. In dom0 terminal, execute: dom0$ qubes-prefs default_guivm sys-gui

  8. Restart QubesOS and select GUIVM session in display manager menu.

Notes and Current Issues

[details="Summary:"]

As of this moment, there are still minor problems that persist: - sys-gui is labeled as dom0 in the window manager, - there is a several seconds' wait with a black screen while the window manager loads, and - notifications for sys-gui are sent to dom0 (this is an upstream problem that cannot be fixed with just configuration).

I plan to expand this to be OS independent, but right now Debian is posing some problems that I need to diagnose. It will be more of a priority for me if this gets likes and constructive replies; however, my schedule is unpredictable and I may have to shelf this if things come up.

[/details]