bash/bashrc

65 lines
2.0 KiB
Bash

export SHELL_CONFIG="$SHELL_CONFIG:.bashrc"
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
export HISTCONTROL=ignoreboth:erasedups
[ -f "$HOME/.config/bash/gitstatus/gitstatus.prompt.sh" ] && . "$HOME/.config/bash/gitstatus/gitstatus.prompt.sh"
PS1='\t \[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w\[\033[00m\]${GITSTATUS_PROMPT:+ $GITSTATUS_PROMPT}\n\[\033[01;$((31+!$?))m\]\$\[\033[00m\] \[\e]0;\u@\h: \w\a\]'
# If there are multiple matches for completion, Tab should cycle through them
bind TAB:menu-complete
# Display a list of the matching files
bind "set show-all-if-ambiguous on"
# Perform partial (common) completion on the first Tab press, only start
# cycling full results on the second Tab press (from bash version 5)
bind "set menu-complete-display-prefix on"
source ~/.profile
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
# https://github.com/skywind3000/z.lua
eval "$(lua $HOME/.z.lua/z.lua --init bash enhanced once echo)"
_mem_available=$(awk '/MemAvailable/ { printf "%.1f \n", $2/1024/1024 }' /proc/meminfo)
_updates_available="$(wc -l $HOME/.checkupdates | cut -d' ' -f1)"
[ -z $_updates_available ] && _updates_available="0"
echo "Remember your aliases:"
echo " containers"
echo " e cdlf lfcd"
echo " mc newsh smartresize"
echo " b1 kvm mike p1 pve"
echo ""
echo "Remember your commands:"
echo " vimv 'flameshot gui'"
echo ""
if [ ${_mem_available%.*} -lt 5 ] ; then
echo -n "Memory available: "
[ ${_mem_available%.*} -lt 3 ] && echo -ne "\033[0;31m"
echo -n "${_mem_available}"
[ ${_mem_available%.*} -lt 3 ] && echo -ne "\033[0m"
echo "GB"
fi
if [ $_updates_available -gt 0 ] ; then
echo -n "Updates available: "
[ $_updates_available -gt 9 ] && echo -ne "\033[0;31m"
echo -n "$_updates_available"
[ $_updates_available -gt 9 ] && echo -ne "\033[0m"
echo ""
fi
echo ""
(checkupdates > "$HOME/.checkupdates") & disown