xdg-desktop-portal backend for wlroots.
Currently it only implements the following portals only and is meant to offload the missing portals to other implementations depending on the user preferences.
- org.freedesktop.impl.portal.Screenshot
- org.freedesktop.impl.portal.ScreenCast
Other portals that can be used include gtk
for many implementations, gnome-keyring
for the Secret portal.
meson build
ninja -C build
ninja -C build install
Make sure XDG_CURRENT_DESKTOP
is set. Make sure WAYLAND_DISPLAY
and
XDG_CURRENT_DESKTOP
are imported into D-Bus. If you're running Sway, this
can be added to your config file:
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
When correctly installed, xdg-desktop-portal should automatically invoke xdg-desktop-portal-wlr when needed.
Recent changes to xdg-desktop-portal is requiring desktop environments to set up a *-portals.conf
configuration that specify which portals should be used for a given XDG_CURRENT_DESKTOP
value. If this file does not exists in /usr/share/xdg-desktop-portal/
, you should create it under ~/.config/xdg-desktop-portal/
with content like this:
[preferred]
default=gtk
org.freedesktop.impl.portal.Screenshot=wlr
org.freedesktop.impl.portal.ScreenCast=wlr
(you can specify the default portal to use for any implementation not explicitly defined, and you can add any portal you need for other specific interfaces like gnome-keyring for the Secret portal).
See man 5 xdg-desktop-portal-wlr
.
At the moment, some command line flags are available for development and testing. If you need to use one of these flags, you can start an instance of xdpw using the following command:
xdg-desktop-portal-wlr -r [OPTION...]
To list the available options, you can run xdg-desktop-portal-wlr --help
.
Check out or FAQ for answers to commonly asked questions.
Please see the screencast compatibility guide for more information on compatible applications and how to get them working.
If you have a question or problem that is not mentioned in those documents, please open an issue or come chat with us in #sway on Libera Chat.
If you're interested in testing or development, check out CONTRIBUTING.md for more information.
MIT