summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-12-20 10:02:48 +0000
committerSam James <sam@gentoo.org>2023-12-20 10:03:28 +0000
commit9bd2a1aad27a3fc93543ae37a2bb2f1a7dc8867e (patch)
tree848438a8072d76f9544998c3abb77b480d445fd5 /gui-libs/xdg-desktop-portal-wlr
parentgui-libs/xdg-desktop-portal-wlr: fix src_install for live (diff)
downloadgentoo-9bd2a1aad27a3fc93543ae37a2bb2f1a7dc8867e.tar.gz
gentoo-9bd2a1aad27a3fc93543ae37a2bb2f1a7dc8867e.tar.bz2
gentoo-9bd2a1aad27a3fc93543ae37a2bb2f1a7dc8867e.zip
gui-libs/xdg-desktop-portal-wlr: add portal config file to 0.7.0-r1
Not just live. Bug: https://bugs.gentoo.org/915702 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'gui-libs/xdg-desktop-portal-wlr')
-rw-r--r--gui-libs/xdg-desktop-portal-wlr/files/xdg-desktop-portal-wlr-0.7.0-portal-config.patch32
-rw-r--r--gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-0.7.0-r1.ebuild69
-rw-r--r--gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-9999.ebuild1
3 files changed, 102 insertions, 0 deletions
diff --git a/gui-libs/xdg-desktop-portal-wlr/files/xdg-desktop-portal-wlr-0.7.0-portal-config.patch b/gui-libs/xdg-desktop-portal-wlr/files/xdg-desktop-portal-wlr-0.7.0-portal-config.patch
new file mode 100644
index 000000000000..7302ca33d064
--- /dev/null
+++ b/gui-libs/xdg-desktop-portal-wlr/files/xdg-desktop-portal-wlr-0.7.0-portal-config.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/915702
+https://github.com/emersion/xdg-desktop-portal-wlr/commit/e88e00ca9bc1b2e0e91bc297ff95c882dd1829ff
+
+From e88e00ca9bc1b2e0e91bc297ff95c882dd1829ff Mon Sep 17 00:00:00 2001
+From: columbarius <co1umbarius@protonmail.com>
+Date: Wed, 10 May 2023 01:36:21 +0200
+Subject: [PATCH] contrib: Add portals config example
+
+This is an example configuration for choosing the portal implementations
+which should be used [1]. Compositors and distributions are expected to ship
+their modified version according to their choice of components.
+
+[1] https://github.com/flatpak/xdg-desktop-portal/pull/955
+---
+ contrib/wlroots-portals.conf | 7 +++++++
+ 1 file changed, 7 insertions(+)
+ create mode 100644 contrib/wlroots-portals.conf
+
+diff --git a/contrib/wlroots-portals.conf b/contrib/wlroots-portals.conf
+new file mode 100644
+index 00000000..0baa2ca4
+--- /dev/null
++++ b/contrib/wlroots-portals.conf
+@@ -0,0 +1,7 @@
++[preferred]
++# Use xdg-desktop-portal-gtk for every portal interface...
++default=gtk
++# ... except for the Screencast, Screenshot and Settings (dark/light mode) interface
++org.freedesktop.impl.portal.Screencast=wlr
++org.freedesktop.impl.portal.Screenshot=wlr
++org.freedesktop.impl.portal.Settings=darkman
+
diff --git a/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-0.7.0-r1.ebuild b/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-0.7.0-r1.ebuild
new file mode 100644
index 000000000000..ee4c1b0f3797
--- /dev/null
+++ b/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-0.7.0-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="xdg-desktop-portal backend for wlroots"
+HOMEPAGE="https://github.com/emersion/xdg-desktop-portal-wlr"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/emersion/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/emersion/${PN}/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="elogind systemd"
+REQUIRED_USE="?? ( elogind systemd )"
+
+DEPEND="
+ >=media-video/pipewire-0.3.62:=
+ dev-libs/inih
+ dev-libs/wayland
+ media-libs/mesa
+ x11-libs/libdrm
+ || (
+ systemd? ( >=sys-apps/systemd-237 )
+ elogind? ( >=sys-auth/elogind-237 )
+ sys-libs/basu
+ )
+"
+# mesa is needed for gbm dep (which it hards sets to 'on')
+RDEPEND="
+ ${DEPEND}
+ sys-apps/xdg-desktop-portal
+"
+BDEPEND="
+ >=dev-libs/wayland-protocols-1.24
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-portal-config.patch
+)
+
+src_configure() {
+ local emesonargs=()
+
+ if use systemd; then
+ emesonargs+=(-Dsd-bus-provider=libsystemd)
+ elif use elogind; then
+ emesonargs+=(-Dsd-bus-provider=libelogind)
+ else
+ emesonargs+=(-Dsd-bus-provider=basu)
+ fi
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # bug #915702
+ insinto /usr/share/xdg-desktop-portal/portals
+ doins "${WORKDIR}/${P}/contrib/wlroots-portals.conf"
+}
diff --git a/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-9999.ebuild b/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-9999.ebuild
index 7720a78b05d2..f874a75b8fbd 100644
--- a/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-9999.ebuild
+++ b/gui-libs/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr-9999.ebuild
@@ -59,6 +59,7 @@ src_configure() {
src_install() {
meson_src_install
+ # bug #915702
insinto /usr/share/xdg-desktop-portal/portals
doins "${WORKDIR}/${P}/contrib/wlroots-portals.conf"
}