git: 2d089e2172e8 - main - x11/xdg-desktop-portal-gnome: add port: Backend implementation for xdg-desktop-portal for GNOME

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Mon, 31 Jul 2023 07:21:47 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2d089e2172e802b9399b25662e1e0be2bacd04a3

commit 2d089e2172e802b9399b25662e1e0be2bacd04a3
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2023-07-31 07:16:31 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2023-07-31 07:21:30 +0000

    x11/xdg-desktop-portal-gnome: add port: Backend implementation for xdg-desktop-portal for GNOME
    
    xdg-desktop-portal-gnome is a backend implementation for
    xdg-desktop-portal that is using GTK and various pieces of GNOME
    infrastructure, such as the org.gnome.Shell.Screenshot or
    org.gnome.SessionManager D-Bus interfaces.
    
    WWW: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome
---
 x11/Makefile                                       |  1 +
 x11/xdg-desktop-portal-gnome/Makefile              | 35 ++++++++++++++++
 x11/xdg-desktop-portal-gnome/distinfo              |  3 ++
 .../files/patch-data_meson.build                   | 17 ++++++++
 .../files/patch-meson.build                        | 24 +++++++++++
 x11/xdg-desktop-portal-gnome/pkg-descr             |  4 ++
 x11/xdg-desktop-portal-gnome/pkg-plist             | 47 ++++++++++++++++++++++
 7 files changed, 131 insertions(+)

diff --git a/x11/Makefile b/x11/Makefile
index 5cc5347266eb..e65ca29216e7 100644
--- a/x11/Makefile
+++ b/x11/Makefile
@@ -493,6 +493,7 @@
     SUBDIR += xconsole
     SUBDIR += xcursorgen
     SUBDIR += xcut
+    SUBDIR += xdg-desktop-portal-gnome
     SUBDIR += xdg-desktop-portal-gtk
     SUBDIR += xdg-desktop-portal-hyprland
     SUBDIR += xdg-desktop-portal-wlr
