git.lirion.de

Of git, get, and gud

aboutsummaryrefslogtreecommitdiffstats
path: root/.bashrc
blob: c0cae3d9b90ac150425f59d4053345762808e2c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/env bash
# vim:syntax=sh
# .bash main folder. also required in .bash/prompt.sh.
export BBD="${HOME}/.bash"

# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups
# If the sysadmins do not care about history timestamps, let us do that:
[ -z "$HISTTIMEFORMAT" ] && export HISTTIMEFORMAT="%F %T "
# same philosophy, other history settings:
[ -z "$HISTSIZE" ] && export HISTSIZE=10240
[ -z "$HISTCONTROL" ] && export HISTCONTROL=ignoredups
# stuff before $BBD
# shellcheck disable=SC1090
[ -r "${HOME}/.byobu/prompt" ] && source "${HOME}/.byobu/prompt"
# shellcheck disable=SC1091
[ -r "/usr/share/bash-completion/bash_completion" ] && source "/usr/share/bash-completion/bash_completion"

# The above is absolutely mandatory imho. Now for the rest.
# Do we have our base directory?
[ ! -x "$BBD" ] && return
MYKERN="$(uname -s)"
for i in vars aliases exec prompt;do
	# shellcheck disable=SC1090
	if [ -r "${BBD}/${i}.bash" ];then
		source "${BBD}/${i}.bash"
	else true
	fi
	if [ "$MYKERN" == "Linux" ];then
		# shellcheck disable=SC1090
		if [ -r "${BBD}/${i}.linux.bash" ];then
			source "${BBD}/${i}.linux.bash"
		else true
		fi
	fi
	# shellcheck disable=SC1090
	if [ -r "${BBD}/${i}.bash.local" ];then
		source "${BBD}/${i}.bash.local"
	else true
	fi
done