tag 516349 pending thanks Dear maintainer,
I've prepared an NMU for jabber-irc (versioned as 0.4cvs20080505-1.1) and uploaded it to DELAYED/2. Please feel free to tell me if I should delay it longer. Cheers, Serafeim
diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/changelog jabber-irc-0.4cvs20080505/debian/changelog --- orig/jabber-irc-0.4cvs20080505/debian/changelog 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/changelog 2010-08-06 05:32:58.000000000 +0200 @@ -1,3 +1,25 @@ +jabber-irc (0.4cvs20080505-1.1) unstable; urgency=low + + * Non-maintainer upload. + * Applied patch from Ubuntu (Closes: #516349). Thanks to Miguel Landaeta and + Ilya Barygin. + - debian/control: depend on adduser and on lsb-base (instead of + jabber-common) + - debian/init.d: take into account the substitution of jabber-common with + lsb-base + - debian/postinst, debian/postrm: use "jabber" user creation/deletion + code from jabber-common + - debian/dirs: add var/log/jabber + * Fix binary-arch-rules-but-pkg-is-arch-indep lintian warning + * Depend on ${misc:Depends} for debhelper + * Set debian/compat to 7, update minimum debhelper version, and replace + deprecated ``dh_clean -k'' with dh_prep + * Move init.d script to /etc/init.d/ + * Remove debian/prerm and let dh_installinit generate it instead + * Invoke start-stop-deamon with --make-pidfile + + -- Serafeim Zanikolas <s...@debian.org> Fri, 06 Aug 2010 03:41:27 +0200 + jabber-irc (0.4cvs20080505-1) unstable; urgency=low * New upstream release. (Closes: #370601) diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/compat jabber-irc-0.4cvs20080505/debian/compat --- orig/jabber-irc-0.4cvs20080505/debian/compat 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/compat 2010-08-06 04:11:06.000000000 +0200 @@ -1 +1 @@ -4 +7 diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/control jabber-irc-0.4cvs20080505/debian/control --- orig/jabber-irc-0.4cvs20080505/debian/control 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/control 2010-08-06 04:22:00.000000000 +0200 @@ -2,13 +2,13 @@ Source: jabber-irc Section: net Priority: optional Maintainer: Alexey Nezhdanov <snak...@users.sourceforge.net> -Build-Depends: debhelper (>= 4.0.0) +Build-Depends: debhelper (>= 7.0.0) Standards-Version: 3.8.0 Uploaders: Cosimo Alfarano <ka...@debian.org>, Jamin W. Collins <jcoll...@debian.org> Package: jabber-irc Architecture: all -Depends: python-irclib, python-xmpp (>=0.4.1), jabber-common, python +Depends: ${misc:Depends}, python-irclib, python-xmpp (>=0.4.1), lsb-base, python, adduser Suggests: jabber Description: IRC transport for jabber Provides jabber server with gateway to IRC messaging system. diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/default jabber-irc-0.4cvs20080505/debian/default --- orig/jabber-irc-0.4cvs20080505/debian/default 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/default 2010-08-06 04:42:42.000000000 +0200 @@ -1,5 +1,5 @@ # Default settings for jabber-irc. This file is sourced by /bin/sh -# from /etc/jabber/jabber.d/jabber-irc. +# from /etc/init.d/jabber-irc. # Change the following to 1 to enable the service ENABLED='0' diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/dirs jabber-irc-0.4cvs20080505/debian/dirs --- orig/jabber-irc-0.4cvs20080505/debian/dirs 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/dirs 2010-08-06 04:59:56.000000000 +0200 @@ -1,5 +1,6 @@ etc/default -etc/jabber/jabber.d usr/lib/jabber-irc usr/sbin var/lib/jabber-irc +var/log/jabber +etc/init.d diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/init.d jabber-irc-0.4cvs20080505/debian/init.d --- orig/jabber-irc-0.4cvs20080505/debian/init.d 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/init.d 2010-08-06 05:58:46.000000000 +0200 @@ -12,17 +12,25 @@ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/jabberd-irc +CMDLINE=/usr/bin/python/usr/sbin/jabberd-irc NAME=jabber-irc DESC=jabber-irc -CMDLINE='' +ARGS='' PID=/var/run/jabber/$NAME.pid ENABLED='0' +# Create needed dir in /var/run. +if [ ! -d /var/run/jabber ] ; then + mkdir /var/run/jabber + chown jabber:adm /var/run/jabber + chmod 0775 /var/run/jabber +fi + if [ -f /etc/default/jabber-irc ]; then . /etc/default/jabber-irc fi -. /etc/jabber/functions +. /lib/lsb/init-functions test -x $DAEMON -a "$ENABLED" -eq "1" || exit 0 @@ -30,18 +38,29 @@ set -e case "$1" in start) - check_pid - echo -n "Starting $DESC: " - export PID - start-stop-daemon -b -c jabber:adm --start --quiet \ - --exec $DAEMON -- $CMDLINE - echo "$NAME." - ;; + if [ -e $PID ]; then + PIDDIR=/proc/$(cat $PID) + if [ -d ${PIDDIR} -a "$(cat ${PIDDIR}/cmdline)" = "$CMDLINE" ]; then + log_success_msg "$DESC already started; not starting" + exit + else + log_success_msg "Removing stale PID file $PID" + rm -f $PID + fi + fi + + log_daemon_msg "Starting $DESC: " + export PID + start-stop-daemon -b -c jabber:adm --start --quiet --pidfile $PID\ + --make-pidfile --exec $DAEMON -- $ARGS + echo "$NAME." + ;; stop) echo -n "Stopping $DESC: " start-stop-daemon -o --stop --signal INT --quiet --retry 3 \ --pidfile $PID --exec /usr/bin/python echo "$NAME." + rm -f $PID ;; #reload) # diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/postinst jabber-irc-0.4cvs20080505/debian/postinst --- orig/jabber-irc-0.4cvs20080505/debian/postinst 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/postinst 2010-08-06 04:43:22.000000000 +0200 @@ -25,10 +25,23 @@ set -e case "$1" in configure) + # create jabber user if it doesn't exist + if ! getent passwd | grep -q '^jabber:'; then + if [ ! -d /var/run/jabber ]; then + mkdir /var/run/jabber + fi + adduser --quiet --system --disabled-password \ + --no-create-home --home /var/run/jabber jabber + fi + # update permissions on folders + chown jabber:adm /var/run/jabber/ + chmod 0775 /var/run/jabber/ + chown -R jabber:adm /var/log/jabber/ + chown jabber:adm /etc/pyirct.conf.xml /var/lib/jabber-irc chmod 0640 /etc/pyirct.conf.xml # start the service - /etc/jabber/jabber.d/jabber-irc restart + /etc/init.d/jabber-irc restart ;; diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/postrm jabber-irc-0.4cvs20080505/debian/postrm --- orig/jabber-irc-0.4cvs20080505/debian/postrm 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/postrm 2010-08-06 04:43:49.000000000 +0200 @@ -21,12 +21,37 @@ set -e case "$1" in purge) # remove potentially empty directories if they exist - DIRS="/etc/jabber/jabber.d /etc/jabber /var/run/jabber" + DIRS="/etc/jabber /var/run/jabber" for DIR in $DIRS; do if [ -d $DIR ]; then rmdir --ignore-fail-on-non-empty $DIR fi done + + # find first and last SYSTEM_UID numbers + for LINE in `grep SYSTEM_UID /etc/adduser.conf | grep -v "^#"`; do + case $LINE in + FIRST_SYSTEM_UID*) + FIST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='` + ;; + LAST_SYSTEM_UID*) + LAST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='` + ;; + *) + ;; + esac + done + # remove jabber system account if necessary + if [ -n "$FIST_SYSTEM_UID" ] && [ -n "$LAST_SYSTEM_UID" ]; then + if USERID=`getent passwd jabber | cut -f 3 -d ':'`; then + if [ -n "$USERID" ]; then + if [ "$FIST_SYSTEM_UID" -le "$USERID" ] && \ + [ "$USERID" -le "$LAST_SYSTEM_UID" ]; then + deluser --quiet jabber || true + fi + fi + fi + fi ;; remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/prerm jabber-irc-0.4cvs20080505/debian/prerm --- orig/jabber-irc-0.4cvs20080505/debian/prerm 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/prerm 1970-01-01 01:00:00.000000000 +0100 @@ -1,39 +0,0 @@ -#! /bin/sh -# prerm script for jabber-irc -# -# see: dh_installdeb(1) - -set -e - -# summary of how this script can be called: -# * <prerm> `remove' -# * <old-prerm> `upgrade' <new-version> -# * <new-prerm> `failed-upgrade' <old-version> -# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version> -# * <deconfigured's-prerm> `deconfigure' `in-favour' -# <package-being-installed> <version> `removing' -# <conflicting-package> <version> -# for details, see http://www.debian.org/doc/debian-policy/ or -# the debian-policy package - - -case "$1" in - remove|upgrade|deconfigure) -# install-info --quiet --remove /usr/info/jabber-irc.info.gz - # stop the service - /etc/jabber/jabber.d/jabber-irc stop - ;; - failed-upgrade) - ;; - *) - echo "prerm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - -#DEBHELPER# - -exit 0 diff -Nurp orig/jabber-irc-0.4cvs20080505/debian/rules jabber-irc-0.4cvs20080505/debian/rules --- orig/jabber-irc-0.4cvs20080505/debian/rules 2010-08-06 04:29:11.000000000 +0200 +++ jabber-irc-0.4cvs20080505/debian/rules 2010-08-06 05:10:02.000000000 +0200 @@ -31,26 +31,26 @@ clean: # Add here commands to clean up after the build process. - dh_clean + dh_clean install: build dh_testdir dh_testroot - dh_clean -k + dh_prep dh_installdirs # Add here commands to install the package into debian/jabber-irc. - install -o root -g root -m 755 $(CURDIR)/debian/init.d $(CURDIR)/debian/jabber-irc/etc/jabber/jabber.d/jabber-irc + install -o root -g root -m 755 $(CURDIR)/debian/init.d $(CURDIR)/debian/jabber-irc/etc/init.d/jabber-irc install -o root -g root -m 644 $(CURDIR)/debian/default $(CURDIR)/debian/jabber-irc/etc/default/jabber-irc install -o root -g root -m 644 $(CURDIR)/config_example.xml $(CURDIR)/debian/jabber-irc/etc/pyirct.conf.xml install -o root -g root -m 644 $(CURDIR)/????*.py $(CURDIR)/debian/jabber-irc/usr/lib/jabber-irc -# Build architecture-independent files here. -binary-indep: build install -# We have nothing to do by default. - # Build architecture-dependent files here. binary-arch: build install +# We have nothing to do by default. + +# Build architecture-independent files here. +binary-indep: build install dh_testdir dh_testroot dh_installchangelogs @@ -63,7 +63,7 @@ binary-arch: build install # dh_installemacsen # dh_installpam # dh_installmime -# dh_installinit + dh_installinit # dh_installcron # dh_installinfo dh_installman