summaryrefslogtreecommitdiffstats
path: root/source/a/dbus
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/dbus')
-rwxr-xr-xsource/a/dbus/dbus.SlackBuild31
-rw-r--r--source/a/dbus/dbus.set.home.diff22
-rw-r--r--source/a/dbus/rc.messagebus10
3 files changed, 55 insertions, 8 deletions
diff --git a/source/a/dbus/dbus.SlackBuild b/source/a/dbus/dbus.SlackBuild
index b11340cd9..bd6acd99a 100755
--- a/source/a/dbus/dbus.SlackBuild
+++ b/source/a/dbus/dbus.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright 2007-2010 Robby Workman, Northport, Alabama, USA
-# Copyright 2007-2010 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2007-2012 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
PKGNAM=dbus
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -69,6 +69,7 @@ find . \
-exec chmod 644 {} \;
zcat $CWD/dbus-1.4.x-allow_root_globally.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/dbus.set.home.diff.gz | patch -p1 --verbose || exit 1
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -80,9 +81,11 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-doxygen-docs \
--enable-shared=yes \
--enable-static=no \
--enable-inotify \
+ --enable-x11-autolaunch \
--with-system-pid-file=/var/run/dbus/dbus.pid \
--with-system-socket=/var/run/dbus/system_bus_socket \
--with-init-scripts=slackware \
@@ -94,8 +97,20 @@ make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
# Install a custom init script for dbus - the included one is not good for us
rm $PKG/etc/rc.d/*
@@ -112,6 +127,14 @@ cp -a \
$PKG/usr/doc/$PKGNAM-$VERSION
find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
diff --git a/source/a/dbus/dbus.set.home.diff b/source/a/dbus/dbus.set.home.diff
new file mode 100644
index 000000000..5c0f7976a
--- /dev/null
+++ b/source/a/dbus/dbus.set.home.diff
@@ -0,0 +1,22 @@
+Set HOME environment variable when switching user.
+
+2011-08-05 Egor Y. Egorov
+
+References:
+https://bugs.freedesktop.org/show_bug.cgi?id=39857
+https://bugs.kde.org/show_bug.cgi?id=249217#c27
+
+diff --git a/bus/activation-helper.c b/bus/activation-helper.c
+index baba8f0..b75ea7c 100644
+--- a/bus/activation-helper.c
++++ b/bus/activation-helper.c
+@@ -344,6 +344,8 @@ switch_user (char *user, DBusError *error)
+ "cannot setuid user %i", pw->pw_uid);
+ return FALSE;
+ }
++
++ _dbus_setenv ("HOME", pw->pw_dir);
+ #endif
+ return TRUE;
+ }
+
diff --git a/source/a/dbus/rc.messagebus b/source/a/dbus/rc.messagebus
index 7b27eb599..fb035af54 100644
--- a/source/a/dbus/rc.messagebus
+++ b/source/a/dbus/rc.messagebus
@@ -16,7 +16,8 @@
PIDFILE=/var/run/dbus/dbus.pid
start() {
- if ! ps axc | grep -w dbus-daemon ; then
+ mkdir -p $(dirname $PIDFILE)
+ if ! ps -u messagebus -c | grep -wq dbus-daemon; then
rm -f $(dirname $PIDFILE)/*
if [ -x /usr/bin/dbus-uuidgen -a -x /usr/bin/dbus-daemon ] ; then
echo "Starting system message bus: /usr/bin/dbus-uuidgen --ensure ; /usr/bin/dbus-daemon --system"
@@ -48,10 +49,10 @@ reload() {
}
status() {
- if ps axc | grep -wq dbus-daemon 2>/dev/null ; then
- echo "dbus-daemon is running."
+ if ps -u messagebus -c | grep -wq dbus-daemon; then
+ echo "System dbus-daemon is running."
else
- echo "dbus is stopped."
+ echo "System dbus-daemon is stopped."
fi
}
@@ -66,6 +67,7 @@ case "$1" in
restart)
stop
start
+ echo "You may need to restart your Window Manager to reconnect to the system dbus."
;;
reload)
reload