diff options
Diffstat (limited to '.bashrc')
| -rw-r--r-- | .bashrc | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/.bashrc b/.bashrc new file mode 100644 index 0000000..4f0c876 --- /dev/null +++ b/.bashrc @@ -0,0 +1,69 @@ +# /etc/skel/.bashrc +# +# 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 ! + +safe_load() { + sh="$1" + [ -r "$sh" ] && . "$sh" + unset sh +} + +# 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. +if [[ $- != *i* ]] ; then + # Shell is non-interactive. Be done now! + return +fi + +# Spawn sway, if we are on tty1 +#if [[ "$(tty)" = "/dev/tty1" ]] ; then + # safe_load $HOME/.config/sway/env + # exec dbus-launch --exit-with-session sway -Ddamage=rerender +#fi + +# Enable fzf integration +# safe_load /etc/profile.d/fzf.sh +# safe_load "$HOME"/devel/upstream/github.com/lincheney/fzf-tab-completion/bash/fzf-bash-completion.sh +# bind -x '"\t": fzf_bash_completion' + +# Append to history file +shopt -s histappend +HISTSIZE=50000 +HISTFILESIZE=500000 + +# enable direnv +eval "$(direnv hook bash)" + +# enable z.lua +if [ -d /usr/libexec/z_lua ]; then + eval "$(luajit /usr/libexec/z_lua/z.lua --init bash enhanced once fzf)" + safe_load /usr/libexec/z_lua/czmod/czmod.bash +fi + +# Use keychain to reuse the ssh-agent between logins +keychain --agents ssh -q "$HOME"/.ssh/id_rsa +safe_load "$HOME/.keychain/$(hostname)-sh" + +# use keychain to reuse gpg-agents between logins +# keychain --agents ssh,gpg -q "$HOME"/.ssh/id_rsa B07A551E7F0D35A6A2CD9E5944DFC1CFDC3EA327 +# safe_load "$HOME/.keychain/$(hostname)-sh-gpg" + +# Make sure to also load ~/.profile for non-login shells +safe_load ~/.profile + +# Set prompt +# export PS1="$(prompt)" +if ! [[ "${PROMPT_COMMAND:-}" =~ _prompt_hook ]]; then + PROMPT_COMMAND="_prompt_hook${PROMPT_COMMAND:+;$PROMPT_COMMAND}" +fi +_prompt_hook() { + if [ "$?" != 0 ]; then + PS1=$(prompt err) + else + PS1=$(prompt) + fi +} |