aboutsummaryrefslogtreecommitdiff
path: root/locale.sh
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2011-10-17 20:55:38 +0200
committerTom Gundersen <teg@jklm.no>2011-10-18 09:36:22 +0200
commit137a7347ff975e4988d7fd999a0a6c32fee0464b (patch)
treef07ced1072d2b204d80e063e3a75d7a80d8786b4 /locale.sh
parent4f4681a94923e69b9e078db6f2cae585ecbbb612 (diff)
downloadinitscripts-137a7347ff975e4988d7fd999a0a6c32fee0464b.tar.xz
locale.sh: support /etc/locale.conf
This is mainly to support non-bash shells that cannot source rc.conf. The format of /etc/locale.conf is described here: <http://0pointer.de/public/systemd-man/locale.conf.html>. If LANG is not set in locale.conf, then we fall back to LOCALE from rc.conf, as before. Signed-off-by: Tom Gundersen <teg@jklm.no>
Diffstat (limited to 'locale.sh')
-rw-r--r--locale.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/locale.sh b/locale.sh
index 6723f95..e774659 100644
--- a/locale.sh
+++ b/locale.sh
@@ -1,3 +1,10 @@
-. /etc/rc.conf
+if [ -s /etc/rc.conf ]; then
+ LANG=$(. /etc/rc.conf 2> /dev/null ; echo "${LOCALE:=en_US.UTF-8}")
+fi
+if [ -s /etc/locale.conf ]; then
+ . /etc/locale.conf
+fi
-export LANG=${LOCALE:=en_US.UTF-8}
+export LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE
+export LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS
+export LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION