.profile: Use wrapper function for command detection

This commit is contained in:
Salt 2019-02-05 12:38:56 -06:00
parent 77bf3a4a0d
commit 040fce1825

View File

@ -60,8 +60,14 @@ PATH="$desiredpath:$PATH"
# Source ~/.functions, if it exists # Source ~/.functions, if it exists
[ -r "$HOME/.functions" ] && [ "$_baseshell" != "sh" ] && . "$HOME/.functions" [ -r "$HOME/.functions" ] && [ "$_baseshell" != "sh" ] && . "$HOME/.functions"
# Define a require function
has() {
[ -z "$1" ] && return 1
command -v "$1" > /dev/null 2>&1
}
# Grab pip completion, if it exists # Grab pip completion, if it exists
if command -v pip > /dev/null 2>&1; then if has pip; then
case "$_baseshell" in case "$_baseshell" in
*bash) *bash)
if ! [ -f "$HOME/.pip-completion-bash" ]; then if ! [ -f "$HOME/.pip-completion-bash" ]; then
@ -83,13 +89,13 @@ if command -v pip > /dev/null 2>&1; then
fi fi
# Set up go, if we have it # Set up go, if we have it
if command -v go > /dev/null 2>&1; then if has go; then
export GOPATH="$HOME/.local/go" export GOPATH="$HOME/.local/go"
[ "${PATH#*$GOPATH}" = "$PATH" ] && export PATH="$PATH:$GOPATH/bin" [ "${PATH#*$GOPATH}" = "$PATH" ] && export PATH="$PATH:$GOPATH/bin"
fi fi
# Grab dircolors, if it exists # Grab dircolors, if it exists
if command -v dircolors > /dev/null 2>&1; then if has dircolors; then
dircolorsfile="$HOME/.config/dircolors" dircolorsfile="$HOME/.config/dircolors"
if [ -r "$dircolorsfile" ]; then if [ -r "$dircolorsfile" ]; then
eval "$(dircolors "$dircolorsfile")" eval "$(dircolors "$dircolorsfile")"
@ -108,27 +114,27 @@ done
alias e='$EDITOR' alias e='$EDITOR'
# If emerge exists, add emerge aliases # If emerge exists, add emerge aliases
if command -v emerge > /dev/null 2>&1 ; then if has emerge; then
alias e-depclean='sudo emerge -a --depclean' alias e-depclean='sudo emerge -a --depclean'
alias e-inst='sudo emerge -a --jobs --tree --quiet-build y' alias e-inst='sudo emerge -a --jobs --tree --quiet-build y'
alias e-upgrade='sudo emerge -DNUua --jobs --tree --quiet-build y --with-bdeps=y --keep-going --backtrack=1000 @world' alias e-upgrade='sudo emerge -DNUua --jobs --tree --quiet-build y --with-bdeps=y --keep-going --backtrack=1000 @world'
alias e-newuse='sudo emerge -Uva --jobs --tree --quiet-build y @world' alias e-newuse='sudo emerge -Uva --jobs --tree --quiet-build y @world'
alias e-search='emerge -s' alias e-search='emerge -s'
alias e-sync='sudo emerge --sync' alias e-sync='sudo emerge --sync'
if command -v eclean > /dev/null 2>&1; then if has eclean; then
alias e-cleanup='sudo eclean -d distfiles && sudo eclean -d packages' alias e-cleanup='sudo eclean -d distfiles && sudo eclean -d packages'
fi fi
fi fi
# If we have instantmusic, add aliases for that # If we have instantmusic, add aliases for that
if command -v instantmusic > /dev/null 2>&1; then if has instantmusic; then
alias song='instantmusic -p -s' alias song='instantmusic -p -s'
alias songp='instantmusic -s' alias songp='instantmusic -s'
fi fi
# Dictionary aliases # Dictionary aliases
if ! command -v define > /dev/null 2>&1; then if ! has define; then
if command -v mate-dictionary > /dev/null 2>&1; then if has mate-dictionary; then
alias define='mate-dictionary -n --look-up' alias define='mate-dictionary -n --look-up'
fi fi
fi fi
@ -242,5 +248,6 @@ case "$_baseshell" in
esac esac
# Clean up # Clean up
unset _baseshell unset -v _baseshell
unset -f has