mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-02-24 00:56:46 +00:00
shell: have, path_(append|prepend|remove)
- have: command -v shorthand - path_append: appends dir to PATH - path_prepend: prepends dir to PATH - path_remove: removes dir from PATH
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
# shellcheck shell=bash
|
||||
# shellcheck enable=external-sources
|
||||
# vim: filetype=zsh
|
||||
source "$DOTFILES/scripts/shared.sh"
|
||||
|
||||
# Antigen configuration
|
||||
# https://github.com/zsh-users/antigen/wiki/Configuration
|
||||
@@ -11,61 +12,62 @@ export ANTIGEN_PLUGIN_RECEIPT_F=".local/share/antigen/antigen_plugin_lastupdate"
|
||||
|
||||
# Ansible configuration
|
||||
# https://docs.ansible.com/ansible/latest/reference_appendices/config.html
|
||||
if hash ansible 2> /dev/null; then
|
||||
have ansible && {
|
||||
export ANSIBLE_HOME="$XDG_CONFIG_HOME/ansible"
|
||||
export ANSIBLE_CONFIG="$XDG_CONFIG_HOME/ansible.cfg"
|
||||
export ANSIBLE_GALAXY_CACHE_DIR="$XDG_CACHE_HOME/ansible/galaxy_cache"
|
||||
x-dc "$ANSIBLE_HOME"
|
||||
x-dc "$ANSIBLE_GALAXY_CACHE_DIR"
|
||||
fi
|
||||
}
|
||||
|
||||
# composer, https://getcomposer.org/
|
||||
if command -v composer &> /dev/null; then
|
||||
have composer && {
|
||||
export COMPOSER_HOME="$XDG_STATE_HOME/composer"
|
||||
export COMPOSER_BIN="$COMPOSER_HOME/vendor/bin"
|
||||
export PATH="$COMPOSER_BIN:$PATH"
|
||||
fi
|
||||
}
|
||||
|
||||
# docker, https://docs.docker.com/engine/reference/commandline/cli/
|
||||
if command -v docker &> /dev/null; then
|
||||
have docker && {
|
||||
export DOCKER_CONFIG="$XDG_CONFIG_HOME/docker"
|
||||
x-dc "$DOCKER_CONFIG"
|
||||
fi
|
||||
}
|
||||
|
||||
# ffmpeg
|
||||
if hash ffmpeg 2> /dev/null; then
|
||||
have ffmpeg && {
|
||||
export FFMPEG_DATADIR="$XDG_CONFIG_HOME/ffmpeg"
|
||||
x-dc "$FFMPEG_DATADIR"
|
||||
fi
|
||||
}
|
||||
|
||||
# gcloud
|
||||
if hash gcloud 2> /dev/null; then
|
||||
have gcloud && {
|
||||
GCLOUD_LOC=$(gcloud info --format="value(installation.sdk_root)" --quiet)
|
||||
[[ -f "$GCLOUD_LOC/path.zsh.inc" ]] && builtin source "$GCLOUD_LOC/path.zsh.inc"
|
||||
[[ -f "$GCLOUD_LOC/completion.zsh.inc" ]] && builtin source "$GCLOUD_LOC/completion.zsh.inc"
|
||||
fi
|
||||
}
|
||||
|
||||
# gem, rubygems
|
||||
if command -v gem &> /dev/null; then
|
||||
have gem && {
|
||||
export GEM_HOME="$XDG_STATE_HOME/gem"
|
||||
export GEM_PATH="$XDG_STATE_HOME/gem"
|
||||
export PATH="$GEM_HOME/bin:$PATH"
|
||||
fi
|
||||
path_append "$GEM_PATH/bin"
|
||||
}
|
||||
|
||||
# If we have go packages, include them to the PATH
|
||||
if command -v go &> /dev/null; then
|
||||
have go && {
|
||||
export GOPATH="$XDG_DATA_HOME/go"
|
||||
export GOBIN="$XDG_BIN_HOME"
|
||||
x-dc "$GOPATH"
|
||||
fi
|
||||
}
|
||||
|
||||
# irssi
|
||||
if hash irssi 2> /dev/null; then
|
||||
have irssi && {
|
||||
# These variables are used in ./alias with --config and --home
|
||||
export IRSSI_CONFIG_HOME="$XDG_CONFIG_HOME/irssi"
|
||||
export IRSSI_CONFIG_FILE="$IRSSI_CONFIG_HOME/config"
|
||||
x-dc "$IRSSI_CONFIG_HOME"
|
||||
fi
|
||||
}
|
||||
|
||||
# nvm, the node version manager
|
||||
export NVM_LAZY_LOAD=true
|
||||
@@ -76,21 +78,21 @@ export NVM_DIR="$XDG_CONFIG_HOME/nvm"
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
|
||||
# op (1Password cli) is present
|
||||
if hash op 2> /dev/null; then
|
||||
have op && {
|
||||
export OP_CACHE="$XDG_STATE_HOME/1password"
|
||||
x-dc "$OP_CACHE"
|
||||
eval "$(op completion zsh)"
|
||||
compdef _op op
|
||||
fi
|
||||
}
|
||||
|
||||
# pyenv, python environments
|
||||
if command -v pyenv &> /dev/null; then
|
||||
have pyenv && {
|
||||
export PYENV_ROOT="$XDG_STATE_HOME/pyenv"
|
||||
x-dc "$PYENV_ROOT"
|
||||
export PATH="$PYENV_ROOT/bin:$PATH"
|
||||
path_append "$PYENV_ROOT/bin"
|
||||
|
||||
eval "$(pyenv init -)"
|
||||
fi
|
||||
}
|
||||
|
||||
# wakatime, https://github.com/wakatime/wakatime-cli
|
||||
export WAKATIME_HOME="$XDG_STATE_HOME/wakatime"
|
||||
@@ -104,4 +106,3 @@ export _Z_DATA="$XDG_STATE_HOME/z"
|
||||
export ANDROID_HOME="$XDG_DATA_HOME/android"
|
||||
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
|
||||
export SCREENRC="$XDG_CONFIG_HOME/misc/screenrc"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user