summaryrefslogtreecommitdiff
path: root/mkosi.build
diff options
context:
space:
mode:
authorDaan De Meyer <daan.j.demeyer@gmail.com>2020-12-06 18:16:00 +0000
committerDaan De Meyer <daan.j.demeyer@gmail.com>2020-12-06 22:11:11 +0000
commit5e577e1737a4fd603067536b3b21d32f7d180fee (patch)
tree02bd344f4bd2c3f0d0321057b991d7015fa5db59 /mkosi.build
parent3dab2a46971dd5493c6ca80e9e2504a1a0b9bcb7 (diff)
downloadsystemd-5e577e1737a4fd603067536b3b21d32f7d180fee.tar.gz
mkosi: Silence locale checking in mkosi.build
Avoid warning and error logs from locale charmap and export LC_CTYPE by piping to dev/null and checking if locales are available before using them.
Diffstat (limited to 'mkosi.build')
-rwxr-xr-xmkosi.build22
1 files changed, 11 insertions, 11 deletions
diff --git a/mkosi.build b/mkosi.build
index 113d2cdd55..f170f9b957 100755
--- a/mkosi.build
+++ b/mkosi.build
@@ -21,21 +21,21 @@ umask 022
# So let's ensure we're running under UTF-8.
#
# If our current locale already is UTF-8, then we don't need to do anything:
-if [ "$(locale charmap)" != "UTF-8" ] ; then
+if [ "$(locale charmap 2> /dev/null)" != "UTF-8" ] ; then
# Try using C.UTF-8 locale, if available. This locale is not shipped
# by upstream glibc, so it's not available in all distros.
# (In particular, it's not available in Arch Linux.)
- export LC_CTYPE=C.UTF-8
- if [ "$(locale charmap)" != "UTF-8" ] ; then
- # Finally, try something like en_US.UTF-8, which should be
- # available in Arch Linux, but is not present in Debian's
- # minimal image in our mkosi config.
+ if locale -a | grep -q -E "C.UTF-8|C.utf8"; then
+ export LC_CTYPE=C.UTF-8
+ # Finally, try something like en_US.UTF-8, which should be
+ # available in Arch Linux, but is not present in Debian's
+ # minimal image in our mkosi config.
+ elif locale -a | grep -q en_US.utf8; then
export LC_CTYPE=en_US.UTF-8
- if [ "$(locale charmap)" != "UTF-8" ] ; then
- # If nothing works, fail early.
- echo "*** Could not find a valid locale that supports UTF-8. ***" >&2
- exit 1
- fi
+ else
+ # If nothing works, fail early.
+ echo "*** Could not find a valid locale that supports UTF-8. ***" >&2
+ exit 1
fi
fi