# Bash initialization for interactive non-login shells and # for remote shells (info "(bash) Bash Startup Files"). # Export 'SHELL' to child processes. Programs such as 'screen' # honor it and otherwise use /bin/sh. export SHELL if [[ $- != *i* ]] then # We are being invoked from a non-interactive shell. If this # is an SSH session (as in "ssh host command"), source # /etc/profile so we get PATH and other essential variables. [[ -n "$SSH_CLIENT" ]] && source /etc/profile # Don't do anything else. return fi # Source the system-wide file. source /etc/bashrc # Adjust the prompt depending on whether we're in 'guix environment'. if [ -n "$GUIX_ENVIRONMENT" ] then PS1='\u@\h \w [env]\$ ' else PS1='\u@\h \w\$ ' fi alias ls='ls -p --color=auto' alias ll='ls -l' alias grep='grep --color=auto' alias s='ls' alias v='nvim' alias c='clear' alias e='exit' alias gp='git push' alias gac='git add . && git commit' alias g='git' alias sb='source ~/.bashrc' alias vb='nvim ~/.bashrc' alias r='ranger' timeout 5s pfetch export TERM=alacritty export VISUAL=nvim set -o vi NORMAL="\[\e[0m\]" RED="\[\e[31;1m\]" GREEN="\[\e[32;1m\]" YELLOW="\[\e[33;1m\]" BLUE="\[\e[34;1m\]" PURPLE="\[\e[35m\]" NEWLINE="\n" parse_git_branch() { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' } resetcursor() { printf '\033]50;CursorShape=1\x7' } init_ps1() { PS1="$RED[$YELLOW\u$GREEN@$BLUE\h $PURPLE\W$GREEN`parse_git_branch` $RED]$YELLOW\$$NORMAL " export PS1="$(resetcursor)$PS1" } export PROMPT_COMMAND=init_ps1