[arch-projects] [initscripts] [PATCH 04/21] rc.sysinit: Fix setting locale
Kurt J. Bosch
kjb-temp-2009 at alpenjodel.de
Tue Jun 28 09:27:28 EDT 2011
When using process substitution with status(), the resulting /dev/fd/* might get lost before it is actualy used. This happens in case a custom stat_busy() forks a subshell.
---
rc.sysinit | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/rc.sysinit b/rc.sysinit
index fca8b43..a63da9b 100755
--- a/rc.sysinit
+++ b/rc.sysinit
@@ -238,8 +238,9 @@ stat_done
eval 'echo "$HOSTNAME" > /proc/sys/kernel/hostname'
# Flush old locale settings and set user defined locale
-status "Setting Locale: ${LOCALE:=en_US}" \
- install -Tm 0755 <(echo "export LANG=$LOCALE") /etc/profile.d/locale.sh
+stat_busy "Setting Locale: ${LOCALE:=en_US}"
+ echo "export LANG=$LOCALE" > /etc/profile.d/locale.sh &&
+ chmod 0755 /etc/profile.d/locale.sh && stat_done || stat_fail
if [[ ${LOCALE,,} =~ utf ]]; then
stat_busy "Setting Consoles to UTF-8 mode"
--
1.7.1
More information about the arch-projects
mailing list