fejfighter/pgtk-emacs-flatpak

Flatpak doesn't read host's gsettings

Opened this issue · 5 comments

aport commented

When I use gsettings to change my system font (name, antialiasing, hinting etc) the emacs flatpak still uses the default settings, I think from the gnome runtime? Other flatpaks seem to honor these settings. Not sure which magic incantation is needed to pass this through.

gsettings get org.gnome.desktop.interface monospace-font-name and friends

aport commented

nevermind, I guess my other flatpaks aren't reading these settings either, and this is just plain broken in flatpak. Sorry for the noise!

I'm inclined to keep this open as a reminder to check the status of gsettings periodically.
I will have a play later today as it's possible that both flatpak apps are doing it incorrectly.

The docs do seem to be a little vague and imply that it should just work but that's seemingly not the case

I did get to have a look at this last night, but it got a bit late to write up where I got to.

effectively, the flatpak approach is to isolate every settings list in each app, which is useless for sourcing environment stuff like font.

I haven't been able to locate any decent documentation on what should be done, But I'll need to double check the pgtk code again

This is actually important if you do something like changing themes (light/dark) based on gsettings.

(if (string-match-p
     "dark"
     (shell-command-to-string "gsettings get org.gnome.desktop.interface color-scheme"))
    (load-theme 'modus-vivendi t)
  (load-theme 'modus-operandi t))
aport commented

light/dark theme preference could be retrieved through the desktop settings portal

(dbus-call-method :session
                  "org.freedesktop.portal.Desktop"
                  "/org/freedesktop/portal/desktop"
                  "org.freedesktop.portal.Settings"
                  "Read"
                  "org.freedesktop.appearance" "color-scheme")

1 is dark and 0 is light