From 52205fe6637a3685f0933c389b53b9b1b0487d0952f3eff79c46968afc91ecfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Sat, 4 May 2024 02:02:41 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main xdg-desktop-portal revision b4c1f4786d6276c318f7b9a3a1ce221d --- .gitattributes | 23 ++ xdg-desktop-portal-1.16.0.tar.xz | 3 + xdg-desktop-portal.changes | 562 +++++++++++++++++++++++++++++++ xdg-desktop-portal.spec | 121 +++++++ 4 files changed, 709 insertions(+) create mode 100644 .gitattributes create mode 100644 xdg-desktop-portal-1.16.0.tar.xz create mode 100644 xdg-desktop-portal.changes create mode 100644 xdg-desktop-portal.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/xdg-desktop-portal-1.16.0.tar.xz b/xdg-desktop-portal-1.16.0.tar.xz new file mode 100644 index 0000000..6b35cb8 --- /dev/null +++ b/xdg-desktop-portal-1.16.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b41a5915c11851493d8c33b9783f147a0a6f419db80ad760e84cd3420fd8c19 +size 250524 diff --git a/xdg-desktop-portal.changes b/xdg-desktop-portal.changes new file mode 100644 index 0000000..5dbd070 --- /dev/null +++ b/xdg-desktop-portal.changes @@ -0,0 +1,562 @@ +------------------------------------------------------------------- +Tue Dec 13 08:23:42 UTC 2022 - Bjørn Lie + +- Update to version 1.16.0: + + Introduce a new background monitoring service. This allows + desktop environments to list applications that are running in + background, that is, sandboxed applications running without a + visible window. Desktop environments can display these + background running applications in their interfaces, and allow + users to control their execution. + + Introduce the Global Shortcuts portal. This portal allows + applications to register and receive keyboard shortcuts even + when they're not focused. This was a highly requested feature, + especially on Wayland desktops. There are improvements to come, + but portal backends can now implement this new portal. + + Various CI improvements. + + Updated translations. + +------------------------------------------------------------------- +Fri Aug 12 06:46:03 UTC 2022 - Dominique Leuenberger + +- Update to version 1.15.0: + + Add Meson build files. For now, both Autotools and Meson are + available in the source tree. + + Make the Screenshot portal request permission to take + screenshots. Frontends that implement the version 2 of + org.freedesktop.portal.impl.Screenshot portal can now be aware + that the screenshot permission was granted through the new + 'permission_store_checked' option, and skip any kind of dialog + when that is the case. + + Stop sending the app id quoted in the Background portal. + + Fix a bug in cgroup name parsing. + + Various fixes to the Realtime portal. + + Updated translations. + +------------------------------------------------------------------- +Thu Aug 4 17:07:11 UTC 2022 - Bjørn Lie + +- Update to version 1.14.6: + + realtime: + - Remap thread ids. + - Use correct types. + +------------------------------------------------------------------- +Thu Jul 21 13:19:00 UTC 2022 - Bjørn Lie + +- Update to version 1.14.5: + + realtime: Fix realtime: fix priority type in + MakeThreadHighPriority. + +------------------------------------------------------------------- +Thu May 5 17:34:21 UTC 2022 - Andreas Stieger + +- update to 1.14.4: + + fix regression introduced in 1.14.0 which caused invalid + autostart files to be generated + +------------------------------------------------------------------- +Sat Apr 16 18:16:20 UTC 2022 - Andreas Stieger + +- update to 1.14.3: + + remote-desktop: Fix a memory corruption that was causing + segfaults + +------------------------------------------------------------------- +Thu Mar 31 01:27:19 UTC 2022 - Luciano Santos + +- Update to version 1.14.2: + + Fix a frequent crash with WebKit processes. + + Fix a bug in parsing the app ID from the cgroup on KDE. + + Documentation improvements. + + Updated translations. + +------------------------------------------------------------------- +Wed Mar 30 10:25:00 UTC 2022 - Dominique Leuenberger + +- Update /usr/bin/fusermount requires to /usr/bin/fusermount3: the + code has been changed to call fusermount3 as part of version + 1.14.0: document-portal: Move to the libfuse3 API (boo#1197567). + +------------------------------------------------------------------- +Sat Mar 19 09:41:29 UTC 2022 - Bjørn Lie + +- Update to version 1.14.1: + + Fix an issue in 1.14.0 where xdg-desktop-portal.service + starting before graphical-session-pre.target would cause the + GNOME session to deadlock by moving code to a new libexec + binary which handles deleting or migrating .desktop files (and + icons) from the dynamic launcher portal for apps which have + been uninstalled or renamed. + + Fix some bugs in the aforementioned launcher migration + implementation, "xdg-desktop-portal-rewrite-launchers". + + Fix build without libsystemd. + +------------------------------------------------------------------- +Fri Mar 18 06:50:05 UTC 2022 - Antonio Larrosa + +- Update to version 1.14.0: + + Add a new "dynamic launcher" portal, which can install .desktop + files and accompanying icons after user confirmation. + + Rework handling of empty app IDs: In case an empty string app + ID is stored in the permission store, this permission is now + shared only by apps whose app ID couldn't be determined, rather + than all unsandboxed apps. + + Use libsystemd (when available) to try to determine the app ID + of unsandboxed processes. This is useful since some portals + otherwise can't be used by host apps. + + Make x-d-p start on session start, which is needed for the + dynamic launcher portal to handle rewriting launchers for apps + that have been renamed. + + Bring back the copy of Flatpak's icon-validator, which was + dropped many releases ago. + + Icon validation is now required for the notification and + dynamic launcher portals (previously it was only done if the + "flatpak-validate-icon" binary could be found). + + document-portal: Move to the libfuse3 API + + document-portal: Use renameat2 sys call + + document-portal: Use mutex to fix concurrency bug + + realtime: Fix error code paths + + realtime: Fix MakeThreadHighPriorityWithPID method + + screencast: Fix an error when restoring streams + + ci: Various improvements + + Documentation improvements + + Updated translations. +- Replace BuildRequires: pkgconfig(fuse) with pkgconfig(fuse3) + since document-portal moved to use it. +- Add BuildRequires: pkgconfig(libsystemd) and + pkgconfig(gdk-pixbuf-2.0) which are now used. + +------------------------------------------------------------------- +Sat Mar 5 00:21:38 UTC 2022 - Bjørn Lie + +- Pass --docdir=%%{_defaultdocdir}/%%{name}/ to configure, install + docs in standard distro docs dir, and move to devel sub-package, + as it is developer documentation. + +------------------------------------------------------------------- +Mon Jan 17 20:58:13 UTC 2022 - Andreas Stieger + +- update to version 1.12.1: + + Fix a crash in the device portal +- includes changes from 1.12.0: + + Place portals in the systemd session.slice + + settings: Add color-scheme key + + open-uri: Avoid a sync call to org.freedesktop.FileManager + + screncast: Allow restoring previous sessions + + Add a portal for requesting realtime permissions + + ci: Many improvements + + Publish the docs from a ci job + + Translation updates + +------------------------------------------------------------------- +Fri Oct 8 14:50:27 UTC 2021 - Bjørn Lie + +- Update to version 1.10.1: + + Revert a breaking change to the screencast and inhibit portal. + +------------------------------------------------------------------- +Sat Sep 18 08:53:02 UTC 2021 - Bjørn Lie + +- Update to version 1.10.0: + + Remap /run/flatpak/app, for Flatpak 1.11.x + + Remap /var/config and /var/data + + permission-store: Avoid a crash + + permissions-store: Add GetPermission + + screencast: Add 'virtual' source type + + openuri: Use real path for OpenDirectory + + location: Fix accuracy levels + + Add power profile monitor implementation + + Updated translations. + +------------------------------------------------------------------- +Thu May 6 13:47:00 UTC 2021 - Ferdinand Thiessen + +- Update to version 1.8.1: + * openuri: Fix an fd leak + * filechooser: Fix directory support + * documents: Add snap support + * wallpaper: Fix a crash + * Translation updates +- Drop unneeded fontconfig BuildRequires + +------------------------------------------------------------------- +Thu Jan 14 10:49:29 UTC 2021 - Frederic Crozat + +- Ensure systemd rpm macros are called at install/uninstall times + for systemd user services. +- Add BuildRequires on systemd-rpm-macros. + +------------------------------------------------------------------- +Thu Jan 7 20:11:15 UTC 2021 - Bjørn Lie + +- Update to version 1.8.0: + + openuri: + - Allow skipping the chooser for more URL tyles + - Robustness fixes + + filechooser: Return the current filter + + camera: + - Make the client node visible + - Don't leak pipewire proxy + + Fix file descriptor leaks + + Testsuite improvements + + Updated translations. +- Changes from version 1.7.2: + + document: + - Reduce the use of open fds + - Add more tests and fix issues they found + + Fix the build with musl. +- Changes from version 1.7.1: + + filechooser: + - Add a "directory" option + - Document the "writable" option + + document: Expose directories with their proper name +- Changes from version 1.7.0: + + testsuite improvements + + background: Avoid a segfault + + screencast: Require pipewire 0.3 + + document: + - Support exporting directories + - New fuse implementation + + Better support for snap and toolbox + + Updated translations. +- Drop patches fixed upstream: + + xdg-dp-port-pipewire-3-api.patch + + 0001-Fix-use-after-free-in-xdg_get_app_info_from_pid.patch + + 0002-add-AssumedAppArmorLabel-key-to-D-Bus-service-files.patch + + 0003-Fix-criticals-if-no-default-handler-for-desired-type.patch + +------------------------------------------------------------------- +Fri Aug 28 16:27:32 UTC 2020 - Dario Faggioli + +- Require /usr/bin/fusermount: xdg-document-portal calls out to the + binary. Without it, files or dirs can be selected, but + whatever is done with or in them, will not have any effect + (boo#1175899). + +------------------------------------------------------------------- +Tue Jul 7 10:33:27 UTC 2020 - Callum Farmer + +- Fixes for %_libexecdir changing to /usr/libexec + +------------------------------------------------------------------- +Mon Apr 6 11:49:59 UTC 2020 - Antonio Larrosa + +- Add patch from upstream to fix a use-after-free case: + * 0001-Fix-use-after-free-in-xdg_get_app_info_from_pid.patch + +- Add patch from upstream to add AssumedAppArmorLabel key to D-Bus + service files to allow sandboxed processes to activate the portal + services if the sandbox makes use of AppArmor D-Bus mediation + rules that depend on the service's security label: + * 0002-add-AssumedAppArmorLabel-key-to-D-Bus-service-files.patch + +- Add patch from upstream to fix a null pointer usage when no + default handler is set for desired type: + * 0003-Fix-criticals-if-no-default-handler-for-desired-type.patch + +------------------------------------------------------------------- +Fri Feb 21 13:17:51 UTC 2020 - Bjørn Lie + +- Add xdg-dp-port-pipewire-3-api.patch: Port to use new + pipewire-3.0 api. Following this, replace + pkgconfig(libpipewire-2.0) with pkgconfig(libpipewire-3.0) + BuildRequires. Also add libtool BuildRequires and pass autoreconf + as the patch touches the buildsystem. + +------------------------------------------------------------------- +Fri Jan 31 11:57:16 UTC 2020 - Antonio Larrosa + +- Set encoding before building to fix a build error in SLE. + +------------------------------------------------------------------- +Sat Jan 25 14:21:07 UTC 2020 - Dominique Leuenberger + +- No longer recommend -lang: supplements are in use + +------------------------------------------------------------------- +Fri Dec 20 23:44:36 UTC 2019 - Bjørn Lie + +- Update to version 1.6.0: + + tests: Adapt to libportal api changes. +- Changes from version 1.5.4: + + background: + - Add a signal to the impl api. + - Rewrite the monitoring to better track when apps disappear. + + permissions: Fix SetValue handling of GVariant wrapping. This + is an api change. + + openuri: + - Add a per-type always-ask option. + - Show the app chooser dialog less often. + + memorymonitor: A new portal to let apps receive low memory + warnings. + + filetransfer: A new portal to rewrite file paths between + sandboxes. +- Changes from version 1.5.3: + + Add more tests. + + location: Various fixes. + + document portal: Monitor fuse mount. + + openuri: + - Only ask 3 times to use the same app. + - Add an 'ask' option. + + Fix build from git. + + email: Allow multiple addresses, cc and bcc. + + filechooser: Allow saving multiple files. + + Update translations. +- Changes from version 1.5.2: + + Add many more tests, using libportal. + + gamemode: Add a pidfd-based api. + + inhibit: Send a Response signal. + + openuri: Add an OpenDirectory api. + + Updated translations. +- Changes from version 1.5.1: + + Add a portal for setting desktop backgrounds + + Add tests. + + Optionally use libportal (for tests). +- Changes from version 1.5.0: + + Add a secret portal that is meant be used via libsecret inside + the sandbox. One backend for this will live in gnome-keyring, + others are possible. + + Fix a file descriptor leak. + + Reduce log spam. + + Updated translations. +- Add pkgconfig(libportal) BuildRequires: New dependency. + +------------------------------------------------------------------- +Thu Jun 13 23:39:21 UTC 2019 - Bjørn Lie + +- Update to version 1.4.2: + + Build fixes. +- Changes from version 1.4.1: + + Build fixes. +- Changes from version 1.4.0: + + Add a background & autostart portal. + + Add a gamemode portal. + + Add a camera portal. + + Require pipewire 0.2.6. + + inhibit: Track session state. + + documents: Fix a ref-counting bug. + + screencast: + - Add cursor modes. + - Memory leak fixes. + + Updated translations. +- Add pkgconfig(json-glib-1.0) BuildRequires: New dependency. + +------------------------------------------------------------------- +Wed Apr 10 12:29:04 UTC 2019 - Dominique Leuenberger + +- BuildIgnore xdg-desktop-portal: self-requires is not needed here + to build. Flatkpak has a (correct) dependency on + xdg-desktop-portal, but since we don't run flatpak during build, + but merely require its -devel package, we can break up this + chain. + +------------------------------------------------------------------- +Wed Jan 30 17:06:04 UTC 2019 - bjorn.lie@gmail.com + +- Update to version 1.2.0: + + notification: + - Use icon validator from flatpak. + - Don't leave temp files around. + + email: Validate options better. + + inhibit: Validate options better. + + file chooser: Add support for setting the current filter. + + Updated translations. +- Changes from version 1.1.1: + + Validate icons in notifications. + + Respect lockdown settings. + + Write back permissions for notifications to indicate portal + use. + + Set st_nlink in the documents portal. + + Add infrastructure for validating options. + + Validate email addresses. + + Updated translations. +- Changes from version 1.1.0: + + Add a location portal, this requires geoclue 2.5.2. + + Add a settings portal, for desktop-wide settings like XSettings + or kdeglobals. + + Allow locking down printing, save-to-disk and opening uris. + + Monitor application changes in the open uri portal. + + Add more tests. + + Fix a crash when xdg-desktop-portal-gtk times out (boo#1118121, + gh#flatpak/xdg-desktop-portal#236). +- Add pkgconfig(fontconfig) and pkgconfig(flatpak) BuildRequires: + New dependencies. +- Add pkgconfig(libgeoclue-2.0) BuildRequires and pass + enable-geoclue to configure, build new optional location portal. + +------------------------------------------------------------------- +Wed Dec 19 21:50:14 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 1.0.3: + + Fix an option name in the remote desktop portal + + document-portal: Validate permissions and report errors + + Fix life-cycle issues with inodes in the document portal + + Improve the test coverage of the documents portal + + Add a 'coverage' make target +- Changes from version 1.0.2: + + networkmonitor: Fix several issues + + inhibit: Add session state monitoring +- Changes from version 1.0.1: + + networkmonitor: Add GetStatus and CanReach methods + + Unset GTK_USE_PORTAL + + Add a portal for moving files to the trash + + Fix an inode leak in the document portal +- Changes from version 1.0: + + screenshot: Add a color picker api + + screencast: Bump the pipewire dependency to 0.2.1 + + Improve --help output + + Small documentation improvements +- Changes from version 0.99: + + The NetworkMonitor portal API has been changed to allow access + control + + The Proxy and NetworkMonitor portals only respond to requests + from sandboxes with network access + + The flatpak portal is now documented +- Switch to tarball releases, upstream now releases stable + tarballs. +- Following the above, drop libtool BuildRequires and autogen.sh + macro call. +- Add pkgconfig(libpipewire-0.2) and pass --enable-pipewire to + configure, build screencast and screenshot support. + +------------------------------------------------------------------- +Tue Jun 26 10:08:20 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 0.11: + + OpenURI: + - Fix misleading warning when accessing the permission store + - Don't skip the dialog based on content type if a threshold is + set + + document-portal: + - Support non-O_PATH fds for adding existing files + - Only give DELETE right if you also get WRITE rights + - Make fd validation stricter wrt /proc/pid/fd symlink + - Rewrite paths in data + - Verify access right on fds + - Add some debug spew + + XdpAppInfo: Nicer handling of kind + + Add support for snap packages + + XdpAppInfo: Centralize handling of xdp_app_info_new_host () + + Broaden what are valid app ids to allow snap.$PKGNAME + + README: Fix docs link + + Don't register http: uris + + remote-desktop: Correct device type values + + utils: + - Generalize XdpAppInfo with a tagged union + - Clarify content of app_infos hash table + - Use more constants for interactions with the dbus-daemon + - Don't leak names whose ownership changed + + file-chooser: Handle save-file backend failure + + screen-cast: add missing sync request + + documents xml: Correct flag value for as-needed-by-app + + build: Run install-test-data-hook as intended + + Updated translations. + +------------------------------------------------------------------- +Mon Mar 5 15:15:29 UTC 2018 - fcrozat@suse.com + +- Remove BuildRequires(flatpak), it is not needed. +- Own /usr/share/dbus-1, /usr/share/dbus-1/{interfaces,services} + which were owned by flatpak package before. + +------------------------------------------------------------------- +Mon Feb 26 11:45:21 UTC 2018 - dimstar@opensuse.org + +- Use SPDX3.0 license tags and package COPYING as %license. + +------------------------------------------------------------------- +Mon Feb 26 11:42:58 UTC 2018 - dimstar@opensuse.org + +- Update to version 0.10: + + xdg-document-portal moved here from flatpak. + + Add a new screencast and remote desktop portal based on + PipeWire. +- Pass --disable-pipewire to configure: pipewire has not yet been + packaged for openSUSE. +- Add pgkconfig(fuse) BuildRequires: new dependency. + +------------------------------------------------------------------- +Tue Feb 06 18:55:25 UTC 2018 - dimstar@opensuse.org + +- Update to version 0.9: + + Install pkg-config files into datadir. + + Avoid a race in the portal APIs. + + Change the email portal to take fds. + + Updated translations. + +------------------------------------------------------------------- +Mon Jun 26 12:26:40 UTC 2017 - zaitor@opensuse.org + +- Update to version 0.8: + + Update po files. +- Changes from version 0.7: + + notification: Fix copy+paste error. + + notification: Subscribe to the right interface for signals. + + If the random request ID creates a collision, pick a new random + ID. + + Add some rationale. + + Fix a typo. + + Update README.md. + + OpenURI: Refuse to handle file: uris. + + Add an OpenFile method. + + OpenFile: Fix URI. + + Cache entire flatpak info file for peer, not just app id. + + Store the cached flatpak-info keyfile with the request. + + OpenFile: Rewrite app paths in /usr and /app (and /newroot). + + OpenFile: Ensure that passed O_PATH fd is correct. + + Send more data to the appchooser. + + Updated translations. +- Changes from version 0.6: + + Remove what appears to be printing lines from a debugging + session. + + open-uri: Fix segfault crash when no content-type can be + resolved. + + account: Remove debug spew. + + Update README.md. + + Add an email portal. + + Include the email portal in the docs. + + build: No need to clean org.freedesktop.portal.Desktop.service + twice. + + Add a systemd user unit corresponding to the session service. + + notifications: Add better debug and error messages. + + device: Add more detail to error messages. + + Handle g_variant_lookup failure. + + Encode po/Makevars in UTF-8. + + Initialize autofree string variable to NULL. + + open-uri: Implement a more permissive policy for the OpenURI + portal. + + data: Fix typo in NetworkMonitor XML definition. + + Updated translations. + +------------------------------------------------------------------- +Sun Jan 22 09:50:48 UTC 2017 - zaitor@opensuse.org + +- Update to version 0.5: + + notification: Support 'non-exported actions. + + Fix issues found in testing. + + Avoid a crash when removing notifications. + + Add an Account portal. + + Change the Account portal API. + + Update README.md. + + Add a version property to all portal interfaces. + + Fix a refcounting snafu. + + file chooser: + - Always grant write permissions for save dialogs. + - Fix reading the writable property. + + Simplify version support. + + Updated translations. + +------------------------------------------------------------------- +Wed Jan 11 01:51:56 UTC 2017 - zaitor@opensuse.org + +- Update to version 0.4: + + No longer rely on cgroups to find the app id. + + Fix handling of mime type filters in the file chooser portal. + + Updated translations. + +------------------------------------------------------------------- +Thu Nov 3 16:54:10 UTC 2016 - dimstar@opensuse.org + +- Initial package, version 0.3. + diff --git a/xdg-desktop-portal.spec b/xdg-desktop-portal.spec new file mode 100644 index 0000000..210dadc --- /dev/null +++ b/xdg-desktop-portal.spec @@ -0,0 +1,121 @@ +# +# spec file for package xdg-desktop-portal +# +# Copyright (c) 2022 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: xdg-desktop-portal +Version: 1.16.0 +Release: 0 +Summary: A portal frontend service for Flatpak +License: LGPL-2.1-or-later +Group: System/Libraries +URL: https://github.com/flatpak/xdg-desktop-portal +Source0: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz + +BuildRequires: libtool +BuildRequires: pkgconfig +BuildRequires: systemd-rpm-macros +BuildRequires: xmlto +BuildRequires: pkgconfig(flatpak) +BuildRequires: pkgconfig(fuse3) +BuildRequires: pkgconfig(gdk-pixbuf-2.0) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(libgeoclue-2.0) >= 2.5.2 +BuildRequires: pkgconfig(libpipewire-0.3) >= 0.2.90 +BuildRequires: pkgconfig(libportal) +BuildRequires: pkgconfig(libsystemd) +# Break cycle: we buildrequire flatpak, and flatpak has a requires on xdg-desktop-portal +#!BuildIgnore: xdg-desktop-portal +# xdg-dfesktop-portal calls out to fusermount3 (in $PATH) (boo#1197567) +# document-portal/document-portal-fuse.c: char *umount_argv[] = { "fusermount3", "-u", "-z", (char *) path, NULL }; +Requires: %{_bindir}/fusermount3 + +%description +A portal frontend service for Flatpak and possibly other desktop containment frameworks. + +xdg-desktop-portal works by exposing a series of D-Bus interfaces known as portals under +a well-known name (org.freedesktop.portal.Desktop) and object path (/org/freedesktop/portal/desktop). + +The portal interfaces include APIs for file access, opening URIs, printing and others. + +%package devel +Summary: A portal frontend service for Flatpak -- Development files +Group: Development/Languages/C and C++ +Requires: %{name} = %{version} + +%description devel +A portal frontend service for Flatpak and possibly other desktop containment frameworks. + +xdg-desktop-portal works by exposing a series of D-Bus interfaces known as portals under +a well-known name (org.freedesktop.portal.Desktop) and object path (/org/freedesktop/portal/desktop). + +This package contains convenience files for developers. + +%lang_package + +%prep +%autosetup -p1 + +%build +export LANG=C.UTF-8 +autoreconf -fiv +%configure \ + --enable-geoclue \ + --enable-pipewire \ + --docdir=%{_defaultdocdir}/%{name} \ + %{nil} +%make_build + +%install +export LANG=C.UTF-8 +%make_install +%find_lang %{name} %{?no_lang_C} + +%post +%systemd_user_post %{name}.service xdg-document-portal.service xdg-permission-store.service + +%preun +%systemd_user_preun %{name}.service xdg-document-portal.service xdg-permission-store.service + +%files +%license COPYING +%dir %{_datadir}/dbus-1 +%dir %{_datadir}/dbus-1/interfaces +%dir %{_datadir}/dbus-1/services +%{_datadir}/dbus-1/interfaces/*.xml +%{_datadir}/dbus-1/services/org.freedesktop.impl.portal.PermissionStore.service +%{_datadir}/dbus-1/services/org.freedesktop.portal.Desktop.service +%{_datadir}/dbus-1/services/org.freedesktop.portal.Documents.service +%{_libexecdir}/%{name} +%{_libexecdir}/xdg-desktop-portal-validate-icon +%{_libexecdir}/xdg-document-portal +%{_libexecdir}/xdg-permission-store +%{_libexecdir}/xdg-desktop-portal-rewrite-launchers +%{_userunitdir}/%{name}.service +%{_userunitdir}/xdg-document-portal.service +%{_userunitdir}/xdg-permission-store.service +%{_userunitdir}/xdg-desktop-portal-rewrite-launchers.service + +%files devel +%doc %{_defaultdocdir}/%{name}/ +%{_datadir}/pkgconfig/%{name}.pc + +%files lang -f %{name}.lang + +%changelog