]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
i18n: do not use systemd-vconsole-setup
authorAndrey Borzenkov <arvidjaar@gmail.com>
Sat, 6 Nov 2010 21:14:49 +0000 (00:14 +0300)
committerHarald Hoyer <harald@redhat.com>
Wed, 10 Nov 2010 14:53:04 +0000 (15:53 +0100)
systemd-vconsole-setup was not designed to be run from udevd.
It checks locale environment to decide, whether UNICODE should
be enabled or disabled. Normally environment is setup by
systemd; but the only environment available in udev rules is
those from device properties. It means systemd-vconsole-setup
always assumes default C locale and disables UNICODE.

Revert to using built-in console_init which explicitly
imports locale settings from /etc/vconsole.conf. Alternative
is to revert 6545b9d7 and call console_init directly :)

Additionally patch fixes console_init to use new namespace as
well as ensures that default font is always installed.

Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
modules.d/10i18n/console_init
modules.d/10i18n/install

index e6f2da407e008641856535d91ab28930d60008d7..bdd39b00d87a5454af53bee13f73fa197a9d1540 100755 (executable)
@@ -4,7 +4,7 @@
 
 [ -e /etc/vconsole.conf ] && . /etc/vconsole.conf
 
-DEFAULT_SYSFONT=LatArCyrHeb-16
+DEFAULT_FONT=LatArCyrHeb-16
 DEFAULT_KEYMAP=/etc/sysconfig/console/default.kmap
 
 set_keyboard() {
@@ -42,11 +42,11 @@ set_keymap() {
 set_font() {
     local dev=$1; local trans=''; local uni=''
 
-    [ -z "${SYSFONT}" ] && SYSFONT=${DEFAULT_SYSFONT}
-    [ -n "${CONTRANS}" ] && trans="-m ${CONTRANS}"
-    [ -n "${UNIMAP}" ] && uni="-u ${UNIMAP}"
+    [ -z "${FONT}" ] && FONT=${DEFAULT_FONT}
+    [ -n "${FONT_MAP}" ] && trans="-m ${FONT_MAP}"
+    [ -n "${FONT_UNIMAP}" ] && uni="-u ${FONT_UNIMAP}"
 
-    setfont ${SYSFONT} -C ${dev} ${trans} ${uni}
+    setfont ${FONT} -C ${dev} ${trans} ${uni}
 }
 
 dev_close() {
index d8647c0965c265e80e9d35b1915ef121ceca5779..96d563d68a1d64c8592916ec1a3e98709c4ffced 100755 (executable)
@@ -73,13 +73,7 @@ gather_vars() {
 install_base() {
     dracut_install setfont loadkeys kbd_mode stty
 
-    if [ -x /lib/systemd/systemd-vconsole-setup ]; then
-        dracut_install /lib/systemd/systemd-vconsole-setup
-        inst_dir /lib/udev
-        ln -s /lib/systemd/systemd-vconsole-setup "${initdir}/lib/udev/console_init"
-    else
-        inst ${moddir}/console_init /lib/udev/console_init
-    fi
+    inst ${moddir}/console_init /lib/udev/console_init
     inst_rules ${moddir}/10-console.rules
     inst_hook cmdline 20 "${moddir}/parse-i18n.sh"
 }
@@ -123,9 +117,13 @@ install_local_i18n() {
 
     inst_opt_decompress ${KEYMAPS}
 
-    [[ ${FONT} ]] || FONT=${DEFAULT_FONT}
-    FONT=${FONT%.psf*}
-    inst_opt_decompress ${kbddir}/consolefonts/${FONT}.*
+    inst_opt_decompress ${kbddir}/consolefonts/${DEFAULT_FONT}.*
+
+    if [[ ${FONT} ]]
+    then
+        FONT=${FONT%.psf*}
+        inst_opt_decompress ${kbddir}/consolefonts/${FONT}.*
+    fi
 
     if [[ ${FONT_MAP} ]]
     then