4个版本 (2个稳定版)
使用旧Rust 2015
1.0.1 | 2016年6月12日 |
---|---|
1.0.0 | 2016年2月11日 |
0.6.0 | 2015年12月20日 |
0.5.1 | 2015年12月20日 |
#80 在 #ruby
每月35次下载
44KB
1K SLoC
avm 
动机
如果你想在机器上安装多个版本的node.js或Ruby,大多数工具都是用Shell编写的(nvm,rvm,rbenv)。一方面这很好,因为它很容易在Unix机器上安装,但另一方面它不能在Windows机器上使用,而且Shell代码不容易理解。至少对我来说是这样。尤其是后一个原因对我来说很重要。并不是很容易找到一个可以维护Shell代码的人,而且当有问题时,也不容易找到查找的地方。自从Rust变得稳定以来,我就抓住了这个机会,开始编写一个替代工具。它被称为avm,是“所有版本管理器”的缩写。现在它管理
- ✅ node.js
- ✅ Ruby
另一个优点是,由于Rust可以在许多平台上运行,因此还可以在不需要Bash的机器上运行avm,例如Windows。
安装
如果你使用Cargo 0.6.0(随Rust 1.5一起发货),你可以通过以下方式安装avm
$ cargo install avm
安装完成后,你需要将avm添加到你的 PATH
变量中,具体方法请参阅安装后。
安装Ruby所需的软件包
- zlib开发包(Ubuntu:
zlib1g-dev
) - readline支持(Ubuntu:
libreadline6
libreadline6-dev
) - C编译器(Ubuntu:
build-essential
) - OpenSSL(Ubuntu:
libssl-dev
,RHEL:openssl-dev
,Mac:openssl
)
默认情况下,avm使用/usr/include/openssl
作为查找路径。如果你想使用自定义路径,例如链接到通过homebrew安装的OpenSSL版本,则导出OPENSSL_INCLUDE_DIR
export OPENSSL_INCLUDE_DIR="$(brew --prefix openssl)/include"
安装完成后
安装完成后,你需要确保avm
在你的PATH
中。为此,你需要将以下行添加到~/.zshrc
或~/.bash_profile
export PATH=~/.avm/:~/.avm/node/bin:~/.avm/ruby/bin:$PATH
支持的平台
目前,avm可以在主要的Linux发行版和Mac OS X上运行。目前不支持Windows。有关详细信息,请参阅#33。
从0.6或更早版本升级到avm 1.x
有关说明,请参阅https://github.com/schultyy/avm/blob/master/upgrade_notice.md。
用法
node.js
安装新版本的node
$ avm install node 4.1.2
请注意,目前avm安装的是预编译的Node.js版本。目前不支持从源安装。
默认使用4.1.2
$ avm use node 4.1.2
使用您的系统node版本
$ avm use node system
列出所有已安装的版本
$ avm node ls
卸载版本
$ avm uninstall node 4.1.2
根据当前目录中的package.json
选择node版本
$ avm autoselect node
请注意,这取决于在package.json
中设置的engines
属性。如果engines
指定了小于4.x的node版本,则只检查严格相等。不支持这些版本的任何修饰符,如^
或范围。
Ruby
安装新版本的Ruby
$ avm install ruby 2.3.0
请注意,它仅从源安装。它从ruby-lang.org获取源tar包。目前只安装url中没有-pxyz
后缀的版本。
默认使用2.3.0
$ avm use ruby 2.3.0
列出所有已安装的版本
$ avm ls ruby
卸载版本
$ avm uninstall ruby 4.1.2
依赖项
~9.5MB
~186K SLoC