summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--dracut/module-setup.sh1
-rw-r--r--dracut/vmklive-conf.sh25
3 files changed, 27 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index b5f83ea..9016221 100644
--- a/Makefile
+++ b/Makefile
@@ -9,8 +9,7 @@ install: all
 	install -d $(DESTDIR)$(SBINDIR)
 	install -m755 mklive.sh $(DESTDIR)$(SBINDIR)/void-mklive
 	install -d $(DESTDIR)$(DRACUTMODDIR)
-	install -m755 dracut/module-setup.sh $(DESTDIR)$(DRACUTMODDIR)
-	install -m755 dracut/vmklive-adduser.sh $(DESTDIR)$(DRACUTMODDIR)
+	install -m755 dracut/*.sh $(DESTDIR)$(DRACUTMODDIR)
 
 clean:
 	-rm -f mklive.sh
diff --git a/dracut/module-setup.sh b/dracut/module-setup.sh
index 34d5120..0e334b8 100644
--- a/dracut/module-setup.sh
+++ b/dracut/module-setup.sh
@@ -13,4 +13,5 @@ depends() {
 install() {
     inst chmod
     inst_hook pre-pivot 01 "$moddir/vmklive-adduser.sh"
+    inst_hook pre-pivot 02 "$moddir/vmklive-conf.sh"
 }
diff --git a/dracut/vmklive-conf.sh b/dracut/vmklive-conf.sh
new file mode 100644
index 0000000..4fe1747
--- /dev/null
+++ b/dracut/vmklive-conf.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
+
+KEYMAP=$(getarg vconsole.keymap)
+FONT=$(getarg vconsole.font)
+FONT_MAP=$(getarg vconsole.font.map)
+FONT_UNIMAP=$(getarg vconsole.font.unimap)
+LOCALE=$(getarg locale.LANG)
+
+if [ -n "$KEYMAP" ]; then
+    sed -i -e "s|^KEYMAP=.*|KEYMAP=$KEYMAP|g" ${NEWROOT}/etc/vconsole.conf
+fi
+if [ -n "$FONT" ]; then
+    sed -i -e "s|^FONT=.*|FONT=$FONT|g" ${NEWROOT}/etc/vconsole.conf
+fi
+if [ -n "$FONT_MAP" ]; then
+    sed -i -e "s|^FONT_MAP=.*|FONT_MAP=$FONT_MAP|g" ${NEWROOT}/etc/vconsole.conf
+fi
+if [ -n "$FONT_UNIMAP" ]; then
+    sed -i -e "s|^FONT_UNIMAP=.*|FONT_UNIMAP=$FONT_UNIMAP|g" ${NEWROOT}/etc/vconsole.conf
+fi
+if [ -n "$LOCALE" ]; then
+    sed -i -e "s|^LANG=.*|LANG=$LOCALE|g" ${NEWROOT}/etc/locale.conf
+fi