commit:     d1d66db7e4b5577e12ae7b403691934c30588405
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri May 23 05:48:35 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May 23 05:48:47 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1d66db7

sys-apps/xdg-desktop-portal: add 1.20.3

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/xdg-desktop-portal/Manifest               |   1 +
 .../xdg-desktop-portal-1.20.3.ebuild               | 127 +++++++++++++++++++++
 2 files changed, 128 insertions(+)

diff --git a/sys-apps/xdg-desktop-portal/Manifest 
b/sys-apps/xdg-desktop-portal/Manifest
index 8d64fab345d3..f0d8ced3f440 100644
--- a/sys-apps/xdg-desktop-portal/Manifest
+++ b/sys-apps/xdg-desktop-portal/Manifest
@@ -1,2 +1,3 @@
 DIST xdg-desktop-portal-1.18.4.tar.xz 699380 BLAKE2B 
969d9359744f26a931d5d86fbdac222b0d55f7942bb8b1ffba67343c88696dbb4c905b122363c5eae5dcac8b55f58d03433acbbca6f7594a16e72e13bc78353a
 SHA512 
482676777e8180752e13ff485acab91de117f4ecf2aefd313a6f596df800f37d7004ee4ba1040009eb69a6efc780efc7dcd7e46b3f59c47bd9f21aef48d346de
 DIST xdg-desktop-portal-1.20.0.tar.xz 1162932 BLAKE2B 
0b6d4615df26a45359be70003f34205a965fb02875e42e613a8526328a304664c530daaaa27d666297726d5fd5cb6f1eb3415e81bae8e0479821078a0549862d
 SHA512 
aac38476b75a841ce12d7b4036830ef4ce3426914bcaf7ee2bb8a3a34e353089ed5c3521b06f7714d5ef8308d1af4e8297e583d363eba94263f3c062ced0063e
+DIST xdg-desktop-portal-1.20.3.tar.xz 1168028 BLAKE2B 
c2f65ad95916732051e42094a43353133fe628f3b32b1114f40052f8a16c226a847b1c6c40e7718c95c208402d1dcaba9a954e892ca9c8fa43f9738ea42a1a55
 SHA512 
e3da40bb102f7a391b062baa5517460b47e653f10412237aebb9d32b375db51bee3e365cabd5cb2d9059f2f52cfa5b7bf364555ee1ff892d97e61841ddbc870e

diff --git a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.20.3.ebuild 
b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.20.3.ebuild
new file mode 100644
index 000000000000..5f06d463fe1d
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.20.3.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit meson python-any-r1 systemd
+
+DESCRIPTION="Desktop integration portal"
+HOMEPAGE="https://flatpak.github.io/xdg-desktop-portal/ 
https://github.com/flatpak/xdg-desktop-portal";
+SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz";
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="geolocation flatpak seccomp systemd test udev"
+RESTRICT="!test? ( test )"
+# Upstream expect flatpak to be used w/ seccomp and flatpak needs bwrap anyway
+REQUIRED_USE="flatpak? ( seccomp )"
+
+DEPEND="
+       >=dev-libs/glib-2.72:2
+       dev-libs/json-glib
+       >=media-video/pipewire-0.3:=
+       >=sys-fs/fuse-3.10.0:3=[suid]
+       x11-libs/gdk-pixbuf
+       geolocation? ( >=app-misc/geoclue-2.5.3:2.0 )
+       flatpak? ( sys-apps/flatpak )
+       seccomp? ( sys-apps/bubblewrap )
+       systemd? ( sys-apps/systemd )
+       udev? ( dev-libs/libgudev )
+"
+RDEPEND="
+       ${DEPEND}
+       sys-apps/dbus
+"
+BDEPEND="
+       dev-util/gdbus-codegen
+       dev-python/docutils
+       sys-devel/gettext
+       virtual/pkgconfig
+       test? (
+               ${PYTHON_DEPS}
+               dev-util/umockdev
+               media-libs/gstreamer
+               media-libs/gst-plugins-good
+               $(python_gen_any_dep '
+                       >=dev-python/pytest-3[${PYTHON_USEDEP}]
+                       dev-python/pytest-xdist[${PYTHON_USEDEP}]
+                       dev-python/python-dbusmock[${PYTHON_USEDEP}]
+               ')
+       )
+"
+
+PATCHES=(
+       # Needed until gstreamer-rs (for gstreamer-pbutils) is packaged
+       "${FILESDIR}/${PN}-1.20.0-optional-gstreamer.patch"
+       # These tests require connections to pipewire, internet, /dev/fuse
+       "${FILESDIR}/${PN}-1.20.0-sandbox-disable-failing-tests.patch"
+)
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
+
+python_check_deps() {
+       python_has_version ">=dev-python/pytest-3[${PYTHON_USEDEP}]" &&
+       python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]" &&
+       python_has_version "dev-python/python-dbusmock[${PYTHON_USEDEP}]"
+}
+
+src_configure() {
+       local emesonargs=(
+               -Ddbus-service-dir="${EPREFIX}/usr/share/dbus-1/services"
+               -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)"
+               $(meson_feature flatpak flatpak-interfaces)
+               $(meson_feature geolocation geoclue)
+               $(meson_feature udev gudev)
+               $(meson_feature seccomp sandboxed-image-validation)
+               # Needs gstreamer-pbutils (part of gstreamer-rs)?
+               # Not yet packaged
+               #$(meson_feature seccomp sandboxed-sound-validation)
+               -Dsandboxed-sound-validation=disabled
+               $(meson_feature systemd)
+               # Requires flatpak
+               -Ddocumentation=disabled
+               # -Dxmlto-flags=
+               -Ddatarootdir="${EPREFIX}/usr/share"
+               -Dman-pages=enabled
+               -Dinstalled-tests=false
+               $(meson_feature test tests)
+       )
+
+       meson_src_configure
+}
+
+src_install() {
+       meson_src_install
+
+       # Install a default to avoid breakage: >=1.18.0 assumes that DEs/WMs
+       # will install their own, but we want some fallback in case they don't
+       # (so will probably keep this forever). DEs need time to catch up even
+       # if they will eventually provide one anyway. See bug #915356.
+       #
+       # TODO: Add some docs on wiki for users to add their own preference
+       # for minimalist WMs etc.
+       insinto /usr/share/xdg-desktop-portal
+       newins "${FILESDIR}"/default-portals.conf portals.conf
+       exeinto /etc/user/init.d
+       newexe "${FILESDIR}"/xdg-desktop-portal.initd xdg-desktop-portal
+}
+
+pkg_postinst() {
+       if ! has_version gui-libs/xdg-desktop-portal-lxqt && ! has_version 
gui-libs/xdg-desktop-portal-wlr && \
+               ! has_version kde-plasma/xdg-desktop-portal-kde && ! 
has_version sys-apps/xdg-desktop-portal-gnome && \
+               ! has_version sys-apps/xdg-desktop-portal-gtk && ! has_version 
sys-apps/xdg-desktop-portal-xapp; then
+               elog "${PN} is not usable without any of the following XDP"
+               elog "implementations installed:"
+               elog "  gui-libs/xdg-desktop-portal-lxqt"
+               elog "  gui-libs/xdg-desktop-portal-wlr"
+               elog "  kde-plasma/xdg-desktop-portal-kde"
+               elog "  sys-apps/xdg-desktop-portal-gnome"
+               elog "  sys-apps/xdg-desktop-portal-gtk"
+               elog "  sys-apps/xdg-desktop-portal-xapp"
+       fi
+}

Reply via email to