diff --git a/x11/xdg-desktop-portal-gnome/Makefile b/x11/xdg-desktop-portal-gnome/Makefile
new file mode 100644
index 000000000000..8af9ba3a078d
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/Makefile
@@ -0,0 +1,35 @@
+PORTNAME=	xdg-desktop-portal-gnome
+DISTVERSION=	43.1
+CATEGORIES=	x11 gnome
+MASTER_SITES=	GNOME/sources/${PORTNAME}/${PORTVERSION:C/^([0-9]+)\..*/\1/}
+DIST_SUBDIR=	gnome
+
+MAINTAINER=	tagattie@FreeBSD.org
+COMMENT=	Backend implementation for xdg-desktop-portal for GNOME
+WWW=		https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome
+
+LICENSE=	LGPL21
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+BUILD_DEPENDS=	xdg-desktop-portal>0:deskutils/xdg-desktop-portal \
+		xdg-desktop-portal-gtk>0:x11/xdg-desktop-portal-gtk
+LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \
+		libgnome-desktop-4.so:x11/gnome-desktop
+RUN_DEPENDS=	xdg-desktop-portal>0:deskutils/xdg-desktop-portal \
+		xdg-desktop-portal-gtk>0:x11/xdg-desktop-portal-gtk
+
+USES=		gettext-tools gnome meson pkgconfig tar:xz xorg
+
+USE_XORG=	x11
+USE_GNOME=	cairo gdkpixbuf2 glib20 gtk40 libadwaita
+GLIB_SCHEMAS=	xdg-desktop-portal-gnome.gschema.xml
+
+PORTDOCS=	NEWS README.md
+
+OPTIONS_DEFINE=	DOCS
+
+post-install-DOCS-on:
+	${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/x11/xdg-desktop-portal-gnome/distinfo b/x11/xdg-desktop-portal-gnome/distinfo
new file mode 100644
index 000000000000..8aeccea21e15
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1676978672
+SHA256 (gnome/xdg-desktop-portal-gnome-43.1.tar.xz) = 09adb66c6d9153e6f05df66daa2ad62a5de0e36665e9d2295173bb0ddc53b4cd
+SIZE (gnome/xdg-desktop-portal-gnome-43.1.tar.xz) = 125248
diff --git a/x11/xdg-desktop-portal-gnome/files/patch-data_meson.build b/x11/xdg-desktop-portal-gnome/files/patch-data_meson.build
new file mode 100644
index 000000000000..9f718a38e65b
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/files/patch-data_meson.build
@@ -0,0 +1,17 @@
+--- data/meson.build.orig	2022-10-18 02:27:08 UTC
++++ data/meson.build
+@@ -15,14 +15,6 @@ configure_file(
+   install_dir: dbus_service_dir,
+ )
+ 
+-# systemd unit
+-configure_file(
+-  input: 'xdg-desktop-portal-gnome.service.in',
+-  output: 'xdg-desktop-portal-gnome.service',
+-  configuration: libexecdir_conf,
+-  install_dir: systemduserunitdir,
+-)
+-
+ # Desktop file
+ desktop_in = configure_file(
+   input: 'xdg-desktop-portal-gnome.desktop.in.in',
diff --git a/x11/xdg-desktop-portal-gnome/files/patch-meson.build b/x11/xdg-desktop-portal-gnome/files/patch-meson.build
new file mode 100644
index 000000000000..f786d81b2a02
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/files/patch-meson.build
@@ -0,0 +1,24 @@
+--- meson.build.orig	2022-10-18 02:27:08 UTC
++++ meson.build
+@@ -11,15 +11,6 @@ datadir = get_option('datadir')
+ libdir = get_option('libdir')
+ libexecdir = get_option('libexecdir')
+ 
+-systemduserunitdir = get_option('systemduserunitdir')
+-if systemduserunitdir == ''
+-  systemd = dependency('systemd', version: '>= 242')
+-  systemduserunitdir = systemd.get_pkgconfig_variable(
+-    'systemduserunitdir',
+-    define_variable: ['prefix', get_option('prefix')]
+-  )
+-endif
+-
+ dbus_service_dir = get_option('dbus_service_dir')
+ if dbus_service_dir == ''
+   dbus_service_dir = datadir / 'dbus-1' / 'services'
+@@ -35,5 +26,4 @@ summary({
+   'libdir': libdir,
+   'libexecdir': libexecdir,
+   'dbus_service_dir': dbus_service_dir,
+-  'systemduserunitdir': systemduserunitdir,
+ })
diff --git a/x11/xdg-desktop-portal-gnome/pkg-descr b/x11/xdg-desktop-portal-gnome/pkg-descr
new file mode 100644
index 000000000000..c404a0747fcb
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/pkg-descr
@@ -0,0 +1,4 @@
+xdg-desktop-portal-gnome is a backend implementation for
+xdg-desktop-portal that is using GTK and various pieces of GNOME
+infrastructure, such as the org.gnome.Shell.Screenshot or
+org.gnome.SessionManager D-Bus interfaces.
diff --git a/x11/xdg-desktop-portal-gnome/pkg-plist b/x11/xdg-desktop-portal-gnome/pkg-plist
new file mode 100644
index 000000000000..161061029b82
--- /dev/null
+++ b/x11/xdg-desktop-portal-gnome/pkg-plist
@@ -0,0 +1,47 @@
+libexec/xdg-desktop-portal-gnome
+share/applications/xdg-desktop-portal-gnome.desktop
+share/dbus-1/services/org.freedesktop.impl.portal.desktop.gnome.service
+share/locale/ab/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/bg/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ca/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/cs/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/da/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/de/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/el/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/en_GB/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/es/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/eu/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/fa/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/fi/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/fr/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/fur/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/gl/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/he/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/hr/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/hu/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/id/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/is/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/it/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ja/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ka/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/kk/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ko/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/lt/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ne/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/nl/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/oc/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/pa/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/pl/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/pt/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/pt_BR/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ro/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/ru/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/sk/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/sl/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/sr/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/sv/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/tr/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/uk/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/zh_CN/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/locale/zh_TW/LC_MESSAGES/xdg-desktop-portal-gnome.mo
+share/xdg-desktop-portal/portals/gnome.portal