summaryrefslogtreecommitdiff
path: root/pcr/dbus-elogind
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/dbus-elogind')
-rw-r--r--pcr/dbus-elogind/PKGBUILD76
-rw-r--r--pcr/dbus-elogind/dbus-enable-elogind.patch73
2 files changed, 149 insertions, 0 deletions
diff --git a/pcr/dbus-elogind/PKGBUILD b/pcr/dbus-elogind/PKGBUILD
new file mode 100644
index 000000000..d6095e7b4
--- /dev/null
+++ b/pcr/dbus-elogind/PKGBUILD
@@ -0,0 +1,76 @@
+# Maintainer (Manjaro): artoo <artoo@manjaro.org>
+# Contributor (Manjaro): Jan de Groot <jgc@archlinux.org>
+# Contributor (Manjaro): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor (Manjaro): Tom Gundersen <teg@jklm.no>
+# Contributor (Manjaro): Link Dupont <link@subpop.net>
+# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+
+_pkgname=dbus
+_commit=8b582cb10d7cf00af7a70496aec48af24edc542b # tags/dbus-1.10.16^0
+
+pkgname=dbus-elogind
+pkgver=1.10.16
+pkgrel=2
+pkgdesc="Freedesktop.org message bus system"
+url="https://wiki.freedesktop.org/www/Software/dbus/"
+arch=(i686 x86_64 armv7h)
+license=(GPL custom)
+provides=('libdbus' "dbus=$pkgver")
+conflicts=('libdbus' 'dbus' 'dbus-x11')
+depends=('expat' 'libx11' 'libelogind' 'libeudev')
+makedepends=('xmlto' 'docbook-xsl' 'python' 'yelp-tools' 'doxygen' 'git')
+optdepends=('dbus-openrc: dbus initscript')
+source=("git+https://anongit.freedesktop.org/git/dbus/dbus#commit=$_commit"
+ 'dbus-enable-elogind.patch')
+sha256sums=('SKIP'
+ 'faffcaa5b295f49fcedeed2c9ece5298949096be3062fd99a4bf1a6ac3ad1ea0')
+validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90' # Simon McVittie <simon.mcvittie@collabora.co.uk>
+ '3C8672A0F49637FE064AC30F52A43A1E4B77B059') # Simon McVittie <simon.mcvittie@collabora.co.uk>
+
+prepare() {
+ cd $_pkgname
+ git cherry-pick -n 09cb6d7b467f6d1c6685ee9ccc171f4dddbe1f42
+ patch -Np 1 -i ${srcdir}/dbus-enable-elogind.patch
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ cd $_pkgname
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib/dbus-1.0 \
+ --with-dbus-user=dbus \
+ --with-system-pid-file=/run/dbus/pid \
+ --with-system-socket=/run/dbus/system_bus_socket \
+ --with-console-auth-dir=/run/console/ \
+ --enable-inotify \
+ --disable-static \
+ --disable-verbose-mode \
+ --disable-asserts \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system \
+ --disable-systemd \
+ --disable-user-session \
+ --enable-x11-autolaunch \
+ --enable-elogind
+ make
+}
+
+check() {
+ cd $_pkgname
+ make check
+}
+
+package() {
+ cd $_pkgname
+
+ make DESTDIR="$pkgdir" install
+
+ rm -r "$pkgdir/var/run"
+
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$_pkgname/COPYING"
+
+ # Remove docs
+ rm -r "$pkgdir/usr/share/doc"
+}
diff --git a/pcr/dbus-elogind/dbus-enable-elogind.patch b/pcr/dbus-elogind/dbus-enable-elogind.patch
new file mode 100644
index 000000000..5cb5d649c
--- /dev/null
+++ b/pcr/dbus-elogind/dbus-enable-elogind.patch
@@ -0,0 +1,73 @@
+--- a/dbus/dbus-userdb-util.c 2015-09-30 16:48:40.000000000 +0200
++++ b/dbus/dbus-userdb-util.c 2016-11-03 11:09:42.550520587 +0100
+@@ -32,6 +32,9 @@
+ #if HAVE_SYSTEMD
+ #include <systemd/sd-login.h>
+ #endif
++#if HAVE_ELOGIND
++#include <elogind/sd-login.h>
++#endif
+
+ /**
+ * @addtogroup DBusInternalsUtils
+@@ -54,7 +57,7 @@
+ const DBusUserInfo *info;
+ dbus_bool_t result = FALSE;
+
+-#ifdef HAVE_SYSTEMD
++#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
+ /* check if we have logind */
+ if (access ("/run/systemd/seats/", F_OK) >= 0)
+ {
+--- a/configure.ac 2016-11-03 11:13:58.286528265 +0100
++++ b/configure.ac 2016-11-03 11:22:11.210543063 +0100
+@@ -185,6 +185,7 @@
+ AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
+ AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
+ AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
++AC_ARG_ENABLE(elogind, AS_HELP_STRING([--enable-elogind],[build with elogind user seat support]),enable_elogind=$enableval,enable_elogind=auto)
+ AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
+
+ AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
+@@ -1184,6 +1185,24 @@
+
+ AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
+
++dnl elogind detection
++if test x$enable_elogind = xno ; then
++ have_elogind=no;
++else
++ PKG_CHECK_MODULES([ELOGIND],
++ [libelogind >= 209],
++ [have_elogind=yes],
++ [have_elogind=no])
++fi
++
++if test x$have_elogind = xyes; then
++ AC_DEFINE(HAVE_ELOGIND,1,[Have elogind])
++fi
++
++if test x$enable_elogind = xyes -a x$have_elogind != xyes ; then
++ AC_MSG_ERROR([Explicitly requested elogind support, but libelogind not found])
++fi
++
+ dnl systemd detection
+ if test x$enable_systemd = xno ; then
+ have_systemd=no;
+@@ -1290,7 +1309,7 @@
+ fi
+
+ #### Set up final flags
+-LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS"
++LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS $ELOGIND_LIBS"
+ AC_SUBST([LIBDBUS_LIBS])
+
+ ### X11 detection
+@@ -1949,6 +1968,7 @@
+ Building AppArmor support: ${have_apparmor}
+ Building inotify support: ${have_inotify}
+ Building kqueue support: ${have_kqueue}
++ Building elogind support: ${have_elogind}
+ Building systemd support: ${have_systemd}
+ Building X11 code: ${have_x11}
+ Building Doxygen docs: ${enable_doxygen_docs}