mirror of
				https://github.com/lukechilds/zsh-nvm.git
				synced 2025-10-30 14:46:28 +08:00 
			
		
		
		
	
		
			
	
	
		
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								#!/bin/sh
							 | 
						||
| 
								 | 
							
								source ../common.sh
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Node.js version to install
							 | 
						||
| 
								 | 
							
								node_version=v5.11.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Load zsh-nvm and install Node.js in subshell
							 | 
						||
| 
								 | 
							
								(load_zsh_nvm && nvm install "$node_version" && [[ "$(node --version)" == "$node_version" ]]) || die "node wasn't installed"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check node isn't available
							 | 
						||
| 
								 | 
							
								[[ "$(node --version)" != "$node_version" ]] || die "node shouldn't be available $(node --version)"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Set NVM_LAZY_LOAD to true
							 | 
						||
| 
								 | 
							
								export NVM_LAZY_LOAD=true
							 | 
						||
| 
								 | 
							
								export NVM_LAZY_LOAD_EXTRA_COMMANDS=('hostname' 'whoami')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Load zsh-nvm
							 | 
						||
| 
								 | 
							
								load_zsh_nvm
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check nvm is a lazy load function
							 | 
						||
| 
								 | 
							
								[[ $(which nvm) == *"_zsh_nvm_load"* ]] || die "nvm should be a lazy load function"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check node is a lazy load function
							 | 
						||
| 
								 | 
							
								[[ $(command -v node) == "node" ]] || die "node should be a shell function"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check npm is a lazy load function
							 | 
						||
| 
								 | 
							
								[[ $(command -v npm) == "npm" ]] || die "npm should be a shell function"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Init lazy loader
							 | 
						||
| 
								 | 
							
								whoami || die "couldn't run lazy loader"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check nvm is not a lazy load function
							 | 
						||
| 
								 | 
							
								[[ $(which nvm) != *"_zsh_nvm_load"* ]] || die "nvm should not be a lazy load function"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check node is a binary
							 | 
						||
| 
								 | 
							
								[[ "$(command -v node)" == "$(nvm_version_path $node_version)/bin/node" ]] || die "node should now be a binary"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check npm is a binary
							 | 
						||
| 
								 | 
							
								[[ "$(command -v npm)" == "$(nvm_version_path $node_version)/bin/npm" ]] || die "npm should now be a binary"
							 |