| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set -e | 
					
						
							|  |  |  | set -u | 
					
						
							|  |  |  | set -o pipefail | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ -z "${PREFIX-}" ]; then | 
					
						
							|  |  |  |   PREFIX="" | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-15 21:56:56 -06:00
										 |  |  | if [ -z "${NODE_PATH-}" ]; then | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  |   node_install_path=$PREFIX/usr/local | 
					
						
							| 
									
										
										
										
											2017-05-15 21:56:56 -06:00
										 |  |  | else | 
					
						
							|  |  |  |   node_install_path=$(dirname $(dirname $NODE_PATH)) | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-09-11 13:35:08 -06:00
										 |  |  | NODEJS_VER=${1} | 
					
						
							|  |  |  | NODEJS_VERT=$(echo ${NODEJS_VER} | cut -c 2- | cut -d '.' -f1) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | NODEJS_NAME="node" | 
					
						
							|  |  |  | NODEJS_BASE_URL="https://nodejs.org" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-12-22 21:50:41 -05:00
										 |  |  | if [ $NODEJS_VERT -ge 1 ] && [ $NODEJS_VERT -lt 4 ] | 
					
						
							| 
									
										
										
										
											2015-09-11 13:35:08 -06:00
										 |  |  | then | 
					
						
							| 
									
										
										
										
											2015-12-22 21:50:41 -05:00
										 |  |  |   echo "Selecting io.js instead of node.js for this version (>= 1.0.0 < 4.0.0)" | 
					
						
							| 
									
										
										
										
											2015-09-11 13:35:08 -06:00
										 |  |  |   NODEJS_BASE_URL="https://iojs.org" | 
					
						
							|  |  |  |   NODEJS_NAME="iojs" | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  | # When using .pkg | 
					
						
							|  |  |  | #NODEJS_REMOTE="$NODEJS_BASE_URL/dist/${NODEJS_VER}/${NODEJS_NAME}-${NODEJS_VER}.pkg" | 
					
						
							|  |  |  | #NODEJS_PKG="/tmp/${NODEJS_NAME}-${NODEJS_VER}.pkg" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-15 22:20:57 -06:00
										 |  |  | NODEJS_REMOTE="$NODEJS_BASE_URL/dist/${NODEJS_VER}/${NODEJS_NAME}-${NODEJS_VER}-darwin-x64.tar.gz" | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  | NODEJS_PKG="/tmp/${NODEJS_NAME}-${NODEJS_VER}-darwin-x64.tar.gz" | 
					
						
							|  |  |  | NODEJS_UNTAR="/tmp/${NODEJS_NAME}-${NODEJS_VER}-darwin-x64" | 
					
						
							| 
									
										
										
										
											2015-09-11 13:35:08 -06:00
										 |  |  | 
 | 
					
						
							|  |  |  | if [ -n "${NODEJS_VER}" ]; then | 
					
						
							|  |  |  |   echo "installing ${NODEJS_NAME} as ${NODEJS_NAME} ${NODEJS_VER}..." | 
					
						
							|  |  |  |   curl -fsSL "${NODEJS_REMOTE}" -o "${NODEJS_PKG}" | 
					
						
							| 
									
										
										
										
											2016-04-18 09:55:37 -06:00
										 |  |  |    | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  |   # When using .pkg | 
					
						
							|  |  |  |   #sudo /usr/sbin/installer -pkg "${NODEJS_PKG}" -target / | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   # When using .tar.gz | 
					
						
							| 
									
										
										
										
											2017-05-15 22:10:02 -06:00
										 |  |  |   mkdir -p ${NODEJS_UNTAR}/ | 
					
						
							| 
									
										
										
										
											2017-05-15 22:23:36 -06:00
										 |  |  |   tar xf "${NODEJS_PKG}" -C "${NODEJS_UNTAR}/" --strip-components=1 | 
					
						
							| 
									
										
										
										
											2017-05-15 21:53:39 -06:00
										 |  |  |   rm -f ${NODEJS_UNTAR}/{LICENSE,CHANGELOG.md,README.md} | 
					
						
							|  |  |  |   sudo rsync -a "${NODEJS_UNTAR}/" "$node_install_path/" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   sudo chown -R $(whoami) "$node_install_path/lib/node_modules/" | 
					
						
							|  |  |  |   sudo chown $(whoami) "$node_install_path/bin/" | 
					
						
							| 
									
										
										
										
											2015-01-15 15:41:04 -07:00
										 |  |  | fi |