commit:     b26933a4a27362ac7a3206959e0693629153aa6b
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 16 00:12:44 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Nov 16 14:05:48 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b26933a4

gnome-base/gnome-session: Version bump to 3.38.0

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 gnome-base/gnome-session/Manifest                  |   1 +
 ...nome-session-3.38.0-meson-Support-elogind.patch |  68 ++++++++++++
 .../gnome-session/gnome-session-3.38.0.ebuild      | 121 +++++++++++++++++++++
 3 files changed, 190 insertions(+)

diff --git a/gnome-base/gnome-session/Manifest 
b/gnome-base/gnome-session/Manifest
index 2958231bfc7..523411c90c5 100644
--- a/gnome-base/gnome-session/Manifest
+++ b/gnome-base/gnome-session/Manifest
@@ -1,2 +1,3 @@
 DIST gnome-session-3.36.0-patchset.tar.xz 22624 BLAKE2B 
33518973a5e7c810b9aef165bcd62d41641908fa329dcefc784073966514aad5aa8919037722043c6cb0ddca86b4c2444b614d773aa777d737d49fdb3acad8e5
 SHA512 
c80ae41bcaa876ebb2c2d2a47d7bbcb58a3fe417ce0727e1aa3f384c4ae848bd3f1e27bd706af478f8e93c921efef578085d2c999efd06fd8d7c8704e170a56a
 DIST gnome-session-3.36.0.tar.xz 475492 BLAKE2B 
b539c4646b746198aceba65708f758fc875614d342b66f8b12643a7235dcc043b78d7e2502ca9f45159f5b4080528ff8b92c98b67acb77fe7f71386ec282b773
 SHA512 
234456e8617524a3b95afb505246823ced4eca3ca009d48fc0bde70f8c620814495b04509c134bfb72760619990cc7cb7363ba13f0d90d9f038e8a43eadb6e9d
+DIST gnome-session-3.38.0.tar.xz 481300 BLAKE2B 
1adb6377f66ab64c39aa5e9ca73ebcb7fcfbfa33b5adcd4fe5900624a89a248a4255c507ec0e88baa57b20105a50d6b7e8eb6bea0be6de49295977e4aacbb662
 SHA512 
f49a7337b64722bc502ff3d952d8e249d2435be662c3bdfb7c7740338585c2e0b292869902be4c10faebde00998d7ead8deb82fe719a38575c6ebec2b94aa19b

diff --git 
a/gnome-base/gnome-session/files/gnome-session-3.38.0-meson-Support-elogind.patch
 
