config-bash/bashrc

45 lines
1.9 KiB
Bash
Raw Normal View History

2013-04-24 16:58:31 +02:00
# 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.
2024-06-19 11:19:05 +02:00
if [[ $- != *i* ]]; then
2013-04-24 16:58:31 +02:00
# Shell is non-interactive. Be done now!
return
fi
# Safe loops for empty dirs
shopt -s nullglob
2013-04-24 16:58:31 +02:00
# Source custom libs
2024-06-19 11:19:05 +02:00
if [ -d "$HOME"/.bash/libs ]; then for lib in "$HOME"/.bash/libs/*.bash; do source "$lib"; done; fi
2013-04-24 16:58:31 +02:00
2024-06-21 18:48:06 +02:00
# Early customization
if [ -d "$HOME"/.bash/rc.before.d ]; then for file in "$HOME"/.bash/rc.before.d/*; do source "$file"; done; fi
# Source rc.d/*
2024-06-19 11:19:05 +02:00
if [ -d "$HOME"/.bash/rc.d ]; then for file in "$HOME"/.bash/rc.d/*; do source "$file"; done; fi
2013-04-24 16:58:31 +02:00
# Source alias definitions
2024-06-19 11:19:05 +02:00
if [ -f "$HOME"/.bash_aliases ]; then source "$HOME"/.bash_aliases; fi
if [ -f "$HOME"/.bash/aliases ]; then source "$HOME"/.bash/aliases; fi
if [ -d "$HOME"/.bash/aliases ]; then for file in "$HOME"/.bash/aliases/*; do source "$file"; done; fi
if [ -d "$HOME"/.bash/aliases.d ]; then for file in "$HOME"/.bash/aliases.d/*; do source "$file"; done; fi
2013-04-24 16:58:31 +02:00
# Source bash completion definitions
2024-06-19 11:19:05 +02:00
for file in /etc/bash*completion /etc/profile.d/bash*completion*; do source "$file"; done
2013-04-24 16:58:31 +02:00
2024-06-19 11:19:05 +02:00
if [ -f "$HOME"/.bash_completion ]; then source "$HOME"/.bash_completion; fi
if [ -f "$HOME"/.bash/completion ]; then source "$HOME"/.bash/completion; fi
if [ -d "$HOME"/.bash/completion ]; then for file in "$HOME"/.bash/completion/*; do source "$file"; done; fi
if [ -d "$HOME"/.bash/completion.d ]; then for file in "$HOME"/.bash/completion.d/*; do source "$file"; done; fi
2024-06-21 18:48:06 +02:00
# Late customization
if [ -d "$HOME"/.bash/rc.after.d ]; then for file in "$HOME"/.bash/rc.after.d/*; do source "$file"; done; fi
# Restore option nullglob to normal
shopt -u nullglob