app-shells/bash: bashrc: enable fallback TERM color checking for everyone
authorMike Frysinger <vapier@gentoo.org>
Tue, 2 Feb 2016 20:23:37 +0000 (15:23 -0500)
committerMike Frysinger <vapier@gentoo.org>
Wed, 3 Feb 2016 18:51:41 +0000 (13:51 -0500)
We provide rudimentary TERM checking for BSD which doesn't have dircolors,
but this logic works just as well for all systems such as embedded.  Make
this code run whenever dircolors does not exist.

app-shells/bash/files/bashrc

index f3618fc647c309edb316c05364716f67bc5fc5c5..87a55629f6951694696d825b37d1f28566d32ef6 100644 (file)
@@ -49,18 +49,12 @@ case ${TERM} in
                ;;
 esac
 
-use_color=false
-#BSD#@# BSD doesn't typically come with dircolors so we need
-#BSD#@# to hardcode some terminals in here.
-#BSD#@case ${TERM} in
-#BSD#@ [aEkx]term*|rxvt*|gnome*|konsole*|screen|cons25) use_color=true;;
-#BSD#@esac
-
 # Set colorful PS1 only on colorful terminals.
 # dircolors --print-database uses its own built-in database
 # instead of using /etc/DIR_COLORS.  Try to use the external file
 # first to take advantage of user additions.  Use internal bash
 # globbing instead of external grep binary.
+use_color=false
 safe_term=${TERM//[^[:alnum:]]/?}   # sanitize TERM
 match_lhs=""
 [[ -f ~/.dir_colors   ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
@@ -79,7 +73,15 @@ if ${use_color} ; then
                        eval $(dircolors -b /etc/DIR_COLORS)
                fi
        fi
+else
+       # Some systems (e.g. BSD & embedded) don't typically come with
+       # dircolors so we need to hardcode some terminals in here.
+       case ${TERM} in
+       [aEkx]term*|rxvt*|gnome*|konsole*|screen|cons25) use_color=true;;
+       esac
+fi
 
+if ${use_color} ; then
        if [[ ${EUID} == 0 ]] ; then
                PS1+='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
        else