Created
September 21, 2011 22:36
-
-
Save georgemarshall/1233523 to your computer and use it in GitHub Desktop.
Gentoo vs Ubuntu
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# /etc/bash/bashrc | |
# | |
# This file is sourced by all *interactive* bash shells on startup, | |
# including some apparently interactive shells such as scp and rcp | |
# that can't tolerate any output. So make sure this doesn't display | |
# anything or bad things will happen ! | |
# Test for an interactive shell. There is no need to set anything | |
# past this point for scp and rcp, and it's important to refrain from | |
# outputting anything in those cases. | |
if [[ $- != *i* ]] ; then | |
# Shell is non-interactive. Be done now! | |
return | |
fi | |
# Bash won't get SIGWINCH if another process is in the foreground. | |
# Enable checkwinsize so that bash will check the terminal size when | |
# it regains control. #65623 | |
# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11) | |
shopt -s checkwinsize | |
# Enable history appending instead of overwriting. #139609 | |
shopt -s histappend | |
# Change the window title of X terminals | |
case ${TERM} in | |
xterm*|rxvt*|Eterm|aterm|kterm|gnome*|interix) | |
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"' | |
;; | |
screen) | |
PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"' | |
;; | |
esac | |
use_color=false | |
# 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. | |
safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM | |
match_lhs="" | |
[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)" | |
[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)" | |
[[ -z ${match_lhs} ]] \ | |
&& type -P dircolors >/dev/null \ | |
&& match_lhs=$(dircolors --print-database) | |
[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true | |
if ${use_color} ; then | |
# Enable colors for ls, etc. Prefer ~/.dir_colors #64489 | |
if type -P dircolors >/dev/null ; then | |
if [[ -f ~/.dir_colors ]] ; then | |
eval $(dircolors -b ~/.dir_colors) | |
elif [[ -f /etc/DIR_COLORS ]] ; then | |
eval $(dircolors -b /etc/DIR_COLORS) | |
fi | |
fi | |
if [[ ${EUID} == 0 ]] ; then | |
PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] ' | |
else | |
PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] ' | |
fi | |
alias ls='ls --color=auto' | |
alias grep='grep --colour=auto' | |
else | |
if [[ ${EUID} == 0 ]] ; then | |
# show root@ when we don't have colors | |
PS1='\u@\h \W \$ ' | |
else | |
PS1='\u@\h \w \$ ' | |
fi | |
fi | |
# Try to keep environment pollution down, EPA loves us. | |
unset use_color safe_term match_lhs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Define some colors to use in the prompt | |
NO_COLOR="\[\033[0m\]" | |
GRAY="\[\033[1;30m\]" | |
BLACK="\[\033[0;30m\]" | |
RED="\[\033[0;31m\]" | |
LIGHT_RED="\[\033[1;31m\]" | |
GREEN="\[\033[0;32m\]" | |
LIGHT_GREEN="\[\033[1;32m\]" | |
YELLOW="\[\033[0;33m\]" | |
LIGHT_YELLOW="\[\033[1;33m\]" | |
BLUE="\[\033[0;34m\]" | |
LIGHT_BLUE="\[\033[1;34m\]" | |
MAGENTA="\[\033[0;35m\]" | |
LIGHT_MAGENTA="\[\033[1;35m\]" | |
CYAN="\[\033[0;36m\]" | |
LIGHT_CYAN="\[\033[1;36m\]" | |
WHITE="\[\033[0;37m\]" | |
LIGHT_WHITE="\[\033[1;37m\]" | |
# Change the prompt character dpeending on if we're in a repository | |
function prompt_char { | |
git branch > /dev/null 2> /dev/null && echo '±' && return | |
hg root > /dev/null 2> /dev/null && echo '☿' && return | |
echo '$' | |
} | |
## display the current git branch | |
__git_ps1() { | |
local b="$(git symbolic-ref HEAD 2> /dev/null)" | |
if [ -n "$b" ]; then | |
printf " (git:%s)" "${b##refs/heads/}" | |
fi | |
} | |
## display the current mercurial branch | |
__hg_ps1() { | |
local branch="$(hg branch 2> /dev/null)" | |
if [ -n "$branch" ]; then | |
printf " (hg:%s)" "${branch}" | |
fi | |
} | |
## display the current bazaar revision | |
__bzr_ps1() { | |
local rev="$(bzr revno 2> /dev/null)" | |
if [ -n "$rev" ]; then | |
printf " (bzr:%s)" "${rev}" | |
fi | |
} | |
## display the current subversion revision | |
__svn_ps1() { | |
if [[ -d ".svn" ]]; then | |
printf " (svn:%s)" `svnversion` | |
fi | |
} | |
## My super cool prompt | |
# export MY_PROMPT="\[\e]0;\u@\h: \w\a\]" | |
export MY_PROMPT="${WHITE}[\t] ${LIGHT_GREEN}\u${LIGHT_WHITE}@${LIGHT_RED}\h ${LIGHT_BLUE}\w${WHITE}\$(__git_ps1)\$(__hg_ps1)\$(__bzr_ps1)\$(__svn_ps1)\n${LIGHT_WHITE}\$(prompt_char)${NO_COLOR} " | |
## Basic prompt for everyone else | |
export BASIC_PROMPT="${WHITE}[\t] ${LIGHT_GREEN}\u@\h${LIGHT_WHITE}:${LIGHT_BLUE}\w${WHITE}\$${NO_COLOR} " | |
export PS1=$MY_PROMPT | |
# alias basic_prompt="export PS1=\$BASIC_PROMPT" | |
# alias my_prompt="export PS1=\$MY_PROMPT" | |
alias clean_pyc="find . -type f -name \"*.py[co]\" -delete" | |
# PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] ' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# System-wide .bashrc file for interactive bash(1) shells. | |
# To enable the settings / commands in this file for login shells as well, | |
# this file has to be sourced in /etc/profile. | |
# If not running interactively, don't do anything | |
[ -z "$PS1" ] && return | |
# check the window size after each command and, if necessary, | |
# update the values of LINES and COLUMNS. | |
shopt -s checkwinsize | |
# set variable identifying the chroot you work in (used in the prompt below) | |
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then | |
debian_chroot=$(cat /etc/debian_chroot) | |
fi | |
# set a fancy prompt (non-color, overwrite the one in /etc/profile) | |
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' | |
# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default. | |
# If this is an xterm set the title to user@host:dir | |
#case "$TERM" in | |
#xterm*|rxvt*) | |
# PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' | |
# ;; | |
#*) | |
# ;; | |
#esac | |
# enable bash completion in interactive shells | |
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then | |
# . /etc/bash_completion | |
#fi | |
# sudo hint | |
if [ ! -e "$HOME/.sudo_as_admin_successful" ]; then | |
case " $(groups) " in *\ admin\ *) | |
if [ -x /usr/bin/sudo ]; then | |
cat <<-EOF | |
To run a command as administrator (user "root"), use "sudo <command>". | |
See "man sudo_root" for details. | |
EOF | |
fi | |
esac | |
fi | |
# if the command-not-found package is installed, use it | |
if [ -x /usr/lib/command-not-found -o -x /usr/share/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 | |
/usr/bin/python /usr/lib/command-not-found -- $1 | |
return $? | |
elif [ -x /usr/share/command-not-found ]; then | |
/usr/bin/python /usr/share/command-not-found -- $1 | |
return $? | |
else | |
return 127 | |
fi | |
} | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment