altb is a cli utility influenced by update-alternatives
of ubuntu.
Linked paths are added to $HOME/.local/bin
according to XDG Base Directory Specification.
Config file is located at $HOME/.config/altb/config.yaml
.
Must use Python > 3.9 execute:
pipx install altb
to track new binary use:
altb track path <app_name>@<app_tag> /path/to/binary
for example:
altb track path python@2.7 /bin/python2.7
altb track path python@3.8 /bin/python3.8
# altb track path python ~/Downloads/python # will also work and generate a new hash for it
List all tracked versions:
$ altb list -a
python
|---- 2.7 - /bin/python2.7
|---- 3.8 - /bin/python3.8
Use specific version:
altb use <app_name>[@<app_tag>]
example:
altb use python@2.7
this will link the tracked path to ~/.local/bin/<app_name>
in this case - ~/.local/bin/python
Copy specific standalone binary automatically to ~/.local/share/altb/versions/<app_name>/<app_name>_<tag>
altb track path helm@3 ~/Downloads/helm --copy
You can run custom commands using:
altb track command special_command@latest "echo This is a command"
this especially useful for latest developments, example:
altb track command special_command@latest "go run ./cmd/special_command" --working-directory "$HOME/special_command"