From 061a72a767b36d16188639ca8ccb2d1f41a11409 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sat, 15 Mar 2014 15:01:24 +0100 Subject: [PATCH] Don't set $USER and $UID $UID is unsed, and $USER can be replaced by $LOGNAME. Reason: our own setting of $UID and $USER fails on systems that only provide a very limited id(1) binary; like A/UX ... --- sys/bashrc | 8 ++++---- sys/profile | 31 +++++++++++-------------------- user/bash_logout | 4 ++-- 3 files changed, 17 insertions(+), 26 deletions(-) diff --git a/sys/bashrc b/sys/bashrc index 2e81d0a..ce98922 100644 --- a/sys/bashrc +++ b/sys/bashrc @@ -1,6 +1,6 @@ # # /etc/bash.bashrc: System-wide rc file for interactive bash(1) shells. -# Written 2003-2013 by Alexander Barton (alex@barton.de) +# Written 2003-2014 by Alexander Barton (alex@barton.de) # [ -e ~/.ConfigScripts.debug ] && echo " >> /etc/bash.bashrc ..." @@ -108,14 +108,14 @@ PS1_Path() { } PS1="${COLOR_PREPOSTTXT}${PS1_BEGIN:-<}" -[ "$UID" -eq 0 ] \ +[ "$LOGNAME" = "root" ] \ || PS1="${PS1}${COLOR_USER}\u${COLOR_AT}@" PS1="${PS1}${COLOR_HOST}\h" PS1="${PS1}${COLOR_COLON}:" PS1="${PS1}${COLOR_PATH}\$(PS1_Path) " PS1="${PS1}${COLOR_HISTORY}\!" PS1="${PS1}${COLOR_PREPOSTTXT}${PS1_END:->}${COLOR_RESET} " -[ "$UID" -eq 0 ] \ +[ "$LOGNAME" = "root" ] \ && PS1="${PS1}${COLOR_PROMPT_ROOT}\\\$${COLOR_RESET} " \ || PS1="${PS1}${COLOR_PROMPT_USER}\\\$${COLOR_RESET} " [ "$(type -t __git_ps1)" ] \ @@ -175,7 +175,7 @@ fi # If this is an xterm set the title to user@host:dir case $TERM in xterm*|rxvt|screen) - PROMPT_COMMAND='printf "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' + PROMPT_COMMAND='printf "\033]0;${LOGNAME}@${HOSTNAME}: ${PWD}\007"' ;; *) ;; diff --git a/sys/profile b/sys/profile index 37af75e..7b846f8 100644 --- a/sys/profile +++ b/sys/profile @@ -9,10 +9,6 @@ PROFILEREAD="true" export PROFILEREAD -# Make sure UID is set -[ -n "$UID" ] || UID=`id -u` -export UID - # Setup locale and encoding if [ -e ~/.ConfigScripts.debug ]; then echo " - TERM=\"$TERM\"" @@ -51,7 +47,7 @@ if [ -x /usr/libexec/path_helper ]; then || PATH="/usr/local/bin:$PATH" else PATH="/usr/local/bin:/usr/bin:/bin" - [ "$UID" -eq 0 ] && PATH="/usr/local/sbin:/usr/sbin:/sbin:$PATH" + [ "$LOGNAME" = "root" ] && PATH="/usr/local/sbin:/usr/sbin:/sbin:$PATH" export PATH fi # prepend optional directories to PATH ... @@ -62,7 +58,7 @@ for d in /Developer/usr/bin /usr/pkg/bin /usr/ucb /usr/lib/ccache /opt/*/bin; do fi done [ -n "$path" ] && PATH="$path$PATH" -if [ "$UID" -eq 0 ]; then +if [ "$LOGNAME" = "root" ]; then path="" for d in /usr/pkg/sbin /opt/*/sbin; do if [ -d "$d" -o -h "$d" ]; then @@ -102,20 +98,15 @@ fi [ -r /etc/debian_chroot ] && chroot_name=$(cat /etc/debian_chroot) [ -r /etc/chroot_name ] && chroot_name=$(cat /etc/chroot_name) -# make sure $UID and $USER is set -[ -z "$UID" ] && UID=`id -u` -[ -z "$USER" ] && USER=`id -un` -export UID USER - # get my own hostname ME=`hostname 2>/dev/null` export ME # Move Xauthority file to local storage, so that sudo et all work if [ -z "$XAUTHORITY" -a -r ~/.Xauthority ]; then - cp ~/.Xauthority /tmp/Xauthority-$USER - chmod 600 /tmp/Xauthority-$USER - export XAUTHORITY="/tmp/Xauthority-$USER" + cp ~/.Xauthority /tmp/Xauthority-$LOGNAME + chmod 600 /tmp/Xauthority-$LOGNAME + export XAUTHORITY="/tmp/Xauthority-$LOGNAME" fi # read profile additions @@ -137,10 +128,10 @@ fi [ -r "/var/lib/${ME}/profile" ] && . /var/lib/${ME}/profile # Setup some directories to use local storage (no NFS) -[ -d "/usr/local/home/$USER" ] \ - || ( mkdir /usr/local/home; mkdir "/usr/local/home/$USER" ) >/dev/null 2>&1 -if [ -w "/usr/local/home/$USER" ]; then - export LOCAL_HOME="/usr/local/home/$USER" +[ -d "/usr/local/home/$LOGNAME" ] \ + || ( mkdir /usr/local/home; mkdir "/usr/local/home/$LOGNAME" ) >/dev/null 2>&1 +if [ -w "/usr/local/home/$LOGNAME" ]; then + export LOCAL_HOME="/usr/local/home/$LOGNAME" export CCACHE_DIR="$LOCAL_HOME/.ccache" export XDG_CACHE_HOME="$LOCAL_HOME/.cache" fi @@ -153,13 +144,13 @@ type -p tset >/dev/null 2>&1 [ $? -eq 0 ] && eval `tset -s -Q` # generic shell prompt -[ "$UID" -eq 0 ] \ +[ "$LOGNAME" = "root" ] \ && PS1="<$ME> # " \ || PS1="<$ME> \$ " # icalBuddy(1) type -p icalBuddy >/dev/null 2>&1 -if [ $? -eq 0 -a "$UID" -ne 0 ]; then +if [ $? -eq 0 -a "$LOGNAME" <> "root" ]; then case "$LANG" in *.UTF*) bul="•"; bul_imp="!"; sep="»"; ;; *) bul="*"; bul_imp="!"; sep=">"; ;; diff --git a/user/bash_logout b/user/bash_logout index deaa629..80c8d84 100644 --- a/user/bash_logout +++ b/user/bash_logout @@ -1,6 +1,6 @@ # # ~/.bash_logout: executed by bash(1) on logout -# Written 2003-2009 by Alexander Barton (alex@barton.de) +# Written 2003-2014 by Alexander Barton (alex@barton.de) # # This script is executed by bash(1) on logout. # @@ -24,7 +24,7 @@ case `tty` in ;; *) if [ -z "$SUDO_USER" ]; then - echo "Bye, bye, $USER!"; echo + echo "Bye, bye, $LOGNAME!"; echo fi esac -- 2.39.2