b/gnome-base/gnome-session/files/gnome-session-3.38.0-meson-Support-elogind.patch
new file mode 100644
index 00000000000..37bb6921ed3
--- /dev/null
+++ 
b/gnome-base/gnome-session/files/gnome-session-3.38.0-meson-Support-elogind.patch
@@ -0,0 +1,68 @@
+From 4454f2a63394b69fba2c900151165ad8b5742f31 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <[email protected]>
+Date: Sun, 15 Mar 2020 14:34:39 +0200
+Subject: [PATCH] meson: Support elogind
+
+---
+ meson.build       | 12 +++++++++---
+ meson_options.txt |  1 +
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index ef5132c6..7f68aaae 100644
+--- a/meson.build
++++ b/meson.build
+@@ -124,8 +124,10 @@ enable_systemd = get_option('systemd')
+ enable_systemd_session = get_option('systemd_session') != 'disable'
+ use_systemd_session = get_option('systemd_session') == 'default'
+ enable_systemd_journal = get_option('systemd_journal')
++enable_elogind = get_option('elogind')
+ enable_consolekit = get_option('consolekit')
+-if enable_systemd or enable_consolekit
++assert(not (enable_systemd and enable_elogind), 'Can not support systemd and 
elogind at once')
++if enable_systemd or enable_elogind or enable_consolekit
+   session_bin_deps += dependency('gio-unix-2.0', version: glib_req_version)
+ 
+   # Check for systemd
+@@ -152,6 +154,10 @@ if enable_systemd or enable_consolekit
+     endif
+ 
+     session_tracking = 'systemd'
++  elif enable_elogind
++    libelogind_dep = dependency('libelogind', version: '>= 239.4')
++    session_bin_deps += libelogind_dep
++    session_tracking = 'elogind'
+   endif
+ 
+   # Check for ConsoleKit
+@@ -161,7 +167,7 @@ if enable_systemd or enable_consolekit
+ 
+     session_bin_deps += dbus_glib_dep
+ 
+-    if enable_systemd
++    if enable_systemd or enable_elogind
+       session_tracking += ' (with fallback to ConsoleKit)'
+     else
+       session_tracking = 'ConsoleKit'
+@@ -171,7 +177,7 @@ endif
+ if enable_systemd_session
+   assert(enable_systemd, 'Systemd support must be enabled when using systemd 
session management')
+ endif
+-config_h.set('HAVE_SYSTEMD', enable_systemd)
++config_h.set('HAVE_SYSTEMD', enable_systemd or enable_elogind)
+ config_h.set('ENABLE_SYSTEMD_SESSION', enable_systemd_session)
+ config_h.set('ENABLE_SYSTEMD_JOURNAL', enable_systemd_journal)
+ config_h.set('HAVE_CONSOLEKIT', enable_consolekit)
+diff --git a/meson_options.txt b/meson_options.txt
+index 4c05dc6e..512d1528 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,4 +1,5 @@
+ option('deprecation_flags', type: 'boolean', value: false, description: 'use 
*_DISABLE_DEPRECATED flags')
++option('elogind', type: 'boolean', value: true, description: 'Use elogind')
+ option('session_selector', type: 'boolean', value: false, description: 
'enable building a custom session selector dialog')
+ option('systemd', type: 'boolean', value: true, description: 'Use systemd')
+ option('systemd_session', type: 'combo', choices: ['disable', 'enable', 
'default'], value: 'default', description: 'Whether to include systemd session 
support and use it by default')
+-- 
+2.26.2
+

diff --git a/gnome-base/gnome-session/gnome-session-3.38.0.ebuild 
b/gnome-base/gnome-session/gnome-session-3.38.0.ebuild
new file mode 100644
index 00000000000..8d4354bec09
--- /dev/null
+++ b/gnome-base/gnome-session/gnome-session-3.38.0.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit desktop gnome.org gnome2-utils meson xdg
+
+DESCRIPTION="Gnome session manager"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-session";
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux 
~x86-linux ~x86-solaris"
+IUSE="doc elogind systemd"
+# There is a null backend available, thus ?? not ^^
+REQUIRED_USE="?? ( elogind systemd )"
+
+DEPEND="
+       >=dev-libs/glib-2.46.0:2
+       >=x11-libs/gtk+-3.22.0:3
+       x11-libs/libICE
+       x11-libs/libSM
+       x11-libs/libX11
+       >=gnome-base/gnome-desktop-3.34.2:3=
+       >=dev-libs/json-glib-0.10
+       media-libs/mesa[egl,gles2,X(+)]
+       media-libs/libepoxy
+       x11-libs/libXcomposite
+
+       systemd? ( >=sys-apps/systemd-242:0= )
+       elogind? ( >=sys-auth/elogind-239.4 )
+"
+
+# Pure-runtime deps from the session files should *NOT* be added here.
+# >=gnome-settings-daemon-3.35.91 for UsbProtection required component.
+# x11-misc/xdg-user-dirs{,-gtk} are needed to create the various XDG_*_DIRs, 
and
+# create .config/user-dirs.dirs which is read by glib to get G_USER_DIRECTORY_*
+# xdg-user-dirs-update is run during login (see 10-user-dirs-update-gnome 
below).
+# sys-apps/dbus[X] is needed for session management.
+# Our 90-xcursor-theme-gnome reads a setting from gsettings-desktop-schemas.
+RDEPEND="${DEPEND}
+       >=gnome-base/gnome-settings-daemon-3.35.91
+       >=gnome-base/gsettings-desktop-schemas-0.1.7
+       sys-apps/dbus[X]
+
+       x11-misc/xdg-user-dirs
+       x11-misc/xdg-user-dirs-gtk
+"
+BDEPEND="
+       dev-libs/libxslt
+       dev-util/gdbus-codegen
+       >=sys-devel/gettext-0.19.8
+       x11-libs/xtrans
+       virtual/pkgconfig
+       doc? ( app-text/xmlto
+               app-text/docbook-xml-dtd:4.1.2 )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-meson-Support-elogind.patch
+)
+
+src_prepare() {
+       xdg_src_prepare
+       # Install USE=doc in $PF if enabled
+       sed -i -e "s:meson\.project_name(), 'dbus':'${PF}', 'dbus':" 
doc/dbus/meson.build || die
+}
+
+src_configure() {
+       local emesonargs=(
+               -Ddeprecation_flags=false
+               $(meson_use elogind)
+               -Dsession_selector=true # gnome-custom-session
+               $(meson_use systemd)
+               -Dsystemd_session=$(usex systemd default disable)
+               $(meson_use systemd systemd_journal)
+               $(meson_use doc docbook)
+               -Dconsolekit=false
+               -Dman=true
+       )
+       meson_src_configure
+}
+
+src_install() {
+       meson_src_install
+
+       exeinto /etc/X11/Sessions
+       doexe "${FILESDIR}/Gnome"
+
+       newmenu "${FILESDIR}/defaults.list-r5" gnome-mimeapps.list
+
+       exeinto /etc/X11/xinit/xinitrc.d/
+       newexe "${FILESDIR}/15-xdg-data-gnome-r1" 15-xdg-data-gnome
+
+       # This should be done here as discussed in bug #270852
+       newexe "${FILESDIR}/10-user-dirs-update-gnome-r1" 
10-user-dirs-update-gnome
+
+       # Set XCURSOR_THEME from current dconf setting instead of installing
+       # default cursor symlink globally and affecting other DEs (bug #543488)
+       # https://bugzilla.gnome.org/show_bug.cgi?id=711703
+       newexe "${FILESDIR}/90-xcursor-theme-gnome" 90-xcursor-theme-gnome
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+       gnome2_schemas_update
+
+       if ! has_version gnome-base/gdm && ! has_version x11-misc/sddm; then
+               ewarn "If you use a custom .xinitrc for your X session,"
+               ewarn "make sure that the commands in the xinitrc.d scripts are 
run."
+       fi
+
+       if ! use systemd && ! use elogind; then
+               ewarn "You are building without systemd or elogind support."
+               ewarn "gnome-session won't be able to correctly track and 
manage your session."
+       fi
+}
+
+pkg_postrm() {
+       xdg_pkg_postinst
+       gnome2_schemas_update
+}

Reply via email to