linuxmint / xdg-desktop-portal-xapp

GNU Lesser General Public License v2.1
10 stars 8 forks source link

Background portal not working on XFCE #17

Closed ImDevinC closed 1 day ago

ImDevinC commented 1 month ago

I see background access was added in #15, but when running in XFCE and using EasyEffects, the app is not successfully able to run at startup, nor run in the background. The logs from systemctl --user status xdg-desktop-portal-xapp xdg-desktop-portal xdg-desktop-portal-gtk are below.

xdg-desktop-portal-gtk removed their background portal, which using something like DoorKnocker showed unavailable. But now that I've installed xdg-desktop-portal-xapp, the portal is available, but it just doesn't seem to work right. I installed from the Arch AUR, version 1.0.5-1.

Here's my ~/.config/xdg-desktop-portal/portals.conf as well

cat ~/.config/xdg-desktop-portal/portals.conf 
[preferred]
default=gtk
org.freedesktop.impl.portal.Background=xapp
systemctl --user  status xdg-desktop-portal-xapp xdg-desktop-portal xdg-desktop-portal-gtk             
● xdg-desktop-portal-xapp.service - Portal service (XApp implementation)
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal-xapp.service; static)
    Drop-In: /home/devin/.config/systemd/user/xdg-desktop-portal-xapp.service.d
             └─override.conf                                                                              
     Active: active (running) since Thu 2024-06-13 16:07:59 PDT; 6h ago
   Main PID: 1858 (xdg-desktop-por)
      Tasks: 5 (limit: 38395)                                                                             
     Memory: 3.0M (peak: 4.4M)
        CPU: 254ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/xdg-desktop-portal-xapp.service
             └─1858 /usr/lib/xdg-desktop-portal-xapp

Jun 13 16:07:59 archlinux systemd[826]: Starting Portal service (XApp implementation)...
Jun 13 16:07:59 archlinux systemd[826]: Started Portal service (XApp implementation).

● xdg-desktop-portal.service - Portal service
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal.service; static)
    Drop-In: /home/devin/.config/systemd/user/xdg-desktop-portal.service.d
             └─override.conf
     Active: active (running) since Thu 2024-06-13 16:07:59 PDT; 6h ago
   Main PID: 1844 (xdg-desktop-por)
      Tasks: 9 (limit: 38395)
     Memory: 6.2M (peak: 8.1M)
        CPU: 1min 9.198s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/xdg-desktop-portal.service
             └─1844 /usr/lib/xdg-desktop-portal

Jun 13 17:56:30 archlinux xdg-desktop-por[1844]: A backend call failed: Inhibiting other than idle not supported
Jun 13 18:00:45 archlinux xdg-desktop-por[1844]: A backend call failed: Inhibiting other than idle not supported
Jun 13 22:07:22 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:07:24 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:07:25 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:07:30 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:12:23 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:12:31 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:12:35 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop
Jun 13 22:12:44 archlinux xdg-desktop-por[1844]: EnableAutostart call failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.impl.porta
l.Background” on object at path /org/freedesktop/portal/desktop

● xdg-desktop-portal-gtk.service - Portal service (GTK/GNOME implementation)
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal-gtk.service; static)
     Active: active (running) since Thu 2024-06-13 16:07:59 PDT; 6h ago
   Main PID: 1849 (xdg-desktop-por)
      Tasks: 5 (limit: 38395)
     Memory: 4.5M (peak: 5.8M)
        CPU: 5.805s
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/xdg-desktop-portal-gtk.service
             └─1849 /usr/lib/xdg-desktop-portal-gtk

Jun 13 16:07:59 archlinux systemd[826]: Starting Portal service (GTK/GNOME implementation)...
Jun 13 16:07:59 archlinux systemd[826]: Started Portal service (GTK/GNOME implementation).

Thanks in advance!

mtwebster commented 1 month ago

This is disabled currently because I can't implement everything that's part of the portal spec without involvement from the xfce desktop itself - it's supported in Cinnamon because we could do it ourselves (https://github.com/linuxmint/cinnamon/commit/73015fd7272c773923cefbd7b53ec594600000b0).

I'll see what I can do - the autostart feature should work well enough in any desktop, I was just uncomfortable advertising this portal on a desktop that can't fully support it.

BMaxV commented 1 day ago

I think I ran into this problem, I created an issue /ticket in the xfce / gitlab tracker.

https://gitlab.xfce.org/xfce/xfce4-settings/-/issues/543

I'm willing to work on this problem, but I know nothing about it. So I would need some help/documentation to learn how to do it. I know some C and willing to work through whatever is needed, but I would appreciate some tips and hints to get started.

mtwebster commented 1 day ago

As of 1.0.7 enabling autostart/writing desktop files should work now on Xfce and mate as well as cinnamon.

ImDevinC commented 1 day ago

I can confirm this is working for me on XFCE. Thanks!