The version manager to end all version managers
STATUS: IN DEVELOPMENT
- Your OS's package manager doesn't contain the latest (or multiple)
$language
versions - You want an OS-independent way to install and switch between
$language
versions - You are tired of installing and configuring version managers (or version manager plugins) for every single language
- More repeatable and reproducible builds
- Just Fucking Works
- Optionally configurationless
- Clean Bash code
- Favors builtins and native Bash features (over external commands)
- Supports 35 tools on at least
x86_64
(see roadmap and languages for details) - Compatible with .tool-versions, nvm's .nvmrc and read things from popular version managers like
rvm
andpyenv
- Fast
- Uses no symlinks or shims
External utilities are only used due to necessity or efficiency. The following are used
- cURL
- jq 1.6
- POSIX
mv
,cat
,cp
,uname
,stty
,, etc. - sort (TODO: phase out -V GNUism)
- Optional:
pv
Use Basalt, a Bash package manager, to install this project globally
basalt global add hyperupcall/woof