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

Petter Reinholdtsen pere at hungry.com
Tue May 1 20:40:25 UTC 2007


[Oliver Grawert]
> as discussed on IRC it would be preferable to set such things from
> an ltsp-build-client plugin, so eople not installing through d-i get
> the benefit as well. i suggest to have a look at the
> server/plugins/ltsp-build-client/Ubuntu/025-locales plugin we use in
> feisty, probaly you can just add some bits to the debian equivalent.

I agree.  The problem is that I am unable to find the name of the
keymap used in /etc/ on a Debian/Etch installation, so there is no
value to copy into the ltsp chroot. :(

I understand the console-setup package will solve this, but not for
etch, I suspect.

Here is an updated patch, to work even if $BUILD_CLIENT_OPTS already
include one --debconf-seeds argument, like it do for debian-edu.  It
still do not work, not sure why.  It seem to me that 'db_get
debian-installer/keymap' return nothing, despite the fact that
'debconf-get debian-installer/keymap' return 'no-latin1' when I call
it from the command line on tty2 in d-i.  Clues welcome?

pere at minerva:~/src/debian/ltsp/bzr$ diff -ur ltsp-0.99debian11*
diff -ur ltsp-0.99debian11/debian/control ltsp-0.99debian11-pere/debian/control
--- ltsp-0.99debian11/debian/control    2007-05-01 12:38:35.000000000 +0200
+++ ltsp-0.99debian11-pere/debian/control       2007-01-11 08:20:46.000000000 +0100
@@ -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
Only in ltsp-0.99debian11/debian: control.~1~
diff -ur ltsp-0.99debian11/debian/ltsp-client-builder.postinst ltsp-0.99debian11-pere/debian/ltsp-client-builder.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-01 21:48:21.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 $SEEDFILE
+    echo "d-i debian-installer/keymap string $RET" >> $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