Skip to content

Commit a8c926b

Browse files
committed
try flexible locale support
1 parent 0bcb322 commit a8c926b

File tree

2 files changed

+17
-14
lines changed

2 files changed

+17
-14
lines changed

install.sh

+15-4
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,21 @@ confirm_password() {
3030
}
3131

3232
# Load keymap
33-
until [ "$MY_KEYMAP" = "us" ] || [ "$MY_KEYMAP" = "de" ]; do
34-
printf "Keymap (us/de): " && read -r MY_KEYMAP
35-
[ ! "$MY_KEYMAP" ] && MY_KEYMAP="us"
33+
until grep "^#*$LANGCODE\.UTF-8 UTF-8 $" /etc/locale.gen; do
34+
printf "Language (en_US, de_DE, etc.): " && read -r LANGCODE
35+
[ ! "$LANGCODE" ] && LANGCODE="en_US"
3636
done
37+
case "$LANGCODE" in
38+
"en_GB")
39+
MY_KEYMAP="uk"
40+
;;
41+
"en_US")
42+
MY_KEYMAP="us"
43+
;;
44+
*)
45+
MY_KEYMAP="de"
46+
;;
47+
esac
3748
sudo loadkeys "$MY_KEYMAP"
3849

3950
# Check boot mode
@@ -114,6 +125,6 @@ sudo MY_INIT="$MY_INIT" MY_DISK="$MY_DISK" PART1="$PART1" PART2="$PART2" \
114125
sudo cp src/iamchroot.sh /mnt/root/ &&
115126
sudo MY_INIT="$MY_INIT" PART2="$PART2" MY_FS="$MY_FS" ENCRYPTED="$ENCRYPTED" \
116127
REGION_CITY="$REGION_CITY" MY_HOSTNAME="$MY_HOSTNAME" CRYPTPASS="$CRYPTPASS" \
117-
ROOT_PASSWORD="$ROOT_PASSWORD" MY_KEYMAP="$MY_KEYMAP" \
128+
ROOT_PASSWORD="$ROOT_PASSWORD" LANGCODE="$LANGCODE" MY_KEYMAP="$MY_KEYMAP" \
118129
artix-chroot /mnt sh -ec './root/iamchroot.sh; rm /root/iamchroot.sh; exit' &&
119130
printf '\nYou may now poweroff.\n'

src/iamchroot.sh

+2-10
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,9 @@ ln -sf /usr/share/zoneinfo/"$REGION_CITY" /etc/localtime
2424
hwclock --systohc
2525

2626
# Localization
27-
case "$MY_KEYMAP" in
28-
"de")
29-
langcode="de_DE"
30-
;;
31-
"us")
32-
langcode="en_US"
33-
;;
34-
esac
35-
printf "%s.UTF-8 UTF-8\n" "$langcode" >>/etc/locale.gen
27+
printf "%s.UTF-8 UTF-8\n" "$LANGCODE" >>/etc/locale.gen
3628
locale-gen
37-
printf "LANG=%s.UTF-8\n" "$langcode" >/etc/locale.conf
29+
printf "LANG=%s.UTF-8\n" "$LANGCODE" >/etc/locale.conf
3830
printf "KEYMAP=%s\n" "$MY_KEYMAP" >/etc/vconsole.conf
3931

4032
# Host stuff

0 commit comments

Comments
 (0)