Skip to content

Commit

Permalink
tools: add Boxstarter script
Browse files Browse the repository at this point in the history
Adds a Boxstarter script for easy Node.js building prerequisites installation

PR-URL: #17046
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: João Reis <[email protected]>
Reviewed-By: Gibson Fahnestock <[email protected]>
  • Loading branch information
bzoz authored and MylesBorins committed Dec 12, 2017
1 parent 8bd74c4 commit 1cc6df2
Show file tree
Hide file tree
Showing 3 changed files with 79 additions and 0 deletions.
3 changes: 3 additions & 0 deletions BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,9 @@ Depending on host platform, the selection of toolchains may vary.

## Building Node.js on supported platforms

*Note:* All prerequisites can be easily installed by following
[this bootstrapping guide](https://github.com/nodejs/node/blob/master/tools/bootstrap/README.md).

### Unix / macOS

Prerequisites:
Expand Down
55 changes: 55 additions & 0 deletions tools/bootstrap/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Node.js Bootstrapping Guide

## Windows

A [Boxstarter][] script can be used for easy setup of Windows systems with all
the required prerequisites for Node.js development. This script will install
the following [Chocolatey] packages:
* [Git for Windows][] with the `git` and Unix tools added to the `PATH`
* [Python 2.x][]
* [Visual Studio 2017 Build Tools][] with [Visual C++ workload][]

To install Node.js prerequisites using [Boxstarter WebLauncher][], just open
[this link](http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/nodejs/node/master/tools/bootstrap/windows_boxstarter)
with Internet Explorer or Edge browser on the target machine.

Alternatively, you can use PowerShell. Run those commands from an elevated
PowerShell terminal:
```console
Set-ExecutionPolicy Unrestricted -Force
iex ((New-Object System.Net.WebClient).DownloadString('http://boxstarter.org/bootstrapper.ps1'))
get-boxstarter -Force
Install-BoxstarterPackage https://raw.githubusercontent.com/nodejs/node/master/tools/bootstrap/windows_boxstarter -DisableReboots
```

Entire installation will take up about 8 GB of disk space.

## Linux

For building Node.js on Linux, following packages are required (note, that this
can vary from distribution to distribution):
* `git`
* `python`
* `gcc-c++` or `g++`
* `make`

To bootstrap Node.js on Linux, run in terminal:
* OpenSUSE: `sudo zypper install git python gcc-c++ make`
* Fedora: `sudo dnf install git python gcc-c++ make`
* Ubuntu, Debian: `sudo apt-get install git python g++ make`

## macOS

To install required tools on macOS, run in terminal:
```console
xcode-select --install
```

[Boxstarter]: http://boxstarter.org/
[Boxstarter WebLauncher]: http://boxstarter.org/WebLauncher
[Chocolatey]: https://chocolatey.org/
[Git for Windows]: https://chocolatey.org/packages/git
[Python 2.x]: https://chocolatey.org/packages/python2
[Visual Studio 2017 Build Tools]: https://chocolatey.org/packages/visualstudio2017buildtools
[Visual C++ workload]: https://chocolatey.org/packages/visualstudio2017-workload-vctools

21 changes: 21 additions & 0 deletions tools/bootstrap/windows_boxstarter
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Boxstarter (http://boxstarter.org/) script for Node.js prerequisites
#
# To install either open this link in IE or Edge:
# http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/nodejs/node/master/tools/bootstrap/windows_boxstarter
#
# Or run those commands in an elevated Powershell terminal:
# iex ((New-Object System.Net.WebClient).DownloadString('http://boxstarter.org/bootstrapper.ps1'))
# get-boxstarter -Force
# Install-BoxstarterPackage https://raw.githubusercontent.com/nodejs/node/master/tools/bootstrap/windows_boxstarter -DisableReboots
#
# For more detail see
# https://github.com/nodejs/node/blob/master/tools/bootstrap/README.md
#

# Git and Unix tools will be added to the PATH
choco install git -params /GitAndUnixToolsOnPath -y
choco install python2 -y

# Installs VS 2017 Build Tools
choco install visualstudio2017buildtools -y
choco install visualstudio2017-workload-vctools -y

0 comments on commit 1cc6df2

Please sign in to comment.