Files
dotfiles/.bashrc.kuba
2023-12-21 08:06:55 +01:00

67 lines
1.9 KiB
Plaintext
Executable File

#
# ~/.bashrc.kuba
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
# Convenient helper function
source_existing() {
[ -f "$1" ] && source "$1"
}
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export KRB5_CONFIG=".etcfiles/krb5.conf"
export EDITOR="vim"
export OMPI_MCA_opal_cuda_support=0
alias dotfiles="/usr/bin/git --git-dir=$HOME/.dotfiles.git --work-tree=$HOME"
alias dvim="GIT_WORK_TREE='/home/kuba' GIT_DIR='/home/kuba/.dotfiles.git/' vim"
alias ls='ls --color=auto'
source_existing /usr/share/bash-completion/bash_completion
# Make tab-completion work for dotfiles exactly as for git
# First we need to load the completion for git (this is done the first time
# one types `git <TAB>` in the console).
_completion_loader git
# Running `complete -p git` yields the following
# complete -o bashdefault -o default -o nospace -F __git_wrap__git_main git
# So we do
complete -o bashdefault -o default -o nospace -F __git_wrap__git_main dotfiles
# Define a OS X-like open command
open() { command xdg-open "$@" > /dev/null 2>&1 & }
# Source git prompt
source_existing ~/scripts/git-prompt.sh
source_existing ~/.bash_prompt.kuba
# Activate python virtualenv
source_existing ~/.python-venv.kuba/bin/activate
if command -v ipython &> /dev/null; then
alias p="ipython --pylab"
elif command -v python &> /dev/null; then
alias p=python
fi
complete -o default -C "python ~/.python-venv.kuba/lib/python3.9/site-packages/myqueue/complete.py" mq
complete -o bashdefault -C snakemake-bash-completion snakemake
if [ -z "$DONT_LOAD_LMOD" ]; then
if [ -e /usr/share/lmod/lmod/init/profile ]; then
# Source lmod module setup
. /usr/share/lmod/lmod/init/profile
module use "$HOME/.modules.kuba/"
module use "$HOME/git/auto-venv-setup/lmod-modules/"
module load tools
else
# lmod does not exist
source $HOME/.modules.kuba/.tools.sh
fi
fi