100 lines
3.0 KiB
Bash
100 lines
3.0 KiB
Bash
# vim: ft=sh
|
|
|
|
# Setup editor
|
|
export EDITOR="${HOME}/.dotfiles/nix/bin/nvim"
|
|
|
|
# If not running interactively, don't do anything
|
|
case $- in
|
|
*i*) ;;
|
|
*) return;;
|
|
esac
|
|
|
|
# agetty is set to automatically log me in on tty1
|
|
# Automatically launch GUI on tty1 after login
|
|
if [ "$(tty)" == '/dev/tty1' ] && [ ! "$SSH_TTY" ]; then
|
|
. "${HOME}/.dotfiles/bash/bash_login"
|
|
LAST_GUI=$(cat "${HOME}/.spool/last_login_gui" 2>/dev/null)
|
|
if [ -f "${HOME}/.spool/last_login_gui" ]; then
|
|
${HOME}/scripts/${LAST_GUI}/start${LAST_GUI}.sh
|
|
fi
|
|
fi
|
|
|
|
# don't put duplicate lines or lines starting with space in the history.
|
|
shopt -s histappend
|
|
HISTCONTROL=ignoreboth
|
|
HISTFILE=${HOME}/.spool/bash_history
|
|
|
|
# append to the history file, don't overwrite it
|
|
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
|
HISTSIZE=500000
|
|
HISTFILESIZE=1000000
|
|
|
|
# check the window size after each command and, if necessary,
|
|
# update the values of LINES and COLUMNS.
|
|
shopt -s checkwinsize
|
|
|
|
# enable programmable completion features
|
|
if ! shopt -oq posix; then
|
|
if [ -f /usr/share/bash-completion/bash_completion ]; then
|
|
. /usr/share/bash-completion/bash_completion
|
|
elif [ -f /etc/bash_completion ]; then
|
|
. /etc/bash_completion
|
|
fi
|
|
fi
|
|
|
|
# Set window title to last command
|
|
PROMPT_COMMAND='echo -e -n "\033]2;$_\007"'
|
|
# Reconfigure prompt after each return
|
|
PROMPT_COMMAND="$PROMPT_COMMAND; source ${HOME}/.dotfiles/bash/prompt.sh"
|
|
# Bell when prompt is returned to mark as urgent
|
|
PROMPT_COMMAND="$PROMPT_COMMAND;printf \"\a\"; history -a"
|
|
|
|
# Enable color support if possible
|
|
if [ -x /usr/bin/dircolors ]; then
|
|
test -r ${HOME}/.dircolors && eval "$(dircolors -b ${HOME}/.dircolors)" || eval "$(dircolors -b)"
|
|
alias ls='ls --color=auto'
|
|
alias dir='dir --color=auto'
|
|
alias vdir='vdir --color=auto'
|
|
alias grep='grep --color=auto'
|
|
alias fgrep='fgrep --color=auto'
|
|
alias egrep='egrep --color=auto'
|
|
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
|
fi
|
|
|
|
# Load aliases
|
|
if [ -f ${HOME}/.dotfiles/bash/bash_aliases ]; then
|
|
. "${HOME}/.dotfiles/bash/bash_aliases"
|
|
fi
|
|
|
|
# Perl configs
|
|
PERL5LIB="${HOME}/perl5/lib/perl5:${HOME}/perl5/lib/perl5/x86_64-linux-thread-multi:${PERL5LIB}"; export PERL5LIB;
|
|
PERL_LOCAL_LIB_ROOT="${HOME}/perl5/lib/perl5:${HOME}/perl5/lib/perl5/x86_64-linux-thread-multi:${PERL_LOCAL_LIB_ROOT}"; export PERL_LOCAL_LIB_ROOT;
|
|
PERL_MB_OPT="--install_base \"${HOME}/perl5\""; export PERL_MB_OPT;
|
|
PERL_MM_OPT="INSTALL_BASE=${HOME}/perl5"; export PERL_MM_OPT;
|
|
|
|
# Android configs
|
|
JDK_HOME=/etc/java
|
|
STUDIO_JDK=/usr/lib/jvm/jre-openjdk
|
|
|
|
# Configure PATH
|
|
source "$HOME/.dotfiles/bash/path"
|
|
|
|
export LANG="C.UTF-8"
|
|
export LC_ALL="C.UTF-8"
|
|
export LC_CTYPE="C.UTF-8"
|
|
export LANGUAGE="en_US:en"
|
|
|
|
# terminal type
|
|
export TERM="xterm"
|
|
|
|
# Set initial title
|
|
echo -e -n "\033]2;Welcome to Bash\007"
|
|
|
|
if [ -f "/run/.containerenv" ]; then
|
|
source "$HOME/.dotfiles/bash/bashrc.distrobox"
|
|
else
|
|
source "$HOME/.dotfiles/bash/bashrc.host"
|
|
fi
|
|
|
|
source "$HOME/.cargo/env"
|