230 lines · 6.1 KB
#!/usr/bin/env bash

# Commands that should be applied only for interactive shells.
[[ $- == *i* ]] || return

shopt -s globstar
shopt -s histappend

# shellcheck disable=SC1091
source "$XDG_DATA_HOME/meowgorithm/bash_funcs"

# shellcheck disable=1090
env="$XDG_DATA_HOME/meowgorithm/env.asc"
# shellcheck disable=SC1090
[ -f "$env" ] && source <(timeout 5 gpg --decrypt "$env" 2>/dev/null)

export HISTCONTROL=ignorespace:ignoredups:erasedups
export HISTFILESIZE=100000
export HISTSIZE=10000
export HISTIGNORE="ls:cd:pwd:clear:exit:history:shutdown:reboot"
export PROMPT_DIRTRIM=2
export CLICOLOR=1

# Where our dotfiles repo lives
export DOTFILES="$HOME/.dotfiles"

case "$OSTYPE" in
darwin*) os="darwin" ;;
linux*)
    if [[ -f /etc/os-release ]]; then
        # shellcheck disable=SC1091
        source /etc/os-release
        os="${ID,,}"
    else
        os="linux"
    fi
    ;;
esac

# Look for git-prompt and setup the first one we find