summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorMark Hindley <mark@hindley.org.uk>2018-11-09 13:38:51 +0000
committerMark Hindley <mark@hindley.org.uk>2018-11-09 13:38:51 +0000
commit0bebad6321b73859002b9af1cd47d3b7fb16b720 (patch)
tree49bbe9633d51f02d936398ce2c37c9a70d4e6ac7 /debian
parent7c4b18340c2dc8b5b27a1c5bf7a4c8cc95f5e807 (diff)
parent4691c18c097c64b222da2d44c3ca5060d08c3d4f (diff)
Merge branch 'merge_rc2' into debian_WIP
Diffstat (limited to 'debian')
-rw-r--r--debian/changelog9
-rw-r--r--debian/elogind.init2
-rw-r--r--debian/elogind.install7
-rw-r--r--debian/patches/Disable_Dbus_activation_by_default.diff.patch11
-rw-r--r--debian/patches/Fix_glibc_program_invocation_name_pointer_overlap.diff63
-rw-r--r--debian/patches/series1
-rwxr-xr-xdebian/rules2
-rw-r--r--debian/watch1
8 files changed, 53 insertions, 43 deletions
diff --git a/debian/changelog b/debian/changelog
index a24c6ecf7..9fbff2864 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+elogind (239.1-1+debian1~rc2) unstable; urgency=medium
+
+ * Update fix for SIGABRT to upstream #92.
+ * Disable Dbus activation by default.
+ * Use shutdown rather than poweroff as the latter is missing on runit systems.
+ * Remove upstream pwx git submodule. Thanks to Ian Jackson.
+
+ -- Mark Hindley <mark@hindley.org.uk> Fri, 09 Nov 2018 13:01:28 +0000
+
elogind (239.1-1+debian1~rc1) unstable; urgency=medium
* Initial upload to Debian (closes: #905388).
diff --git a/debian/elogind.init b/debian/elogind.init
index e08335f91..2a1d36a7f 100644
--- a/debian/elogind.init
+++ b/debian/elogind.init
@@ -13,7 +13,7 @@ set -e
# /etc/init.d/elogind: start and stop the elogind session management daemon
-ELOGIND=/usr/sbin/elogind
+ELOGIND=/lib/elogind/elogind
test -x $ELOGIND || exit 0
diff --git a/debian/elogind.install b/debian/elogind.install
index 9cef24e61..300006403 100644
--- a/debian/elogind.install
+++ b/debian/elogind.install
@@ -1,11 +1,6 @@
bin/
etc/elogind/logind.conf
-lib/elogind/elogind /usr/sbin/
-lib/elogind/libelogind-shared*.so
-lib/elogind/elogind-cgroups-agent
-lib/elogind/elogind-uaccess-command
-lib/elogind/system-sleep/.keep_dir
-lib/elogind/system-shutdown/.keep_dir
+lib/elogind/
lib/udev/rules.d/70-uaccess.rules
lib/udev/rules.d/71-seat.rules
lib/udev/rules.d/73-seat-late.rules
diff --git a/debian/patches/Disable_Dbus_activation_by_default.diff.patch b/debian/patches/Disable_Dbus_activation_by_default.diff.patch
new file mode 100644
index 000000000..48d67330e
--- /dev/null
+++ b/debian/patches/Disable_Dbus_activation_by_default.diff.patch
@@ -0,0 +1,11 @@
+--- a/src/login/org.freedesktop.login1.service.in
++++ b/src/login/org.freedesktop.login1.service.in
+@@ -7,5 +7,7 @@
+
+ [D-BUS Service]
+ Name=org.freedesktop.login1
+-Exec=@rootlibexecdir@/elogind --daemon
++# By default, Dbus activation of elogind is disabled. The daemon is started via an init script.
++# Exec=@rootlibexecdir@/elogind --daemon
++Exec=/bin/true
+ User=root
diff --git a/debian/patches/Fix_glibc_program_invocation_name_pointer_overlap.diff b/debian/patches/Fix_glibc_program_invocation_name_pointer_overlap.diff
index 5f1868272..034bf292b 100644
--- a/debian/patches/Fix_glibc_program_invocation_name_pointer_overlap.diff
+++ b/debian/patches/Fix_glibc_program_invocation_name_pointer_overlap.diff
@@ -3,44 +3,35 @@ Bug: https://github.com/elogind/elogind/issues/92
--- a/src/shared/musl_missing.c
+++ b/src/shared/musl_missing.c
-@@ -34,9 +34,14 @@
+@@ -26,14 +26,14 @@
+ #if HAVE_PROGRAM_INVOCATION_NAME == 0
+ char *program_invocation_name = NULL;
+ char *program_invocation_short_name = NULL;
+-#endif // libc does not provide these variables
- static void elogind_free_program_name(void) {
+-const char *program_arg_name = NULL;
++const char *program_arg_name = NULL; /* Helper */
++#endif // libc does not provide program_invocation_[short_]name
+
+ #include "musl_missing.h"
-- if (program_invocation_name && (program_invocation_name != program_arg_name) && strlen(program_invocation_name))
-+ if (program_invocation_name &&
-+ (program_invocation_name != program_arg_name) &&
-+ strlen(program_invocation_name))
++#if HAVE_PROGRAM_INVOCATION_NAME == 0
+ static void elogind_free_program_name(void) {
+-
+ if (program_invocation_name && (program_invocation_name != program_arg_name) && strlen(program_invocation_name))
program_invocation_name = mfree(program_invocation_name);
-- if (program_invocation_short_name && (program_invocation_short_name != program_arg_name) && strlen(program_invocation_short_name))
-+ if (program_invocation_short_name &&
-+ (program_invocation_short_name != program_arg_name) &&
-+ (program_invocation_short_name + strlen(program_invocation_short_name) != program_invocation_name + strlen(program_invocation_name))
-+ && strlen(program_invocation_short_name))
- program_invocation_short_name = mfree(program_invocation_short_name);
+ if (program_invocation_short_name && (program_invocation_short_name != program_arg_name) && strlen(program_invocation_short_name))
+@@ -55,8 +55,11 @@
+ program_invocation_name = strdup(program_arg_name);
+ if (NULL == program_invocation_short_name)
+ program_invocation_short_name = strdup(basename(program_arg_name));
+-#if HAVE_PROGRAM_INVOCATION_NAME == 0
+ atexit(elogind_free_program_name);
+-#endif // libc does not provide these variables
}
++#else
++void elogind_set_program_name(const char* pcall) {
++ assert(pcall && pcall[0]);
++}
++#endif // libc does not provide program_invocation_[short_]name
---- a/src/basic/process-util.c
-+++ b/src/basic/process-util.c
-@@ -10,6 +10,7 @@
- #include <stdio.h>
- #include <stdio_ext.h>
- #include <stdlib.h>
-+#include <libgen.h>
- #include <string.h>
- #include <sys/mman.h>
- #include <sys/mount.h>
-@@ -306,8 +307,12 @@
-
- k = strlen(program_invocation_name);
- strncpy(program_invocation_name, name, k);
-- if (l > k)
-+ if (l > k) {
- truncated = true;
-+ program_invocation_short_name = NULL;
-+ }
-+ else
-+ program_invocation_short_name = program_invocation_name + strlen(dirname(program_invocation_name)) -1;
- }
-
- /* Third step, completely replace the argv[] array the kernel maintains for us. This requires privileges, but
diff --git a/debian/patches/series b/debian/patches/series
index 33125a623..fb9c2028a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
+Disable_Dbus_activation_by_default.diff.patch
manpage-branding.diff
Fix_glibc_program_invocation_name_pointer_overlap.diff
diff --git a/debian/rules b/debian/rules
index b1023c94f..a45cf0fc5 100755
--- a/debian/rules
+++ b/debian/rules
@@ -5,6 +5,7 @@
# pam libs must go to /lib/*/security, same for udev rules
# - disable killing users processes by default. This is weird an unexpected
# behavior
+# - /sbin/poweroff is missing on runit systems, so use /sbin/shutdown instead
# - SELinux build is broken on 239 (fix available for 240)
# - tests disabled beacuase some of the tests seem to require elogind running.
# Need to sort out which tests could be run
@@ -16,6 +17,7 @@ CONFFLAGS = \
-Ddocdir=/usr/share/doc/elogind \
-Dudevrulesdir=/lib/udev/rules.d \
-Ddefault-kill-user-processes=false \
+ -Dpoweroff-path=/sbin/shutdown \
-Dselinux=false \
-Dtests=false
diff --git a/debian/watch b/debian/watch
index fda9f7dad..158e3faed 100644
--- a/debian/watch
+++ b/debian/watch
@@ -7,4 +7,5 @@ version=3
# URLs use only the version as the name, it is recommended to use a
# filenamemangle to adjust the name of the downloaded file:
opts="filenamemangle=s/(?:.*)?v?(\d[\d\.]*)\.tar\.gz/elogind-$1.tar.gz/" \
+ "dversionmangle=s/\+nosubmodule//" \
https://github.com/elogind/elogind/tags (?:.*/)?v?(\d[\d\.]*)\.tar\.gz