]> arthur.barton.de Git - ConfigScripts.git/blobdiff - install.sh
Rewrap script line to 80 characters
[ConfigScripts.git] / install.sh
index 372606925ba93e25e4582420807f656f5e638678..ddf2a3da5f9fca638d6dd26729f499006fe1deec 100755 (executable)
@@ -32,50 +32,74 @@ Copy_File() {
        Msg "- OK.\n"
 }
 
-[ -n "$UID" ] || UID=`id -u`
-export UID
+Config_System() {
+       if [ "$UID" = "0" ]; then
+               Msg "Starting system configuration:\n"
+               Msg " - bash shell:\n"
+               if [ -e /etc/bash.bashrc ]; then
+                       Copy_File sys/bashrc /etc/bash.bashrc root 644
+               else
+                       Copy_File sys/bashrc /etc/bashrc root 644
+               fi
+               Copy_File sys/profile /etc/profile root 644
+       else
+               Msg "Not running with root privileges - system configuration SKIPPED.\n"
+               grep "alex@barton.de" /etc/profile >/dev/null 2>&1
+               if [ $? -ne 0 ]; then
+                       Msg "Installing system files to $HOME/.etc/ ...\n"
+                       mkdir -p "$HOME/.etc"
+                       Copy_File sys/bashrc $HOME/.etc/bashrc "$user" 600
+                       Copy_File sys/profile $HOME/.etc/profile "$user" 600
+               else
+                       Msg "System configuration seems to be modified: not installing locally.\n"
+               fi
+       fi
+}
 
-Msg "Running $NAME (uid=$UID) ...\n"
+Config_User() {
+       # $1: user name
+       # $2: home directory
 
-user=`basename "$HOME"`
+       user="$1"
+       home="$2"
 
-if [ "$UID" = "0" ]; then
-       Msg "Starting system configuration:\n"
-       Msg " - bash shell:\n"
-       if [ -e /etc/bash.bashrc ]; then
-               Copy_File sys/bashrc /etc/bash.bashrc root 644
-       else
-               Copy_File sys/bashrc /etc/bashrc root 644
-       fi
-       Copy_File sys/profile /etc/profile root 644
-else
-       Msg "Not running with root privileges - system configuration SKIPPED.\n"
-       grep "alex@barton.de" /etc/profile >/dev/null 2>&1
-       if [ $? -ne 0 ]; then
-               Msg "Installing system files to $HOME/.etc/ ...\n"
-               mkdir -p "$HOME/.etc"
-               Copy_File sys/bashrc $HOME/.etc/bashrc "$user" 600
-               Copy_File sys/profile $HOME/.etc/profile "$user" 600
+       Msg "Starting user configuration ($user in $home):\n"
+       touch "$home/.test.$$" >/dev/null 2>&1
+       if [ $? -eq 0 ]; then
+               rm -f "$home/.test.$$"
+               Msg " - bash shell:\n"
+               if [ -e "$home/.profile" ]; then
+                       Copy_File user/bash_profile "$home/.profile" "$user" 600
+               else
+                       Copy_File user/bash_profile "$home/.bash_profile" "$user" 600
+               fi
+               Copy_File user/bashrc "$home/.bashrc" "$user" 600
+               Copy_File user/bash_logout "$home/.bash_logout" "$user" 600
        else
-               Msg "System configuration seems to be modified: not installing locally.\n"
+               Msg "Can't write to user home directory - user configuration SKIPPED.\n"
        fi
-fi
+}
 
-touch "$HOME/.test.$$" >/dev/null 2>&1
-if [ $? -eq 0 ]; then
-       rm -f "$HOME/.test.$$"
-       Msg "Starting user configuration ($user in $HOME):\n"
-       Msg " - bash shell:\n"
-       if [ -e "$HOME/.profile" ]; then
-               Copy_File user/bash_profile "$HOME/.profile" "$user" 600
+Config_RootUser() {
+       if [ "$UID" = "0" ]; then
+               user=`grep "^.*:.*:0:" /etc/passwd | head -n 1 | cut -d':' -f1`
+               home=`grep "^.*:.*:0:" /etc/passwd | cut -d':' -f6`
+               Config_User "$user" "$home"
        else
-               Copy_File user/bash_profile "$HOME/.bash_profile" "$user" 600
+               Msg "Not running with root privileges - root user configuration SKIPPED.\n"
        fi
-       Copy_File user/bashrc "$HOME/.bashrc" "$user" 600
-       Copy_File user/bash_logout "$HOME/.bash_logout" "$user" 600
-else
-       Msg "Can't write to user home directory - user configuration SKIPPED.\n"
-fi
+}
+
+[ -n "$UID" ] || UID=`id -u`
+export UID
+
+Msg "Running $NAME (uid=$UID) ...\n"
+
+user=`basename "$HOME"`
+
+Config_System
+Config_User "$user" "$HOME"
+Config_RootUser
 
 Msg "$NAME: Done.\n"