[Pkg-ltsp-devel] Bug#421762: ltsp-client-builder: Fail to set correct default X keyboard layout

Petter Reinholdtsen pere at hungry.com
Wed May 2 08:24:25 UTC 2007


[Petter Reinholdtsen]
> It still do not work, not sure why.

The problem must have been a human error on the testers side.  I've
tested again, this time without editing the postinst script in d-i
manually, and it worked.  Here is an updated patch, fixing a minor
issue with the preseed file not being available in the chroot where
ltsp-build-client is running.

It might be better to not append to the file pointed to by an existing
--debconf-seeds argument in case that file is part of an installed
debian package.  Such change would require more work on the argument
parser.

diff -ur ltsp-0.99debian11/debian/changelog ltsp-0.99debian11-pere/debian/changelog
--- ltsp-0.99debian11/debian/changelog  2007-01-19 13:31:07.000000000 +0100
+++ ltsp-0.99debian11-pere/debian/changelog     2007-05-02 07:27:55.000000000 +0200
@@ -1,3 +1,10 @@
+ltsp (0.99debian11-0.0.edu.etch.1) unstable; urgency=low
+
+  * Add code in the ltsp-client-builder udeb to pass
+    the d-i keyboard setting to LTSP and X.org. (Closes: #421762)
+
+ -- Petter Reinholdtsen <pere at debian.org>  Wed,  2 May 2007 07:25:44 +0200
+
 ltsp (0.99debian11) unstable; urgency=medium

   * urgency medium, as it fixes an RC bug and important bugs
diff -ur ltsp-0.99debian11/debian/control ltsp-0.99debian11-pere/debian/control
--- ltsp-0.99debian11/debian/control    2007-05-02 10:18:57.000000000 +0200
+++ ltsp-0.99debian11-pere/debian/control       2007-05-02 10:18:51.000000000 +0200
@@ -53,7 +53,7 @@
 Section: debian-installer
 XC-Package-Type: udeb
 Architecture: all
-Depends: ${misc:Depends}, ${shlibs:Depends}, pkgsel
+Depends: ${misc:Depends}, ${shlibs:Depends}, kbd-chooser, pkgsel
 XB-Installer-Menu-Item: 70
 Description: Build an LTSP environment in the installer target
  This udeb bootstraps the LTSP client chroot in the installer target
diff -ur ltsp-0.99debian11/debian/ltsp-client-builder.postinst ltsp-0.99debian11-pere/debian/ltsp-client-buil
der.postinst
--- ltsp-0.99debian11/debian/ltsp-client-builder.postinst       2007-01-11 08:20:46.000000000 +0100
+++ ltsp-0.99debian11-pere/debian/ltsp-client-builder.postinst  2007-05-02 07:25:25.000000000 +0200
@@ -33,12 +33,46 @@

 # if everything is fine, run ltsp-build-client on the target disk

-db_progress START 0 2 ltsp-client-builder/progress
+db_progress START 0 3 ltsp-client-builder/progress

 apt-install ltsp-server

 db_progress STEP 1

+# Make the d-i keyboard layout setting available in the ltsp chroot.
+# It would be better to make a server plugin to do this, but for that
+# to work the keymap name need to be available in /target/.  I was
+# unable to find one in Debian/Etch. [pere 2007-05-01.
+if db_get debian-installer/keymap && [ -n "$RET" ] ; then
+    log "Passing keymap $RET on to LTSP"
+
+    # Parse existing arguments, because only one --debconf-seeds
+    # option is supported by ltsp-build-client
+    if echo "$BUILD_CLIENT_OPTS" | grep -q -- '--debconf-seeds' ; then
+       set -- $BUILD_CLIENT_OPTS
+       while [ ! -z "$1" ] && [ "$1" != "--" ] ; do
+           opt="$1"
+           arg="$2"
+           shift
+           case "$opt" in
+               --debconf-seeds)
+                   SEEDFILE=$arg
+                   shift
+                   ;;
+           esac
+       done
+    else
+       SEEDFILE=/tmp/ltsp-preseed
+       BUILD_CLIENT_OPTS="$BUILD_CLIENT_OPTS --debconf-seeds $SEEDFILE"
+    fi
+    touch /target$SEEDFILE
+    echo "d-i debian-installer/keymap string $RET" >> /target$SEEDFILE
+else
+    log "No keymap setting found.  Not passing any keymap on to LTSP"
+fi
+
+db_progress STEP 1
+
 # workaround for: http://bugs.debian.org/390647
 in-target /bin/touch /etc/resolv.conf





More information about the Pkg-ltsp-devel mailing list