This repository has been archived on 2022-01-17. You can view files and clone it, but cannot push or open issues/pull-requests.
recipes/rc/profile

57 lines
920 B
Bash

#!/bin/sh
path_sanitize() {
echo "${1}" | /bin/sed 's|//|/|g'
}
path_add() {
path="$1"
entry="$(path_sanitize "$2")"
if [ -z "$path" ]; then
echo "$entry"
else
echo "$path:$entry"
fi
}
path_remove() {
path="$1"
entry="$(path_sanitize "$2")"
# If $entry is the last entry.
if [ "${path##*:}" = "$entry" ]; then
echo "${path%:*}"
return 0
fi
echo "$path" | /bin/sed "s|$entry:||"
}
prefix_add() {
prefix="$1"
PATH="$(path_add "$PATH" "$prefix/bin")"
PATH="$(path_add "$PATH" "$prefix/sbin")"
}
prefix_remove() {
prefix="$1"
PATH="$(path_remove "$PATH" "$prefix/bin")"
PATH="$(path_remove "$PATH" "$prefix/sbin")"
}
PATH=
# Latest will usually be used first. More can be added with new calls
# to prefix_add.
prefix_add /
prefix_add /usr/weirdos
prefix_add /usr/local
# Use these instructions to remove already defined prefixes.
#prefix_remove /usr/weirdos
#prefix_remove /usr/local