Você pode criar um arquivo sh que defina uma função que atualizou o ambiente. A função pode ser nomeada "tool_name".
Verifique se há link - as células de login interativas acessam /etc/profile
. Verifique esse arquivo no seu sistema e você verá que ele fará algo como a origem de todos os arquivos em uma determinada diretiva. No meu sistema baseado em Ubuntu, é
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
Então, o arquivo /etc/profile.d/tool_name.sh
parece
# create the tool function to update the environment
tool_name() {
# todo: parse options, validate arguments
export PROJ=$1
PYTHONPATH+=":$PROJ/bin"
}
E os usuários não precisam de nada especial para disponibilizá-los para eles.
Não estou dizendo como distribuir isso para muitas caixas. Você precisará de privilégios sudo ou acesso root para instalar em /etc/profile.d