Package: rsync Version: 2.6.8-2 Severity: wishlist Tags: patch Hi,
Can you please convert rsync's init script to use LSB init functions? This abstraction opens the gate for doing fancy stuff like boot logging, graphical boot splashes, etc. I attach the Ubuntu patch for your convenience. Thank you! Martin -- Martin Pitt http://www.piware.de Ubuntu Developer http://www.ubuntu.com Debian Developer http://www.debian.org In a world without walls and fences, who needs Windows and Gates?
diff -u rsync-2.6.8/debian/control rsync-2.6.8/debian/control
--- rsync-2.6.8/debian/control
+++ rsync-2.6.8/debian/control
@@ -7,7 +7,7 @@
Package: rsync
Architecture: any
-Depends: ${shlibs:Depends}
+Depends: ${shlibs:Depends}, lsb-base (>= 3.0)
Suggests: openssh-client, openssh-server
Description: fast remote file copy program (like rcp)
rsync is a program that allows files to be copied to and from remote
diff -u rsync-2.6.8/debian/changelog rsync-2.6.8/debian/changelog
--- rsync-2.6.8/debian/init.d
+++ rsync-2.6.8/debian/init.d
@@ -12,14 +12,17 @@
test -x $DAEMON || exit 0
+. /lib/lsb/init-functions
+. /etc/default/rcS
+
if [ -s $RSYNC_DEFAULTS_FILE ]; then
. $RSYNC_DEFAULTS_FILE
case "x$RSYNC_ENABLE" in
xtrue|xfalse) ;;
xinetd) exit 0
;;
- *) echo "Value of RSYNC_ENABLE in $RSYNC_DEFAULTS_FILE
must be either 'true' or 'false';"
- echo "not starting rsync daemon."
+ *) log_failure_msg "Value of RSYNC_ENABLE in
$RSYNC_DEFAULTS_FILE must be either 'true' or 'false';"
+ log_failure_msg "not starting rsync daemon."
exit 1
;;
esac
@@ -38,59 +41,57 @@
case "$1" in
start)
if "$RSYNC_ENABLE"; then
- echo -n "Starting rsync daemon: rsync"
+ log_begin_msg "Starting rsync daemon: rsync"
if [ -s /var/run/rsync.pid ] && kill -0 $(cat /var/run/rsync.pid)
>/dev/null 2>&1; then
- echo " apparently already running."
exit 0
fi
if [ ! -s "$RSYNC_CONFIG_FILE" ]; then
- echo " missing or empty config file $RSYNC_CONFIG_FILE"
+ log_failure_msg " missing or empty config file
$RSYNC_CONFIG_FILE"
+ log_end_msg 1
exit 1
fi
start-stop-daemon --start --quiet --background \
--pidfile /var/run/rsync.pid --make-pidfile \
$RSYNC_NICE_PARM --exec /usr/bin/rsync \
-- --no-detach --daemon --config "$RSYNC_CONFIG_FILE"
$RSYNC_OPTS
- echo "."
+ log_end_msg $?
else
if [ -s "$RSYNC_CONFIG_FILE" ]; then
echo "rsync daemon not enabled in /etc/default/rsync"
+ [ "$VERBOSE" != no ] && log_success_msg "rsync daemon not
enabled in /etc/default/rsync, not starting..."
fi
fi
;;
stop)
- echo -n "Stopping rsync daemon: rsync"
+ log_begin_msg "Stopping rsync daemon: rsync"
start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/rsync.pid
+ log_end_msg $?
rm -f /var/run/rsync.pid
- echo "."
;;
reload|force-reload)
- echo "Reloading rsync daemon: not needed, as the daemon"
- echo "re-reads the config file whenever a client connects."
+ log_warning_msg "Reloading rsync daemon: not needed, as the daemon"
+ log_warning_msg "re-reads the config file whenever a client connects."
;;
restart)
set +e
if $RSYNC_ENABLE; then
- echo -n "Restarting rsync daemon: rsync"
+ log_begin_msg "Restarting rsync daemon: rsync"
if [ -s /var/run/rsync.pid ] && kill -0 $(cat /var/run/rsync.pid)
>/dev/null 2>&1; then
start-stop-daemon --stop --quiet --oknodo --pidfile
/var/run/rsync.pid || true
sleep 1
else
rm -f /var/run/rsync.pid
fi
- if ! start-stop-daemon --start --quiet --background \
+ start-stop-daemon --start --quiet --background \
--pidfile /var/run/rsync.pid --make-pidfile \
$RSYNC_NICE_PARM --exec /usr/bin/rsync \
-- --no-detach --daemon --config "$RSYNC_CONFIG_FILE"
$RSYNC_OPTS
- then
- echo "start failed?"
- rm -f /var/run/rsync.pid
- fi
- echo "."
+ log_end_msg $?
+ rm -f /var/run/rsync.pid
else
- echo "rsync daemon not enabled in /etc/default/rsync"
+ [ "$VERBOSE" != no ] && log_success_msg "rsync daemon not enabled
in /etc/default/rsync, not starting..."
fi
;;
signature.asc
Description: Digital signature

