You are not logged in.

#1 2025-02-13 05:57:45

GeckoMaster
Member
Registered: 2025-02-06
Posts: 3

Fixing xdg-desktop-portal-gtk Issues for Brave & Chromium on ArchLinux

Brave and Chromium browsers fail to save or download files due to xdg-desktop-portal-gtk issues, often caused by a missing or broken portal service.

Solution:

We will remove xdg-desktop-portal-gtk, replace it with xdg-desktop-portal-xapp, and ensure browsers use the correct portal for file dialogs.

Step 1: Check Existing Portal Services

Run:

systemctl --user list-units --type=service | grep xdg-desktop-portal

If you see xdg-desktop-portal-gtk in a failed state, it's causing the issue.

Step 2: Remove xdg-desktop-portal-gtk

sudo pacman -Rns xdg-desktop-portal-gtk

This ensures the system no longer attempts to use GTK's implementation.

Step 3: Install xdg-desktop-portal-xapp

sudo pacman -S xdg-desktop-portal-xapp

This is the XApp (Cinnamon) implementation, which works better with Xfce and non-GNOME environments.

Step 4: Restart Portal Services

systemctl --user restart xdg-desktop-portal xdg-desktop-portal-xapp

Check if they are running correctly:

systemctl --user status xdg-desktop-portal xdg-desktop-portal-xapp

Both should show active (running).

Step 5: Restart Brave & Chromium with Correct Settings

Close all instances of Brave and Chromium:

pkill brave chromium

Now, start them using:

brave --enable-features=UseOzonePlatform --ozone-platform=wayland &
chromium --enable-features=UseOzonePlatform --ozone-platform=wayland &

If using Xorg, remove the --ozone-platform=wayland flag.

Step 6: Verify Portals Are Working

Check active portals:

xdg-desktop-portal --list

You should see xapp listed instead of gtk.

1️⃣ Set xdg-desktop-portal-xapp as the System-Wide Default

For a Single User

Create or edit this file:

mkdir -p ~/.config/environment.d
nano ~/.config/environment.d/xdg-desktop-portal.conf

Add the following line:

XDG_DESKTOP_PORTAL=xdg-desktop-portal-xapp

Save (Ctrl+X → Y → Enter) and apply:

systemctl --user restart xdg-desktop-portal xdg-desktop-portal-xapp

For All Users (System-Wide)

Edit or create:

sudo nano /etc/environment

Add:

XDG_DESKTOP_PORTAL=xdg-desktop-portal-xapp

Then reboot:

sudo reboot

2️⃣ Verify That xdg-desktop-portal-xapp is Active

Run:

systemctl --user status xdg-desktop-portal xdg-desktop-portal-xapp

You should see xdg-desktop-portal-xapp running and active.

Check the logs for any errors:

journalctl --user -b | grep xdg-desktop-portal

3️⃣ Test Browser & Apps Behavior

Restart your browser:

pkill brave chromium
brave &
chromium &

Try downloading a file. If the save dialog works fine, the change is successful.

If some apps break (e.g., missing file pickers in Flatpak apps), you may need to reinstall xdg-desktop-portal-gtk or use the XDG_CURRENT_DESKTOP=X-Generic appname workaround for individual apps.


"Great powers comes whit great responsibility"

Offline

#2 2025-02-13 08:26:42

seth
Member
Registered: 2012-09-03
Posts: 61,103

Re: Fixing xdg-desktop-portal-gtk Issues for Brave & Chromium on ArchLinux

So this is a PSA post that start's w/ an unspecific premise (some clients fail to save files, why? how?) and then instructs the intallation of the cinnamon-specific portal implementation. Specifically.
And ends with the caveat that this might break other clients…

https://wiki.archlinux.org/title/XDG_Desktop_Portal
If you want to use a specific portal implementaion, spoof XDG_CURRENT_DESKTOP
If there's any reference/documentaion reg. XDG_DESKTOP_PORTAL that'd belong into the wiki - I can't find that environment mentioned anywhere else on the internet.


What you really want to do (not using this shit-protocol at all aside) is to figure what the supposed issue w/ xdg-desktop-portal-gtk is and address that.

Offline

Board footer

Powered by FluxBB