dotfiles/.bash_extra
Michael Grote c752c29b66
All checks were successful
ci/woodpecker/push/lint Pipeline was successful
dataport: bash: combine tmux-auto-attach and keychain into one function
2024-05-06 23:16:31 +02:00

62 lines
1.8 KiB
Bash

#!/bin/bash
# source extra files
# https://stackoverflow.com/questions/6659689/referring-to-a-file-relative-to-executing-script
source "${BASH_SOURCE%/*}/.bash_aliases"
source "${BASH_SOURCE%/*}/.bash_functions"
source "${BASH_SOURCE%/*}/.bash_ps1"
### PATH
# add my scripts to PATH
PATH=$PATH:"${BASH_SOURCE%/*}/scripts"
## check interactive shell https://unix.stackexchange.com/questions/26676/how-to-check-if-a-shell-is-login-interactive-batch
if [[ $- == *i* ]] ; then
### git-bash
if [ "$HOSTNAME" = lzeorpt001 ]; then
source /usr/share/git-core/contrib/completion/git-prompt.sh
fi
### root alias
alias root='sudo -H -u root /usr/bin/sudo2uls'
### tmux auto attach
if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then
tmux attach -t default || tmux new -s default
fi
### keychain
if [ "$HOSTNAME" = lzeorpt001 ]; then
export GPG_TTY=$(tty)
fi
if [ "$(hostname -s)" == "lzeorpt001" ] || [ "$(hostname -s)" == "lbdlspa001" ]; then
eval $(keychain -q --eval --timeout 60 --agents ssh,gpg)
fi
fi
### Praktische Dinge
# Deaktiviere FlowControl
# https://unix.stackexchange.com/questions/332791/how-to-permanently-disable-ctrl-s-in-terminal
stty -ixon
# farben fur manpages
# https://opensource.com/article/18/5/bash-tricks
export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;33m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;42;30m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;36m'
# bash history bei mehreren Session
shopt -s histappend
# bach History Zeitstempel am Anfang der Zeile
export HISTTIMEFORMAT='[%F_%T] '
# typo bei cd entfernen
shopt -s cdspell
# less mit maus scrollen
export LESS='--mouse --wheel-lines=3 eFRX'
# deaktiviere alias von ll, wird von mir explizit gesetzt
unalias ll 2>/dev/null