# ~/.bashrc: executed by bash(1) for non-login shells. # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # for examples # Make sure we get system-wide first if [ -r /etc/bash.bashrc ]; then source /etc/bash.bashrc fi # If not running interactively, don't do anything [ -z "$PS1" ] && return # Make sure we do have profile sourced, otherwise source it [ -z "$DOTFILES" ] && source ~/.profile ## [ -z "$DOTFILES" ] && echo ".profile missing" && exit 1 DOTBASH="$DOTFILES/bash" # make less more friendly for non-text input files, see lesspipe(1) [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" # enable programmable completion features (you don't need to enable # this, if it's already enabled in /etc/bash.bashrc and /etc/profile # sources /etc/bash.bashrc). if [ -f /etc/bash_completion ] && ! shopt -oq posix; then source /etc/bash_completion fi # Load main things if [ -d "$DOTBASH/bashrc.d" ]; then for f in colours.bash aliases.bash history.bash prompt_command.bash password-store.bash network.bash do if [ -r "$DOTBASH/bashrc.d/$f" ]; then source "$DOTBASH/bashrc.d/$f" fi done fi # Try hostname bashrcs if [ -r "$DOTBASH/$HOSTNAME.bashrc" ]; then source "$DOTBASH/$HOSTNAME.bashrc" fi # Always source a local bashrc [ -r "$HOME/.bashrc.local" ] && source "$HOME/.bashrc.local" # Use the local(ly linked) bashrc.private [ -r "$HOME/.local/bashrc.private" ] && source "$HOME/.local/bashrc.private" # Also check in .local for a bashrc [ -r "$HOME/.local/bashrc" ] && source "$HOME/.local/bashrc"