I have been trying to setup a Fractal qube without much success. The stable flatpak on my Librem 5 (Byzantium) works without issue, and I was able to apply dark mode to it using this command:
sudo flatpak override org.gnome.Fractal --env=GTK_THEME=Adwaita-dark
However I’m having lots of problems when trying to configure a Fractal qube in QubesOS. While the beta has no issues loading images, the stable flatpak can’t load images at all.
But there are more important problems that I can’t solve which affect both stable and beta flatpaks and are present in minimal and standard qubes based on Debian-12:
-
After starting the app for the first time, I can login and verify the session, but not all rooms or messages decrypt, even after importing room keys (which I can only seem to do in Fractal-beta).
-
After starting the app for the first time, once I close the app, subsequent attempts to open the app will get stuck loading indefinitely, using around 95% CPU as it tries.
I have made scripts for creating the template and app qubes using Debian-12-minimal and have also swapped the minimal for standard Debian-12 with no noticeable difference.
Here are the scripts:
Template Qube creation script (Fractal-stable)
#!/bin/bash
SOURCE_TEMPLATE=debian-12-minimal
FRACTAL_TEMPLATE=deb-12-m-fractal
qvm-clone $SOURCE_TEMPLATE $FRACTAL_TEMPLATE
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'apt-get install --no-install-recommends dbus-user-session flatpak gnome-keyring libshumate-1.0-1 libsqlcipher0 nautilus pulseaudio-qubes qubes-core-agent-networking seahorse sqlite3 xdg-desktop-portal xdg-desktop-portal-gnome xdg-desktop-portal-gtk xfce4-notifyd -y'
sleep 3
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak install flathub org.gnome.Fractal -y'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'echo -e "Xft.dpi: 156" >> /etc/X11/Xresources/x11-common'
qvm-shutdown --wait $FRACTAL_TEMPLATE
Template Qube creation script (Fractal-beta)
#!/bin/bash
SOURCE_TEMPLATE=debian-12-minimal
FRACTAL_TEMPLATE=deb-12-m-fractal-b
qvm-clone $SOURCE_TEMPLATE $FRACTAL_TEMPLATE
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'apt-get install --no-install-recommends dbus-user-session flatpak gnome-keyring libshumate-1.0-1 libsqlcipher0 nautilus pulseaudio-qubes qubes-core-agent-networking seahorse sqlite3 xdg-desktop-portal xdg-desktop-portal-gnome xdg-desktop-portal-gtk xfce4-notifyd -y'
sleep 3
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak install flathub org.gnome.Platform/x86_64/46'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak remote-add --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'export all_proxy=http://127.0.0.1:8082; flatpak install flathub-beta org.gnome.Fractal -y'
qvm-run -u root --pass-io $FRACTAL_TEMPLATE 'echo -e "Xft.dpi: 156" >> /etc/X11/Xresources/x11-common'
qvm-shutdown --wait $FRACTAL_TEMPLATE
App Qube creation script (Fractal-stable)
#!/bin/bash
FRACTAL_TEMPLATE=deb-12-m-fractal
DISPOSABLE_FRACTAL_TEMPLATE=fractal
NETWORK_QUBE=sys-fw-whonix
qvm-create --class AppVM --template $FRACTAL_TEMPLATE --prop autostart=false --prop audiovm=sys-audio --prop netvm="" --prop template_for_dispvms=true --label purple $DISPOSABLE_FRACTAL_TEMPLATE
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE appmenus-dispvm 1
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE menu-items org.gnome.Fractal.desktop
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE menu-favorites org.gnome.Fractal
qvm-run --pass-io $DISPOSABLE_FRACTAL_TEMPLATE seahorse
qvm-shutdown --wait $DISPOSABLE_FRACTAL_TEMPLATE
qvm-prefs $DISPOSABLE_FRACTAL_TEMPLATE netvm $NETWORK_QUBE
App Qube creation script (Fractal-beta)
#!/bin/bash
FRACTAL_TEMPLATE=deb-12-m-fractal-b
DISPOSABLE_FRACTAL_TEMPLATE=fractal
NETWORK_QUBE=sys-fw-whonix
qvm-create --class AppVM --template $FRACTAL_TEMPLATE --prop autostart=false --prop audiovm=sys-audio --prop netvm="" --prop template_for_dispvms=true --label purple $DISPOSABLE_FRACTAL_TEMPLATE
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE appmenus-dispvm 1
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE menu-items org.gnome.Fractal.desktop
qvm-features $DISPOSABLE_FRACTAL_TEMPLATE menu-favorites org.gnome.Fractal
qvm-run --pass-io $DISPOSABLE_FRACTAL_TEMPLATE seahorse
qvm-shutdown --wait $DISPOSABLE_FRACTAL_TEMPLATE
qvm-prefs $DISPOSABLE_FRACTAL_TEMPLATE netvm $NETWORK_QUBE
Verbose startup command:
flatpak run -vv org.gnome.Fractal
Error (Fractal-stable)
libEGL warning: DRI2: failed to authenticate
MESA: error: ZINK: failed to choose pdev
libEGL warning: egl: failed to create dri2 screen
MESA: error: ZINK: failed to choose pdev
glx: failed to create drisw screen
2024-04-26T21:46:41.994643Z INFO fractal::application: Fractal (org.gnome.Fractal)
2024-04-26T21:46:41.994685Z INFO fractal::application: Version: 6 (stable)
2024-04-26T21:46:41.994693Z INFO fractal::application: Datadir: /app/share/fractal
2024-04-26T21:46:42.765473Z INFO fractal::session_list: Restoring previous session for user: @USERNAME:INSTANCE
2024-04-26T21:46:42.765516Z INFO fractal::session_list: Database path: /home/user/.var/app/org.gnome.Fractal/data/fractal/DIRECTORY
Error (Fractal-beta)
F: Running 'bwrap --args 38 -- fractal'
libEGL warning: DRI2: failed to authenticate
MESA: error: ZINK: failed to choose pdev
libEGL warning: egl: failed to create dri2 screen
MESA: error: ZINK: failed to choose pdev
glx: failed to create drisw screen
2024-04-27T16:47:16.904429Z INFO fractal::application: Fractal (org.gnome.Fractal)
2024-04-27T16:47:16.904661Z INFO fractal::application: Version: 7.rc (beta)
2024-04-27T16:47:16.904685Z INFO fractal::application: Datadir: /app/share/fractal
(fractal:2): Gtk-WARNING **: 11:47:16.982: Unable to acquire the address of the accessibility bus: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown. If you are attempting to run GTK without a11y support, GTK_A11Y should be set to 'none'.
2024-04-27T16:47:17.654899Z INFO fractal::session_list: Restoring previous session for user: @USERNAME:INSTANCE
2024-04-27T16:47:17.656456Z INFO fractal::session_list: Database path: /home/user/.var/app/org.gnome.Fractal/data/fractal-beta/1d332a68-faf6-4a4b-bc19-f5baae592e3f
2024-04-27T16:47:17.665191Z ERROR fractal::system_settings::linux: Could not access clock format system setting: Portal request failed: org.freedesktop.zbus.Error: No such interface âorg.freedesktop.portal.Settingsâ
I would greatly appreciate any help to troubleshoot this issue.
Thank you.