Bug#693343: unblock: lyskom-server/2.1.2-13
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package lyskom-server
I've taken over this package and fixed the RC bug #689898 that caused it to be removed
from testing, as well as cleaned up a few other relatively important issues. With this,
I hope that it can be let back in testing.
unblock lyskom-server/2.1.2-13
Debdiff follows (excluding some changes to config.{guess,sub} files.
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/changelog lyskom-server-2.1.2/debian/changelog
--- lyskom-server-2.1.2/debian/changelog 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/changelog 2012-11-15 16:40:46.000000000 +0100
@@ -1,3 +1,37 @@
+lyskom-server (2.1.2-13) unstable; urgency=low
+
+ * New maintainer.
+ * Rename debian/lyskom-server.copyright debian/copyright as a source
+ package should have a debian/copyright file.
+ * Create /var/run/lyskom-server in the init script instead of shipping
+ it with the package (Closes: #689898). Thanks Thomas Goirand.
+ * Drop the $startonboot variable, which is rather pointless since
+ lyskomd is actually started via cron, is disabled there by default,
+ and will start regardless of $startonboot because the status file
+ won't exist.
+ * Fix LSB header in the init script: add $remote_fs and move $local_fs
+ to Required-Start/Required-Stop; delete commas.
+ * Add dependency on rsyslog | system-log-daemon, since the LSB header
+ indicates that lyskomd requires a syslog facility.
+ * Rework and simplify lyskom-server.postinst:
+ * Use dpkg-statoverride to set ownership of data and log directories.
+ * Don't nullify errors; the package should be left in an unconfigured
+ state in such cases. Remove sanity checks.
+ * Simply call adduser with --quiet instead of checking whether the
+ lyskom user already exists.
+ * Set stricter modes on the directories.
+ * Don't delete /var/run/lyskom-server/status in the init script. It is
+ created by komrunning when shutting down lyskomd to keep updateLysKOM
+ from starting lyskomd again.
+ * lyskom-server.postrm: As recommended by policy, don't delete log files
+ until on purge. Also, simply rm -rf /var/lib/lyskom-server
+ /var/log/lyskom-server.
+ * Add dependendy on cron | cron-daemon, since that's how lyskomd is
+ started.
+ * debian/rules: Add build-indep and build-arch targets.
+
+ -- Magnus Holmgren <holmgren@debian.org> Thu, 15 Nov 2012 09:26:58 +0100
+
lyskom-server (2.1.2-12) unstable; urgency=low
* Added Danish translation of Debconf templates.
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/control lyskom-server-2.1.2/debian/control
--- lyskom-server-2.1.2/debian/control 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/control 2012-11-15 16:40:46.000000000 +0100
@@ -1,7 +1,7 @@
Source: lyskom-server
Section: net
Priority: extra
-Maintainer: Peter Krefting <peterk@debian.org>
+Maintainer: Magnus Holmgren <holmgren@debian.org>
Build-Depends: debhelper (>= 5.0), bison, flex, po-debconf, autotools-dev
Standards-Version: 3.8.2
Homepage: http://www.lysator.liu.se/lyskom/lyskom-server/
@@ -10,7 +10,8 @@
Package: lyskom-server
Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, debconf | debconf-2.0, adduser
+Depends: ${shlibs:Depends}, ${misc:Depends}, debconf | debconf-2.0, adduser,
+ rsyslog | system-log-daemon, cron | cron-daemon
Suggests: lyskom-elisp-client | lyskom-tty-client
Homepage: http://www.lysator.liu.se/lyskom/lyskom-server/
Description: Server for the LysKOM conference system
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/copyright lyskom-server-2.1.2/debian/copyright
--- lyskom-server-2.1.2/debian/copyright 1970-01-01 01:00:00.000000000 +0100
+++ lyskom-server-2.1.2/debian/copyright 2012-11-15 16:40:46.000000000 +0100
@@ -0,0 +1,27 @@
+Package: lyskom-server
+Obtained from: ftp://ftp.lysator.liu.se/pub/lyskom/server
+Packaged for Debian by: Peter Krefting <peterk@debian.org>
+
+Copyright (C) 1991-2003 Lysator Academic Computer Association.
+The LysKOM server was written by Lars Aronsson, Thomas Bellman, David Byers,
+Per Cederqvist, Pär Emanuelsson, Peter Eriksson, Linus Tolke, Inge Wallin,
+Lars Willför et.al. Please the AUTHORS file for more information.
+
+ LysKOM is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 1, or (at your
+ option) any later version.
+
+ LysKOM is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with LysKOM. If not, write to Lysator, c/o ISY, Linköping
+ University, SE-581 83 Linköping, SWEDEN, or the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301, USA.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in "/usr/share/common-licenses/GPL".
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/etc_default_lyskom-server lyskom-server-2.1.2/debian/etc_default_lyskom-server
--- lyskom-server-2.1.2/debian/etc_default_lyskom-server 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/etc_default_lyskom-server 2012-11-15 16:40:46.000000000 +0100
@@ -1,6 +1 @@
-# By default, automatic start is disabled. To start automatically on boot,
-# change the following line from NO to YES. Please note that startup is
-# actually handled via /etc/cron.d/lyskom-server, this scripts only signals
-# that start is wanted.
-
-startonboot="NO"
+# Variables used in /etc/init.d/lyskom-server can be set here
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.copyright lyskom-server-2.1.2/debian/lyskom-server.copyright
--- lyskom-server-2.1.2/debian/lyskom-server.copyright 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.copyright 1970-01-01 01:00:00.000000000 +0100
@@ -1,27 +0,0 @@
-Package: lyskom-server
-Obtained from: ftp://ftp.lysator.liu.se/pub/lyskom/server
-Packaged for Debian by: Peter Krefting <peterk@debian.org>
-
-Copyright (C) 1991-2003 Lysator Academic Computer Association.
-The LysKOM server was written by Lars Aronsson, Thomas Bellman, David Byers,
-Per Cederqvist, Pär Emanuelsson, Peter Eriksson, Linus Tolke, Inge Wallin,
-Lars Willför et.al. Please the AUTHORS file for more information.
-
- LysKOM is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 1, or (at your
- option) any later version.
-
- LysKOM is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with LysKOM. If not, write to Lysator, c/o ISY, Linköping
- University, SE-581 83 Linköping, SWEDEN, or the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- 02110-1301, USA.
-
-On Debian GNU/Linux systems, the complete text of the GNU General
-Public License can be found in "/usr/share/common-licenses/GPL".
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.dirs lyskom-server-2.1.2/debian/lyskom-server.dirs
--- lyskom-server-2.1.2/debian/lyskom-server.dirs 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.dirs 2012-11-15 16:40:46.000000000 +0100
@@ -4,4 +4,3 @@
usr/share/lyskom-server/default
var/log/lyskom-server
var/lib/lyskom-server
-var/run/lyskom-server
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.init.d lyskom-server-2.1.2/debian/lyskom-server.init.d
--- lyskom-server-2.1.2/debian/lyskom-server.init.d 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.init.d 2012-11-15 16:40:46.000000000 +0100
@@ -5,10 +5,10 @@
#
### BEGIN INIT INFO
# Provides: lyskom-server
-# Required-Start: $syslog, $network, $time
-# Required-Stop: $syslog, $network, $time
-# Should-Start: $local_fs
-# Should-Stop: $local_fs
+# Required-Start: $syslog $network $time $local_fs $remote_fs
+# Required-Stop: $syslog $network $time $local_fs $remote_fs
+# Should-Start:
+# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop the LysKOM server
@@ -19,6 +19,9 @@
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin
+DESC="LysKOM server"
+NAME=komrunning
+RUNDIR=/var/run/lyskom-server
if [ -f /etc/default/lyskom-server ]; then
. /etc/default/lyskom-server
@@ -26,28 +29,26 @@
test -x /usr/sbin/komrunning || exit 0
-case "$1" in
- start)
- if test "$startonboot" = "NO"; then
- echo "Automatic start of the LysKOM server from /etc/init.d is disabled."
- else
- sh $0 force-start
- fi
- ;;
+. /lib/lsb/init-functions
- force-start)
- echo -n "Signalling start of LysKOM server"
- mkdir -p /var/run/lyskom-server
+if [ ! -d ${RUNDIR} ]; then
+ if ! install -o lyskom -m 755 -d ${RUNDIR}; then
+ log_failure_msg "Failed to create ${RUNDIR}"
+ exit 1
+ fi
+fi
+
+case "$1" in
+ start|force-start)
+ log_begin_msg "Signalling start of ${DESC}"
/usr/sbin/komrunning start
- echo "."
+ log_end_msg $?
;;
stop)
- echo -n "Stopping LysKOM server"
- /usr/sbin/komrunning stop
- rm -f /var/run/lyskom-server/pid
- rm -f /var/run/lyskom-server/status
- echo "."
+ log_begin_msg "Stopping ${DESC}" ${NAME}
+ /usr/sbin/komrunning stop && rm -f ${RUNDIR}/pid
+ log_end_msg $?
;;
restart|force-reload)
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.postinst lyskom-server-2.1.2/debian/lyskom-server.postinst
--- lyskom-server-2.1.2/debian/lyskom-server.postinst 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.postinst 2012-11-15 16:40:46.000000000 +0100
@@ -3,62 +3,34 @@
#
# see: dh_installdeb(1)
-# Add the user 'lyskom' to run the server
-userexist=1
-getent passwd lyskom > /dev/null || userexist=0
-if test "$userexist" = "0"; then
- # User did not exist
- adduser --system --no-create-home --home /dev/null --shell /bin/sh lyskom || echo 'Unable to create user "lyskom"'
-fi
+# Source debconf library.
+. /usr/share/debconf/confmodule
-# Install default database if none exists
if test "$1" = "configure"; then
- if test ! -e /var/lib/lyskom-server/lyskomd-data; then
- if test ! -d /var/lib/lyskom-server; then
- mkdir -p /var/lib/lyskom-server || echo 'Unable to create /var/lib/lyskom-server directory'
- fi
+ # Add the user 'lyskom' to run the server
+ adduser --quiet --system --no-create-home --home /var/lib/lyskom --shell /bin/sh lyskom
- # Source debconf library.
- . /usr/share/debconf/confmodule || echo 'Error communicating with debconf'
+ # Set database to be owned by the 'lyskom' user
+ for f in /var/lib/lyskom-server /var/log/lyskom-server; do
+ if ! dpkg-statoverride --list $f >/dev/null 2>&1; then
+ dpkg-statoverride --update --add lyskom root 0750 $f
+ fi
+ done
+ # Install default database if none exists
+ if [ ! -e /var/lib/lyskom-server/lyskomd-data ]; then
# Get selected database language
- db_get lyskom-server/language || echo 'Error communicating with debconf'
- if test "$RET" = "Swedish"; then
- # Sanity check
- if test -e /usr/share/lyskom-server/default/lyskomd-data; then
- cp -f /usr/share/lyskom-server/default/lyskomd-data /var/lib/lyskom-server/lyskomd-data
- else
- echo 'Unable to locate default database in /usr/share/lyskom-server/default'
- fi
- else
- # Sanity check
- if test -e /usr/share/lyskom-server/default/lyskomd-data-en; then
- cp -f /usr/share/lyskom-server/default/lyskomd-data-en /var/lib/lyskom-server/lyskomd-data
- else
- echo 'Unable to locate default database in /usr/share/lyskom-server/default'
- fi
- fi
- # Sanity check
- if test -e /usr/share/lyskom-server/default/lyskomd-texts; then
- cp -f /usr/share/lyskom-server/default/lyskomd-texts /var/lib/lyskom-server/lyskomd-texts
+ db_get lyskom-server/language
+
+ if [ "$RET" = "Swedish" ]; then
+ install -m 0640 -o lyskom /usr/share/lyskom-server/default/lyskomd-data /var/lib/lyskom-server/lyskomd-data
else
- echo 'Unable to locate default database in /usr/share/lyskom-server/default'
+ install -m 0640 -o lyskom /usr/share/lyskom-server/default/lyskomd-data-en /var/lib/lyskom-server/lyskomd-data
fi
+ install -m 0640 -o lyskom /usr/share/lyskom-server/default/lyskomd-texts /var/lib/lyskom-server/
fi
- # Set database to be owned by the 'lyskom' user
- chown lyskom:nogroup /var/lib/lyskom-server
- chown lyskom:nogroup /var/lib/lyskom-server/lyskomd-data
- chown lyskom:nogroup /var/lib/lyskom-server/lyskomd-texts
-
- # Set log directory to be owned by the 'lyskom' user
- chown lyskom:nogroup /var/log/lyskom-server
-
- # Set pid directory to be owned by the 'lyskom' user
- chown lyskom:nogroup /var/run/lyskom-server
fi
# Do anything debhelper wants to do
#DEBHELPER#
-
-exit 0
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.postrm lyskom-server-2.1.2/debian/lyskom-server.postrm
--- lyskom-server-2.1.2/debian/lyskom-server.postrm 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.postrm 2012-11-15 16:40:46.000000000 +0100
@@ -6,15 +6,6 @@
# Remove run-time files if removing or purging
if test "$1" = "purge" -o "$1" = "remove"; then
- # Remove log directory and files
- if test -d /var/log/lyskom-server; then
- echo 'Removing log files.'
- rm -f /var/log/lyskom-server/server-log
- rm -f /var/log/lyskom-server/lyskomd-log
- rm -f /var/log/lyskom-server/memory-usage
- rmdir /var/log/lyskom-server || echo 'Could not remove /var/log/lyskom-server'
- fi
-
# Remove state directory and files
if test -d /var/run/lyskom-server; then
echo 'Removing state files.'
@@ -26,19 +17,22 @@
# Remove database and user if purging
if test "$1" = "purge"; then
+ for f in /var/lib/lyskom-server /var/log/lyskom-server; do
+ if dpkg-statoverride --list $f >/dev/null 2>&1; then
+ dpkg-statoverride --remove $f
+ fi
+ done
+
+ # Remove log directory and files
+ if test -d /var/log/lyskom-server; then
+ echo 'Removing log files.'
+ rm -rf /var/log/lyskom-server
+ fi
+
# Remove database directory and files
if test -d /var/lib/lyskom-server; then
echo 'Removing LysKOM database.'
- rm -f /var/lib/lyskom-server/lyskomd-data
- rm -f /var/lib/lyskom-server/lyskomd-backup
- rm -f /var/lib/lyskom-server/lyskomd-backup-prev
- rm -f /var/lib/lyskom-server/lyskomd-lock
- rm -f /var/lib/lyskom-server/lyskomd-texts
- rm -f /var/lib/lyskom-server/lyskomd-texts-backup
- rm -f /var/lib/lyskom-server/run
- rm -rf /var/lib/lyskom-server/lyskomd
- rm -rf /var/lib/lyskom-server/lyskomd.cores
- rmdir /var/lib/lyskom-server || echo 'Could not remove /var/lib/lyskom-server'
+ rm -rf /var/lib/lyskom-server
fi
# Remove 'lyskom' user
@@ -49,7 +43,7 @@
if [ -x /usr/sbin/deluser ]; then
# Deluser is installed
echo 'Removing lyskom user.'
- deluser lyskom || echo 'Could not remove lyskom user'
+ deluser --system --quiet lyskom || echo 'Could not remove lyskom user'
fi
fi
fi
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/lyskom-server.README.Debian lyskom-server-2.1.2/debian/lyskom-server.README.Debian
--- lyskom-server-2.1.2/debian/lyskom-server.README.Debian 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/lyskom-server.README.Debian 2012-11-15 16:40:46.000000000 +0100
@@ -1,14 +1,18 @@
LysKOM server for Debian
------------------------
-Please note that the default paths for a number of the included files have
-been moved compared to what is documented in the LysKOM manual. All paths
-have been modified to comply with the FHS. Please see the configuration file
-/etc/lyskom-server/lyskomd.conf for a list of moved files.
+Please note that the default paths for a number of the included files
+have been moved compared to what is documented in the LysKOM
+manual. All paths have been modified to comply with the FHS. Please
+see the configuration file /etc/lyskom-server/lyskomd.conf for a list
+of moved files.
-Also note that the server is not automatically started after install or on
-boot, since the administrator account is initalized with a default password
-of "gazonk" on the initial install. You will need to manually activate the
-server in the files /etc/cron.d/lyskom-server and /etc/default/lyskom-server
+Also note that the server is not automatically started after install
+or on boot, since the administrator account is initalized with a
+default password of "gazonk" on the initial install. You will need to
+manually activate the server in /etc/cron.d/lyskom-server. Especially
+note that the init script doesn't actually start the server; that is
+done by updateLysKOM, which is run via cron. The init script merely
+deletes a file that tells updateLysKOM not to start lyskomd.
- -- Peter Krefting <peterk@debian.org>
+ -- Magnus Holmgren <holmgren@debian.org>, Thu, 15 Nov 2012 08:59:02 +0100
diff -Nru --exclude 'config.*' lyskom-server-2.1.2/debian/rules lyskom-server-2.1.2/debian/rules
--- lyskom-server-2.1.2/debian/rules 2012-11-15 16:40:46.000000000 +0100
+++ lyskom-server-2.1.2/debian/rules 2012-11-15 16:40:46.000000000 +0100
@@ -18,6 +18,8 @@
./configure --prefix=/usr --exec-prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --sysconfdir=/etc/lyskom-server --localstatedir=/var/lib/lyskom-server --enable-ipv6
touch configure-stamp
+build-indep:
+build-arch: build
build: configure-stamp build-stamp
build-stamp:
dh_testdir
@@ -46,9 +48,9 @@
dh_clean -k
dh_installdirs
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
- DESTDIR=$(CURDIR)/debian/lyskom-server $(MAKE) install prefix=$(CURDIR)/debian/lyskom-server
+ DESTDIR=$(CURDIR)/debian/lyskom-server $(MAKE) install
else
- DESTDIR=$(CURDIR)/debian/lyskom-server STRIPPROG=/bin/true $(MAKE) install prefix=$(CURDIR)/debian/lyskom-server
+ DESTDIR=$(CURDIR)/debian/lyskom-server STRIPPROG=/bin/true $(MAKE) install
endif
cp -p db-crypt/db/lyskomd-data debian/lyskom-server/usr/share/lyskom-server/default/
cp -p db-crypt/db/lyskomd-data-en debian/lyskom-server/usr/share/lyskom-server/default/
@@ -88,4 +90,4 @@
dh_builddeb
binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install configure
+.PHONY: build-indep build-arch build clean binary-indep binary-arch binary install configure
Reply to: