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.
This commit is contained in:
parent
3dab2a4697
commit
5e577e1737
|
@ -21,23 +21,23 @@ umask 022
|
||||||
# So let's ensure we're running under UTF-8.
|
# 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 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
|
# Try using C.UTF-8 locale, if available. This locale is not shipped
|
||||||
# by upstream glibc, so it's not available in all distros.
|
# by upstream glibc, so it's not available in all distros.
|
||||||
# (In particular, it's not available in Arch Linux.)
|
# (In particular, it's not available in Arch Linux.)
|
||||||
|
if locale -a | grep -q -E "C.UTF-8|C.utf8"; then
|
||||||
export LC_CTYPE=C.UTF-8
|
export LC_CTYPE=C.UTF-8
|
||||||
if [ "$(locale charmap)" != "UTF-8" ] ; then
|
|
||||||
# Finally, try something like en_US.UTF-8, which should be
|
# Finally, try something like en_US.UTF-8, which should be
|
||||||
# available in Arch Linux, but is not present in Debian's
|
# available in Arch Linux, but is not present in Debian's
|
||||||
# minimal image in our mkosi config.
|
# minimal image in our mkosi config.
|
||||||
|
elif locale -a | grep -q en_US.utf8; then
|
||||||
export LC_CTYPE=en_US.UTF-8
|
export LC_CTYPE=en_US.UTF-8
|
||||||
if [ "$(locale charmap)" != "UTF-8" ] ; then
|
else
|
||||||
# If nothing works, fail early.
|
# If nothing works, fail early.
|
||||||
echo "*** Could not find a valid locale that supports UTF-8. ***" >&2
|
echo "*** Could not find a valid locale that supports UTF-8. ***" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f "$BUILDDIR"/build.ninja ] ; then
|
if [ ! -f "$BUILDDIR"/build.ninja ] ; then
|
||||||
sysvinit_path=`realpath /etc/init.d`
|
sysvinit_path=`realpath /etc/init.d`
|
||||||
|
|
Loading…
Reference in New Issue