homebrew-core/Formula/nvm.rb
2020-01-17 18:40:17 +01:00

45 lines
1.6 KiB
Ruby

class Nvm < Formula
desc "Manage multiple Node.js versions"
homepage "https://github.com/nvm-sh/nvm"
url "https://github.com/nvm-sh/nvm/archive/v0.35.2.tar.gz"
sha256 "520c1909d702a68c1334abc24027075ed65ac331bbc4d5b5895203517090bc54"
head "https://github.com/nvm-sh/nvm.git"
bottle :unneeded
def install
prefix.install "nvm.sh", "nvm-exec"
bash_completion.install "bash_completion" => "nvm"
end
def caveats; <<~EOS
Please note that upstream has asked us to make explicit managing
nvm via Homebrew is unsupported by them and you should check any
problems against the standard nvm install method prior to reporting.
You should create NVM's working directory if it doesn't exist:
mkdir ~/.nvm
Add the following to #{shell_profile} or your desired shell
configuration file:
export NVM_DIR="$HOME/.nvm"
[ -s "#{opt_prefix}/nvm.sh" ] && \. "#{opt_prefix}/nvm.sh" # This loads nvm
[ -s "#{opt_prefix}/etc/bash_completion.d/nvm" ] && \. "#{opt_prefix}/etc/bash_completion.d/nvm" # This loads nvm bash_completion
You can set $NVM_DIR to any location, but leaving it unchanged from
#{prefix} will destroy any nvm-installed Node installations
upon upgrade/reinstall.
Type `nvm help` for further information.
EOS
end
test do
output = pipe_output("NODE_VERSION=homebrewtest #{prefix}/nvm-exec 2>&1")
assert_no_match /No such file or directory/, output
assert_no_match /nvm: command not found/, output
assert_match "N/A: version \"homebrewtest -> N/A\" is not yet installed", output
end
end