#!/bin/bash # if we are root, exit after 5 Minutes case $(tty) in /dev/tty[0-9]*) #[ $( id -u ) -eq 0 ] && TMOUT=${MYSHELLCONFIG_ROOT_TMOUT} #[ $( id -u ) -gt 0 ] && TMOUT=${MYSHELLCONFIG_USER_TMOUT} case $(id -u) in 0) TMOUT=${MYSHELLCONFIG_ROOT_TMOUT:-500} ;; *) TMOUT=${MYSHELLCONFIG_USER_TMOUT:-1000} ;; esac echo "Run in TTY -> set autologout \$TMOUT=$TMOUT" >&2 ;; *) echo "Run in other terminal" >&2 ;; esac # Load default values, functions, aliases for myshellconfig if ! $SSHS; then if [ -e ${MYSHELLCONFIG_BASE}/functions.sh ]; then . ${MYSHELLCONFIG_BASE}/functions.sh else return fi ###################################################################################### # ls is not in color on all systems export LS_OPTIONS='--color=auto' eval "`dircolors`" ####################################################################################### # User specific aliases and function if [ -d "${MYSHELLCONFIG_BASE}/bin" ] ; then pathmunge "${MYSHELLCONFIG_BASE}/bin" export PATH fi if [ -d "${MYSHELLCONFIG_BASE}/git-credential-pass" ] ; then pathmunge "${MYSHELLCONFIG_BASE}/git-credential-pass" export PATH fi if [ -f "${MYSHELLCONFIG_BASE}/aliases" ]; then . "${MYSHELLCONFIG_BASE}/aliases" fi if [ -f "${MYSHELLCONFIG_BASE}/PS1" ]; then . "${MYSHELLCONFIG_BASE}/PS1" fi if [ -e "${MYSHELLCONFIG_BASH_COMPLETION}" ]; then for i in $( ls "${MYSHELLCONFIG_BASH_COMPLETION}" ); do . "${MYSHELLCONFIG_BASH_COMPLETION}/${i}" done fi if [ -f "${MYSHELLCONFIG_BASE}/myshell_load_fortmpconfig" ]; then . "${MYSHELLCONFIG_BASE}/myshell_load_fortmpconfig" fi ######################################################################################### # Go HOME #cd ${HOME} if test ! $TMUX && test $SSH_TTY && test $TERM != screen && test $(systemctl status tmux@${USER}.service 1>/dev/null 2>&1; echo $? ) -eq 0; then cat << EOF "User: $USER - $UID" Starting or resuming screen session Press CTRL+C to cancel screen startup EOF sleep 1 #screen -UxR tmux attach-session fi unset -f pathmunge else # run with temporary config case $TERM in *screen*) echo BASHRC: $BASHRC -> source it #[ -e $BASHRC ] && . "$BASHRC" if [ ! -z ${BASHRC+x} ]; then if [ -e $BASHRC ] ; then exec bash --rcfile "$BASHRC" -i /dev/null else exec bash -i fi else exec bash -i fi ;; esac fi # Disable Ctrl+s to freeze terminal # Source https://www.digitalocean.com/community/tutorials/how-to-use-bash-history-commands-and-expansions-on-a-linux-vps stty -ixon export HISTCONTROL=erasedups:ignorespace:ignoredups export HISTIGNORE="ls:l:cd:exit:pwd:date:mencfs:" export HISTTIMEFORMAT='%F %T ' export HISTSIZE=999999 echo "bashrc_add sourced" 2>&1 |tee -a ${MYSHELLCONFIG_LOGFILE} >&2 #echo "bashrc_add sourced" >&2