summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2024-04-20 13:55:51 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2024-04-20 13:56:42 +0200
commita328fdb1daba98a7db5b6aeaf7649489620c1015 (patch)
tree49b7398ddb4ff1504a45cfdebb07c4ddd05bad75 /sys-apps
parentapp-office/libreoffice: drop 7.6.9999, no more packaging this branch (diff)
downloadgentoo-a328fdb1daba98a7db5b6aeaf7649489620c1015.tar.gz
gentoo-a328fdb1daba98a7db5b6aeaf7649489620c1015.tar.bz2
gentoo-a328fdb1daba98a7db5b6aeaf7649489620c1015.zip
sys-apps/xdg-desktop-portal: add 1.18.4
Closes: https://bugs.gentoo.org/930261 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/xdg-desktop-portal/Manifest1
-rw-r--r--sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild116
2 files changed, 117 insertions, 0 deletions
diff --git a/sys-apps/xdg-desktop-portal/Manifest b/sys-apps/xdg-desktop-portal/Manifest
index 6b87b19b4a24..c01e94c5744e 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.2.tar.xz 698912 BLAKE2B c8b0da07c094627c36b72b775367ec9081d7e710c0c29640afc239c2048e686611ae0ab941515337605c175ad63345e8ffdcd4982ad0997d5ca67fc31e289f89 SHA512 937fea3dfa0ab4b99146fbf5e4e42fdd94a22ab204f45395257c562e97803e71a777ca17faa5077205a1dd6b7d86291dfeed75922e311a61a402ebf4e05cfa19
DIST xdg-desktop-portal-1.18.3.tar.xz 699168 BLAKE2B 495deda38f20c384b80db25f11010a67ed9b26d8577e23e16221d54e9eb0edd5f4b1fac633e70eefc4bf1a689c0cdbbb5b524aff219c020e8ef227397eff4802 SHA512 aada58ac8ad5e15b509a3435b350f898b12e4638e09b1fd2f517e641e67991d5ae22ca32e0f2f0edfa902a4e1515a36b367b84040e95d27ef0b5b8092b768f55
+DIST xdg-desktop-portal-1.18.4.tar.xz 699380 BLAKE2B 969d9359744f26a931d5d86fbdac222b0d55f7942bb8b1ffba67343c88696dbb4c905b122363c5eae5dcac8b55f58d03433acbbca6f7594a16e72e13bc78353a SHA512 482676777e8180752e13ff485acab91de117f4ecf2aefd313a6f596df800f37d7004ee4ba1040009eb69a6efc780efc7dcd7e46b3f59c47bd9f21aef48d346de
diff --git a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild
new file mode 100644
index 000000000000..a7cd8de88db2
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-any-r1 systemd
+
+DESCRIPTION="Desktop integration portal"
+HOMEPAGE="https://flatpak.org/ 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"
+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.66: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 )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/dbus
+"
+BDEPEND="
+ dev-util/gdbus-codegen
+ dev-python/docutils
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ ${PYTHON_DEPS}
+ dev-libs/libportal
+ $(python_gen_any_dep '
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/python-dbusmock[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ # These tests require connections to pipewire, internet, /dev/fuse
+ "${FILESDIR}/${PN}-1.18.0-sandbox-disable-failing-tests.patch"
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+python_check_deps() {
+ python_has_version "dev-python/pytest[${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)
+ # Only used for tests
+ $(meson_feature test libportal)
+ $(meson_feature geolocation geoclue)
+ $(meson_use seccomp sandboxed-image-validation)
+ $(meson_feature systemd)
+ # Requires flatpak
+ -Ddocbook-docs=disabled
+ # -Dxmlto-flags=
+ -Ddatarootdir="${EPREFIX}/usr/share"
+ -Dman-pages=enabled
+ -Dinstalled-tests=false
+ $(meson_feature test pytest)
+ )
+
+ 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
+}
+
+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; 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"
+ fi
+}