[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#565416: update-initramfs: KEYMAP option fails to work due to missing



I have attached a patch that makes the keymap hook consider
/etc/console-setup/cached.kmap.gz.

I have also added gunzip to the initramfs because otherwise loadkeys complained
that it was missing and failed to load the keymap.
diff --git a/hooks/keymap b/hooks/keymap
index a2b1b08..284cfb1 100755
--- a/hooks/keymap
+++ b/hooks/keymap
@@ -21,13 +21,20 @@ if [ "$KEYMAP" != "y" ] && [ "$KEYMAP" != "Y" ]; then
 fi
 
 # Step 1 - Basic tools
-if [ ! -x /bin/loadkeys ] || [ ! -r /etc/console/boottime.kmap.gz ]; then
+if [ ! -x /bin/loadkeys ] ||
+ ! [ -r /etc/console/boottime.kmap.gz -o -r /etc/console-setup/cached.kmap.gz ]
+then
 	exit 0
 fi
 
 . /usr/share/initramfs-tools/hook-functions
 copy_exec /bin/loadkeys /bin
-cp /etc/console/boottime.kmap.gz ${DESTDIR}/etc/
+
+if [ -e /etc/console-setup/cached.kmap.gz ]; then
+	cp /etc/console-setup/cached.kmap.gz ${DESTDIR}/etc/boottime.kmap.gz
+else
+	cp /etc/console/boottime.kmap.gz ${DESTDIR}/etc/
+fi
 
 # Step 2 - Check for UTF8 console
 if [ ! -x /usr/bin/kbd_mode ]; then
diff --git a/hooks/klibc b/hooks/klibc
index 56f49ef..663e22c 100755
--- a/hooks/klibc
+++ b/hooks/klibc
@@ -18,7 +18,7 @@ esac
 # klibc
 ln -s /usr/lib/klibc/bin/* ${DESTDIR}/bin
 ln -s /lib/klibc-*.so ${DESTDIR}/lib
-rm -f ${DESTDIR}/bin/kinit* ${DESTDIR}/bin/gzip ${DESTDIR}/bin/zcat ${DESTDIR}/bin/gunzip
+rm -f ${DESTDIR}/bin/kinit* ${DESTDIR}/bin/gzip ${DESTDIR}/bin/zcat
 if [ "${BUSYBOX}" = "n" ] || [ ! -e ${BUSYBOXDIR}/busybox ]; then
 	mv ${DESTDIR}/bin/sh.shared ${DESTDIR}/bin/sh
 fi

Reply to: