locale.sh 691 B

12345678910111213141516171819202122
  1. #!/bin/sh
  2. # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
  3. # ex: ts=8 sw=4 sts=4 et filetype=sh
  4. type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
  5. LOCALE=$(getarg locale.LANG)
  6. [ -z "$LOCALE" ] && LOCALE="en_US.UTF-8"
  7. # also enable this locale in newroot.
  8. echo "LANG=$LOCALE" > $NEWROOT/etc/locale.conf
  9. echo "LC_COLLATE=C" >> $NEWROOT/etc/locale.conf
  10. # set keymap too.
  11. KEYMAP=$(getarg vconsole.keymap)
  12. [ -z "$KEYMAP" ] && KEYMAP="us"
  13. if [ -f ${NEWROOT}/etc/vconsole.conf ]; then
  14. sed -e "s,^KEYMAP=.*,KEYMAP=$KEYMAP," -i $NEWROOT/etc/vconsole.conf
  15. elif [ -f ${NEWROOT}/etc/rc.conf ]; then
  16. sed -e "s,^#KEYMAP=.*,KEYMAP=$KEYMAP," -i $NEWROOT/etc/rc.conf
  17. fi