DEV Community

Cover image for From a Windows 10 clean installation to a Dev Environment in 30 minutes with Boxstarter
Emanuele Bartolesi
Emanuele Bartolesi

Posted on

From a Windows 10 clean installation to a Dev Environment in 30 minutes with Boxstarter

Setting up a development machine is always a big time-consuming task and every developer hates this activity.
But sometimes you have to do it because as a developer you have to install third-party software, beta releases, and other unstable pieces of stuff.

With Boxstarter I found a solution to solve this issue.
In almost one hour I have a dev machine up and running from a clean Windows installation.
It is also useful if you want to set up some virtual dev environment on the cloud.

Install Boxstarter

PowerShell is installed by default on a clean installation of Windows 10, so you can easily open a new instance in a terminal and type this command:

. { iwr -useb https://boxstarter.org/bootstrapper.ps1 } | iex; Get-Boxstarter -Force
Enter fullscreen mode Exit fullscreen mode

This command will install Boxstarter directly from the web.

If you have some issues to run remote script from PowerShell, you can run the command below to enabling remote script on your machine:

Set-ExecutionPolicy Unrestricted -Force
Enter fullscreen mode Exit fullscreen mode

Install your software from a gist

You have the best results with Boxstarter if you use a gist to store your machine setup.
For my purpose, I have this script below stored on gist.
The syntax is very simple.
The word "cinst" means "install this package" and you can find your favorite packages directly from the Chocolatey packages repository https://chocolatey.org/packages.
You have to use the Chocolatey packages because Boxstarter is built on top of it.

To run this gist, you have to use this command in a PowerShell terminal window:

Install-BoxstarterPackage -PackageName https://gist.githubusercontent.com/kasuken/d5e2ce84a9108002e81603fc3d42e492/raw/b5c5175ffa90c7665200a061db739a051abf0f74/devmachine.ps1 -DisableReboots
Enter fullscreen mode Exit fullscreen mode

Advanced settings

There are many advanced commands to customize Windows or install Windows features.
For example you can use these two commands below:

cinst Microsoft-Hyper-V-All -source windowsFeatures
Install-ChocolateyPinnedTaskBarItem "$env:windir\system32\mstsc.exe"
Enter fullscreen mode Exit fullscreen mode

The first one, install Hyper-V and you have to specify the source.
By default the source is Chocolatey but in this case, you force Boxstarter to use the source WindowsFeatures.
With the second one, you can pinned some apps or files to the taskbar directly.
I don't use this command because I like to do it manually after the overall installation.

Have a good Boxstarting!!!

Top comments (5)

Collapse
 
xeeynamo profile image
Luciano

Some months ago I made a project that does more or less the same thing :) github.com/xeeynamo/setup

I have no idea how much flexibility and amount of effort should I made to achieve the same with boxstarter.

Collapse
 
milburngomes profile image
MilburnGomes

Great Article! Got to know many useful tools frequently used by devs. Thanks for sharing!

Collapse
 
supermario_ai profile image
SuperMario

Do you have a flow for a box without W10 installed?

Use case:

I want to reimage a box with a fresh W10 image, but invoke Choco and Boxstarter from boot.

TYIA! ❤️💯

Collapse
 
diegobaldeschi profile image
Diego Baldeschi

I had read that ccleaner would no longer be possible to install on win10 is it true? Anyway, good article as always

Collapse
 
mohsenoid profile image
Mohsen Mirhoseini

Nice tool and article,
My question is "Why the article image is a MacBook?!!"