]> arthur.barton.de Git - ConfigScripts.git/blobdiff - sys/bashrc
Don't read /var/lib/$ME/bash.bashrc in non-interactive shells
[ConfigScripts.git] / sys / bashrc
index fe509e369ccf3c7d30a3781d7236933e098e9b08..3b9e742a2cdb767d7145da474f01c8b51f18c02a 100644 (file)
@@ -1,36 +1,16 @@
 #
 # /etc/bash.bashrc: System-wide rc file for interactive bash(1) shells.
-#
-# 2008-08-07, alex@barton.de
-#  - ls: Detech BSD color support (-G).
-#  - Support /etc/chroot_name
-# 2008-07-09, alex@barton.de
-#  - Added support for /usr/lib/command-not-found.
-# 2008-06-06, alex@barton.de
-#  - Source /etc/[bash].bashrc.local as well, if readable.
-# 2007-04-05, alex@barton.de
-#  - Define shell functions sshtmp() and sshnew().
-# 2006-01-04, alex@barton.de
-#  - Only call dircolors(1) and lesspipe(1) if they are available.
-#  - Check wether ls(1) knows something about "--color".
-# 2005-12-29, alex@barton.de
-#  - Enabled bash completion
-# 2004-09-13, alex@Arthur.Ath.CX
-#  - Made script more generic ...
-# 2004-05-27, alex@Arthur.Ath.CX
+# Written 2003-2010 by Alexander Barton (alex@barton.de)
 #
 
-[ -e /tmp/ConfigDebug.$USER ] && echo " >> /etc/bash.bashrc ..."
+[ -e ~/.ConfigScripts.debug ] && echo " >> /etc/bash.bashrc ..."
 
 BASHRCREAD="true"
 
 [ -z "$PROFILEREAD" -a -r /etc/profile ] && source /etc/profile
 
 # Interactive shell?
-if [ ! "$PS1" ]; then
-       [ -r "/var/lib/$ME/bash.bashrc" ] && source /var/lib/$ME/bash.bashrc
-       return
-fi
+[ "$PS1" ] || return
 
 # Shell options
 shopt -s checkwinsize
@@ -49,16 +29,26 @@ sshtmp() {
 }
 
 # Shell prompt
-prefix="${chroot_name:+($chroot_name)}"
 [ "$UID" -eq 0 ] \
-       && PS1="${prefix}\h:\w \\\$ " \
-       || PS1="${prefix}\u@\h:\w \\\$ "
+       && PS1="\h:\w \\\$ " \
+       || PS1="\u@\h:\w \\\$ "
+if [ "\$(type -t __git_ps1)" ]; then
+       PS1="\$(__git_ps1 '(%s) ')$PS1"
+fi
+PS1="${chroot_name:+[$chroot_name] }$PS1"
 
 # Enable bash completion, if available
-[ -r /etc/bash_completion ] && source /etc/bash_completion
+[ -z "$BASH_COMPLETION" -a -r /etc/bash_completion ] \
+       && source /etc/bash_completion
+[ -z "$BASH_COMPLETION" -a -r /opt/homebrew/etc/bash_completion ] \
+       && source /opt/homebrew/etc/bash_completion
+[ -z "$BASH_COMPLETION" -a -r /opt/local/etc/bash_completion ] \
+       && source /opt/local/etc/bash_completion
 
 # If the command-not-found package is installed, use it
-if [ -x /usr/lib/command-not-found ]; then
+if [ -r /etc/bash_command_not_found ]; then
+       . /etc/bash_command_not_found
+elif [ -x /usr/lib/command-not-found ]; then
        function command_not_found_handle {
                # Check because c-n-f could've been removed in the meantime
                if [ -x /usr/lib/command-not-found ]; then
@@ -78,10 +68,30 @@ alias "ll"="ls -l"
 alias "l"="ll -a"
 alias "lasth"="last | head -n \`expr \\\$LINES - 2\`"
 
-# less filter
+# Aliases for screen(1), if installed
+type -p screen >/dev/null 2>&1
+if [ $? -eq 0 ]; then
+       alias "s"="screen"
+       alias "sr"="screen -dr"
+       alias "sx"="screen -x"
+fi
+
+# less(1) filter, if available
 type -p lesspipe >/dev/null 2>&1 && eval `lesspipe`
 
-# Enable color support of ls and also add handy aliases
+# Initialize ccache(1), if installed
+if [ -d "/usr/lib/ccache" ]; then
+       PATH="/usr/lib/ccache:$PATH"
+       # Set the cache directory to local storage, if available
+       [ -w "/usr/local/home/$USER" ] \
+               && export CCACHE_DIR="/usr/local/home/$USER/.ccache"
+fi
+
+# Setup slrn(1) and cleanscore(1), if installed
+type -p cleanscore >/dev/null 2>&1
+[ $? -eq 0 ] && alias slrn="cleanscore -f ~/.slrnscore && slrn"
+
+# Enable color support of ls(1) and also add handy aliases
 if [ "$TERM" != "dumb" ]; then
        type -p dircolors >/dev/null 2>&1 && eval `dircolors -b`
        ls --color / >/dev/null 2>&1
@@ -100,7 +110,7 @@ fi
 # If this is an xterm set the title to user@host:dir
 case $TERM in
 xterm*|rxvt|screen)
-       PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
+       PROMPT_COMMAND='printf "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
        ;;
 *)
        ;;