From: "Mart Raudsepp" <leio@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-session/, gnome-base/gnome-session/files/
Date: Tue, 19 Mar 2019 09:54:27 +0000 (UTC) [thread overview]
Message-ID: <1552989230.1884b78144b57878b7e7497e6f7c62d5b4562b6a.leio@gentoo> (raw)
commit: 1884b78144b57878b7e7497e6f7c62d5b4562b6a
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 19 09:53:29 2019 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Tue Mar 19 09:53:50 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1884b781
gnome-base/gnome-session: add elogind support
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
.../files/3.30.1-elogind-support.patch | 67 ++++++++++++++++++++++
....30.1.ebuild => gnome-session-3.30.1-r1.ebuild} | 15 ++++-
gnome-base/gnome-session/metadata.xml | 1 +
3 files changed, 80 insertions(+), 3 deletions(-)
diff --git a/gnome-base/gnome-session/files/3.30.1-elogind-support.patch b/gnome-base/gnome-session/files/3.30.1-elogind-support.patch
new file mode 100644
index 00000000000..4f1c5dab9dd
--- /dev/null
+++ b/gnome-base/gnome-session/files/3.30.1-elogind-support.patch
@@ -0,0 +1,67 @@
+From 92072c73ab74ebe0654ac5bd4f9fd2182181ee9d Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Tue, 19 Mar 2019 11:00:21 +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 afc97457..7c32e3b9 100644
+--- a/meson.build
++++ b/meson.build
+@@ -121,8 +121,10 @@ session_tracking = 'null backend'
+
+ enable_systemd = get_option('systemd')
+ 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
+@@ -145,6 +147,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
+@@ -154,14 +160,14 @@ 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'
+ endif
+ endif
+ endif
+-config_h.set('HAVE_SYSTEMD', enable_systemd)
++config_h.set('HAVE_SYSTEMD', enable_systemd or enable_elogind)
+ 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 05174fec..cd85eae8 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_journal', type: 'boolean', value:'true', description: 'Send log to systemd-journal')
+--
+2.17.0
+
diff --git a/gnome-base/gnome-session/gnome-session-3.30.1.ebuild b/gnome-base/gnome-session/gnome-session-3.30.1-r1.ebuild
similarity index 87%
rename from gnome-base/gnome-session/gnome-session-3.30.1.ebuild
rename to gnome-base/gnome-session/gnome-session-3.30.1-r1.ebuild
index 8674fec66da..f62cbf2858f 100644
--- a/gnome-base/gnome-session/gnome-session-3.30.1.ebuild
+++ b/gnome-base/gnome-session/gnome-session-3.30.1-r1.ebuild
@@ -10,7 +10,10 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-session"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
-IUSE="consolekit doc systemd"
+IUSE="consolekit doc elogind systemd"
+# There is a null backend available, thus ?? not ^^
+# consolekit can be enabled alone, or together with a logind provider; in latter case CK is used as fallback
+REQUIRED_USE="?? ( elogind systemd )"
COMMON_DEPEND="
>=dev-libs/glib-2.46.0:2
@@ -25,6 +28,7 @@ COMMON_DEPEND="
x11-libs/libXcomposite
systemd? ( >=sys-apps/systemd-183:0= )
+ elogind? ( >=sys-auth/elogind-239.4 )
consolekit? ( >=dev-libs/dbus-glib-0.76 )
"
@@ -57,6 +61,10 @@ DEPEND="${COMMON_DEPEND}
app-text/docbook-xml-dtd:4.1.2 )
"
+PATCHES=(
+ "${FILESDIR}"/${PV}-elogind-support.patch
+)
+
src_prepare() {
xdg_src_prepare
# Install USE=doc in $PF if enabled
@@ -66,6 +74,7 @@ src_prepare() {
src_configure() {
local emesonargs=(
-Ddeprecation_flags=false
+ $(meson_use elogind)
-Dsession_selector=true # gnome-custom-session
$(meson_use systemd)
$(meson_use systemd systemd_journal)
@@ -108,8 +117,8 @@ pkg_postinst() {
ewarn "make sure that the commands in the xinitrc.d scripts are run."
fi
- if ! use systemd && ! use consolekit; then
- ewarn "You are building without systemd and/or consolekit support."
+ if ! use systemd && ! use elogind && ! use consolekit; then
+ ewarn "You are building without systemd, elogind and/or consolekit support."
ewarn "gnome-session won't be able to correctly track and manage your session."
fi
}
diff --git a/gnome-base/gnome-session/metadata.xml b/gnome-base/gnome-session/metadata.xml
index 506e4f9e5c5..0a5d0e69d17 100644
--- a/gnome-base/gnome-session/metadata.xml
+++ b/gnome-base/gnome-session/metadata.xml
@@ -7,5 +7,6 @@
</maintainer>
<use>
<flag name="consolekit">Support <pkg>sys-auth/consolekit</pkg> for session tracking</flag>
+ <flag name="elogind">Support <pkg>sys-auth/elogind</pkg> for session tracking</flag>
</use>
</pkgmetadata>
next reply other threads:[~2019-03-19 9:54 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-19 9:54 Mart Raudsepp [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-08-01 8:34 [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-session/, gnome-base/gnome-session/files/ Pacho Ramos
2023-12-26 21:43 Mart Raudsepp
2021-03-28 8:53 Pacho Ramos
2019-05-18 20:46 Mart Raudsepp
2019-03-02 9:25 Mart Raudsepp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1552989230.1884b78144b57878b7e7497e6f7c62d5b4562b6a.leio@gentoo \
--to=leio@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox