Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/emersion/xdg-desktop-portal-wlr
xdg-desktop-portal backend for wlroots
https://github.com/emersion/xdg-desktop-portal-wlr
Last synced: 4 days ago
JSON representation
xdg-desktop-portal backend for wlroots
- Host: GitHub
- URL: https://github.com/emersion/xdg-desktop-portal-wlr
- Owner: emersion
- License: mit
- Created: 2018-12-12T10:46:19.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-22T13:56:08.000Z (8 months ago)
- Last Synced: 2025-01-01T01:03:18.211Z (11 days ago)
- Language: C
- Size: 248 KB
- Stars: 602
- Watchers: 29
- Forks: 61
- Open Issues: 56
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-flatpak - xdg-desktop-portal-wlr - for wlroots-based compositors like Sway (Portal / Backends)
README
# xdg-desktop-portal-wlr
[![builds.sr.ht status](https://builds.sr.ht/~emersion/xdg-desktop-portal-wlr/commits/master.svg)](https://builds.sr.ht/~emersion/xdg-desktop-portal-wlr/commits/master?)
[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.ScreenCastOther portals that can be used include `gtk` for many implementations, `gnome-keyring` for the Secret portal.
## Building
```sh
meson build
ninja -C build
```## Installing
### From Source
```sh
ninja -C build install
```### Distro Packages
[![Packaging status](https://repology.org/badge/vertical-allrepos/xdg-desktop-portal-wlr.svg)](https://repology.org/project/xdg-desktop-portal-wlr/versions)
## Running
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](https://www.bassi.io/articles/2023/05/29/configuring-portals/) 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:
```ini
[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).
### Configuration
See `man 5 xdg-desktop-portal-wlr`.
### Manual startup
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:```sh
xdg-desktop-portal-wlr -r [OPTION...]
```To list the available options, you can run `xdg-desktop-portal-wlr --help`.
## FAQ
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.## Contributing
If you're interested in testing or development, check out
[CONTRIBUTING.md] for more information.## License
MIT
[xdg-desktop-portal]: https://github.com/flatpak/xdg-desktop-portal
[FAQ]: https://github.com/emersion/xdg-desktop-portal-wlr/wiki/FAQ
[screencast compatibility]: https://github.com/emersion/xdg-desktop-portal-wlr/wiki/Screencast-Compatibility
[CONTRIBUTING.md]: CONTRIBUTING.md