summaryrefslogtreecommitdiff
path: root/libre-testing/filesystem/locale.sh
diff options
context:
space:
mode:
Diffstat (limited to 'libre-testing/filesystem/locale.sh')
-rw-r--r--libre-testing/filesystem/locale.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/libre-testing/filesystem/locale.sh b/libre-testing/filesystem/locale.sh
new file mode 100644
index 000000000..48dd748da
--- /dev/null
+++ b/libre-testing/filesystem/locale.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# load locale.conf in XDG paths.
+# /etc/locale.conf loads and overrides by kernel command line is done by systemd
+# But we override it here, see FS#56688
+if [ -z "$LANG" ]; then
+ if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then
+ . "$XDG_CONFIG_HOME/locale.conf"
+ elif [ -n "$HOME" ] && [ -r "$HOME/.config/locale.conf" ]; then
+ . "$HOME/.config/locale.conf"
+ elif [ -r /etc/locale.conf ]; then
+ . /etc/locale.conf
+ fi
+fi
+
+# define default LANG to C if not already defined
+LANG=${LANG:-C}
+
+# export all locale (7) variables when they exist
+export LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY \
+ LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT \
+ LC_IDENTIFICATION