# This template's argument is the shell as a string (bash, zsh). # general configuration export EDITOR="micro" export GPG_TTY=$(tty) export MICRO_TRUECOLOR=1 export TERM=xterm-256color # fixes terminal colors when ssh'ing into laptop # authentication export OPENAI_API_KEY="{{ (rbw "OpenAI - chatgpt-cli Key").data.password }}" # hishtory export HISHTORY_SERVER="https://hsh.{{ template "keys.tmpl" "privateDomain" }}" export PATH="$PATH:$HOME/.hishtory" {{ if eq .shell "zsh" -}} source $HOME/.hishtory/config.zsh {{ else if eq .shell "bash" -}} source $HOME/.hishtory/config.sh {{- else -}} {{ fail "Unexpected shell." }} {{- end }} export PATH=$HOME/bin:/usr/local/bin:$PATH export PATH=$PATH:~/.local/bin export PATH=$PATH:/usr/local/go/bin # Go export PATH="$HOME/go/bin/:$PATH" # Go-installed tools export PATH="$HOME/.local/share/bob/nvim-bin:$PATH" # Bob, the Neovim package manager . "$HOME/.deno/env" # Deno . "$HOME/.cargo/env" # Rustup + Cargo + Cargo-installed tools eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" # Brew command -v rbenv &> /dev/null && eval "$(rbenv init -)" # rbenv for Ruby command -v chatgpt &> /dev/null && . <(chatgpt --set-completions {{ .shell -}}) # chatgpt completions {{ if eq .shell "bash" -}} . "$HOME/.asdf/asdf.sh" . "$HOME/.asdf/completions/asdf.bash" {{- end }} # pyenv, python version manager export PYENV_ROOT="$HOME/.pyenv" if [[ -d $PYENV_ROOT/bin ]]; then export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv &> /dev/null; then eval "$(pyenv init -)" # pyenv virtual-env eval "$(pyenv virtualenv-init -)" fi fi # bun export BUN_INSTALL="$HOME/.bun" export PATH="$BUN_INSTALL/bin:$PATH" [ -s "$HOME/.bun/_bun" ] && source "$HOME/.bun/_bun" # java version manager if [ -d $HOME/.jenv/bin ]; then export PATH="$HOME/.jenv/bin:$PATH" if command -v jenv &> /dev/null then eval "$(jenv init -)" fi fi export HASS_SERVER={{ (index (rbw "HAS-CLI-CODE Token").data.uris 0).uri }} export HASS_TOKEN={{ (rbw "HAS-CLI-CODE Token").data.password }} {{ if eq .shell "bash" -}} source <(_HASS_CLI_COMPLETE=bash_source hass-cli) {{ else if eq .shell "zsh" -}} source <(_HASS_CLI_COMPLETE=zsh_source hass-cli) {{ else if eq .shell "fish" -}} eval (_HASS_CLI_COMPLETE=fish_source hass-cli) {{ end }} # pnpm export PNPM_HOME="$HOME/.local/share/pnpm" case ":$PATH:" in *":$PNPM_HOME:"*) ;; *) export PATH="$PNPM_HOME:$PATH" ;; esac # perl if [ -d "$HOME/perl5" ]; then PATH="$HOME/perl5/bin${PATH:+:${PATH}}"; export PATH; PERL5LIB="$HOME/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB; PERL_LOCAL_LIB_ROOT="$HOME/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}"; export PERL_LOCAL_LIB_ROOT; PERL_MB_OPT="--install_base \"$HOME/perl5\""; export PERL_MB_OPT; PERL_MM_OPT="INSTALL_BASE=$HOME/perl5"; export PERL_MM_OPT; fi # spicetify if [ -d "$HOME/.spicetify" ]; then export PATH=$PATH:$HOME/.spicetify fi # load aliases (note: omz aliases are supposed to be placed in ZSH_CUSTOM?) . $HOME/.bash_aliases # disable screen blanking # source $(brew --prefix)/share/zsh/site-functions/_todoist_peco # xset s off && xset -dpms # Preferred editor for local and remote sessions # if [[ -n $SSH_CONNECTION ]]; then # export EDITOR='micro' # else # export EDITOR='nvim' # fi # If WSL, add SSH key on startup (once per WSL start) {{- if .data.wsl }} eval `keychain --quiet --eval --agents ssh ~/.ssh/id_rsa` {{ end }}