[arch-projects] [initscripts][PATCH 1/2] rc.sysinit: support /etc/localtime as a symlink

Dave Reisner d at falconindy.com
Fri Sep 23 23:27:29 EDT 2011


Signed-off-by: Dave Reisner <dreisner at archlinux.org>
---
 rc.sysinit |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/rc.sysinit b/rc.sysinit
index 9f215c4..17d3cc6 100755
--- a/rc.sysinit
+++ b/rc.sysinit
@@ -221,9 +221,15 @@ run_hook sysinit_postmount
 
 status "Activating Swap" swapon -a
 
-[[ $TIMEZONE ]] &&
-	status "Configuring Time Zone" \
+if [[ $TIMEZONE && -f /usr/share/zoneinfo/$TIMEZONE ]]; then
+	stat_busy "Configuring Time Zone"
+	if [[ ! -L /etc/localtime ]]; then
 		cp --remove-destination "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
+	elif [[ ! /etc/localtime -ef /usr/share/zoneinfo/$TIMEZONE ]]; then
+		ln -sf "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
+	fi
+	(( $? == 0 )) && stat_done || stat_fail
+fi
 
 RANDOM_SEED=/var/lib/misc/random-seed
 [[ -f $RANDOM_SEED ]] &&
-- 
1.7.6.3



More information about the arch-projects mailing list