Control: tags 701916 pending Control: tags 700881 pending Committed the following to the ltsp-debian-packaging bzr branch:
diff -Nru ltsp-5.4.2/debian/changelog ltsp-5.4.2/debian/changelog --- ltsp-5.4.2/debian/changelog 2013-01-08 22:01:18.000000000 -0800 +++ ltsp-5.4.2/debian/changelog 2013-02-28 17:46:18.000000000 -0800 @@ -1,3 +1,15 @@ +ltsp (5.4.2-6) UNRELEASED; urgency=low + + * Add patch to run jetpipe from ltsp-client-core init script rather than + init-ltsp.d hook (Closes: #700881). Running from init-ltsp.d is far too + early in the boot process and causes daemonization to fail, which stops + boot from continuing. Thanks to James McQuillan for the report. + * Avoid data loss with fatclients or localapps by killing local user + processes at end of session (LP: #1093144, Closes: #701916). + Thanks to Alkis Georgopoulos for the patch! + + -- Vagrant Cascadian <vagr...@debian.org> Mon, 18 Feb 2013 13:50:35 -0800 + ltsp (5.4.2-5) unstable; urgency=low * ltsp-client-core: Depend on initramfs-tools 0.99, to ensure /run is diff -Nru ltsp-5.4.2/debian/patches/jetpipe-from-ltsp-client-core-init-script ltsp-5.4.2/debian/patches/jetpipe-from-ltsp-client-core-init-script --- ltsp-5.4.2/debian/patches/jetpipe-from-ltsp-client-core-init-script 1969-12-31 16:00:00.000000000 -0800 +++ ltsp-5.4.2/debian/patches/jetpipe-from-ltsp-client-core-init-script 2013-02-18 14:14:37.000000000 -0800 @@ -0,0 +1,82 @@ +Author: Vagrant Cascadian <vagr...@debian.org> +Bug-Debian: http://bugs.debian.org/700881 +Upstream-Bug: https://bugs.launchpad.net/ltsp/+bug/996533 + +Start jetpipe from ltsp-client-core init script, as it fails to daemonize when +executed from init-ltsp.d, which is run before /sbin/init is started. + +Index: ltsp-5.4.2/client/initscripts/ltsp-core +=================================================================== +--- ltsp-5.4.2.orig/client/initscripts/ltsp-core 2013-02-18 14:07:20.509826079 -0800 ++++ ltsp-5.4.2/client/initscripts/ltsp-core 2013-02-18 14:07:25.593851287 -0800 +@@ -35,6 +35,33 @@ + . /lib/lsb/init-functions + . /usr/share/ltsp/ltsp-init-common + ++start_printers() { ++for I in 0 1 2; do ++ eval PRINTER_DEVICE=\$\{PRINTER_${I}_DEVICE\} ++ if [ -n "${PRINTER_DEVICE}" ]; then ++ eval PORT=\$\{PRINTER_${I}_PORT:="910${I}"\} ++ eval BAUD=\$\{PRINTER_${I}_SPEED:-"9600"\} ++ eval SIZE=\$\{PRINTER_${I}_DATABITS:-"8"\} ++ eval PARITY=\$\{PRINTER_${I}_PARITY:-"none"\} ++ eval FLOW=\$\{PRINTER_${I}_FLOWCTRL:-"soft"\} ++ ++ JETPIPE_ARGS= ++ [ -n "$BAUD" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -b ${BAUD}" ++ [ -n "$SIZE" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -y ${SIZE}" ++ [ -n "$PARITY" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -p ${PARITY}" ++ if [ -n "$FLOW" ]; then ++ if [ "$FLOW" = "soft" ]; then ++ JETPIPE_ARGS="${JETPIPE_ARGS} -x" ++ else ++ JETPIPE_ARGS="${JETPIPE_ARGS} -r" ++ fi ++ fi ++ ++ /usr/sbin/jetpipe ${JETPIPE_ARGS} ${PRINTER_DEVICE} ${PORT} ++ fi ++done ++} ++ + case "$1" in + start) + log_action_begin_msg "Starting LTSP client..." +@@ -48,6 +75,7 @@ + /bin/plymouth quit --retain-splash + fi + ++ start_printers || true + start_screen_sessions || true + start_sound || true + +Index: ltsp-5.4.2/client/share/ltsp/init-ltsp.d/50-jetpipe +=================================================================== +--- ltsp-5.4.2.orig/client/share/ltsp/init-ltsp.d/50-jetpipe 2013-02-18 14:07:20.509826079 -0800 ++++ /dev/null 1970-01-01 00:00:00.000000000 +0000 +@@ -1,24 +0,0 @@ +-for I in 0 1 2; do +- eval PRINTER_DEVICE=\$\{PRINTER_${I}_DEVICE\} +- if [ -n "${PRINTER_DEVICE}" ]; then +- eval PORT=\$\{PRINTER_${I}_PORT:="910${I}"\} +- eval BAUD=\$\{PRINTER_${I}_SPEED:-"9600"\} +- eval SIZE=\$\{PRINTER_${I}_DATABITS:-"8"\} +- eval PARITY=\$\{PRINTER_${I}_PARITY:-"none"\} +- eval FLOW=\$\{PRINTER_${I}_FLOWCTRL:-"soft"\} +- +- JETPIPE_ARGS= +- [ -n "$BAUD" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -b ${BAUD}" +- [ -n "$SIZE" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -y ${SIZE}" +- [ -n "$PARITY" ] && JETPIPE_ARGS="${JETPIPE_ARGS} -p ${PARITY}" +- if [ -n "$FLOW" ]; then +- if [ "$FLOW" = "soft" ]; then +- JETPIPE_ARGS="${JETPIPE_ARGS} -x" +- else +- JETPIPE_ARGS="${JETPIPE_ARGS} -r" +- fi +- fi +- +- /usr/sbin/jetpipe ${JETPIPE_ARGS} ${PRINTER_DEVICE} ${PORT} +- fi +-done diff -Nru ltsp-5.4.2/debian/patches/kill-local-processes ltsp-5.4.2/debian/patches/kill-local-processes --- ltsp-5.4.2/debian/patches/kill-local-processes 1969-12-31 16:00:00.000000000 -0800 +++ ltsp-5.4.2/debian/patches/kill-local-processes 2013-02-28 17:19:10.000000000 -0800 @@ -0,0 +1,53 @@ + 2462 Alkis Georgopoulos 2013-02-27 + revision-id:alk...@gmail.com-20130227091132-h2ql7stdqy42yhx8 + Kill local user processes on logout (LP: #1093144). + +=== modified file 'client/localapps/ldm-rc.d/X99-zlocalapps-cleanup' +--- old/client/localapps/ldm-rc.d/X99-zlocalapps-cleanup 2013-02-27 09:09:17 +0000 ++++ new/client/localapps/ldm-rc.d/X99-zlocalapps-cleanup 2013-02-27 09:11:32 +0000 +@@ -1,9 +1,4 @@ + if boolean_is_true "$LOCAL_APPS"; then +- # Copy back passwd and group +- for i in passwd group; do +- [ -e "${LOCALAPPS_CACHE}/${i}" ] && cp "${LOCALAPPS_CACHE}/${i}" /etc/${i} +- done +- + # Clean up cups config + [ -r "/etc/cups/client.conf" ] && rm -f /etc/cups/client.conf + +@@ -16,6 +11,22 @@ + + # Unmount sshfs and remove the mount dir + if [ -n "$SSHFS_HOME" ]; then ++ if [ -n "$LDM_USERNAME" ]; then ++ # The user processes need to be terminated before $LDM_HOME gets ++ # unmounted, otherwise they end up writing their data in the local ++ # tmpfs filesystem. ++ # Give them up to 3 seconds to terminate, then kill them. ++ pkill -u "$LDM_USERNAME" ++ i=0 ++ while pgrep -u "$LDM_USERNAME" >/dev/null; do ++ if [ "$i" -ge 3 ]; then ++ pkill -KILL -u "$LDM_USERNAME" ++ break ++ fi ++ sleep 1 ++ i=$(($i+1)) ++ done ++ fi + fusermount -uqz ${LDM_HOME} + rmdir ${LDM_HOME} + fi +@@ -32,6 +43,11 @@ + fi + + rm $LOCALAPPSD_PIDFILE ++ ++ # Copy back passwd and group ++ for i in passwd group; do ++ [ -e "${LOCALAPPS_CACHE}/${i}" ] && cp "${LOCALAPPS_CACHE}/${i}" /etc/${i} ++ done + fi + + # Clean up remote apps tmpdir + diff -Nru ltsp-5.4.2/debian/patches/series ltsp-5.4.2/debian/patches/series --- ltsp-5.4.2/debian/patches/series 2012-11-20 21:27:32.000000000 -0800 +++ ltsp-5.4.2/debian/patches/series 2013-02-28 17:46:38.000000000 -0800 @@ -10,3 +10,5 @@ move-ltspconfig-cache fatclients-return-0 cryptsetup-swap-with-nbd +jetpipe-from-ltsp-client-core-init-script +kill-local-processes I don't have time to test and upload this weekend, but should be able to get to it by 2013-03-05 or so... live well, vagrant -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org