@digitaldrummerj
What is the package manager you speak of?
iex
(
(new-object net.webclient).DownloadString
(
'https://chocolatey.org/install.ps1'
)
)
vagrant init [box name]
vagrant init opentable/win-8.1-enterprise-amd64-nocm
Vagrant.configure(2) do |config|
config.vm.box = "opentable/win-8.1-enterprise-amd64-nocm"
config.vm.hostname = "NDCTestMachine"
config.vm.boot_timeout = 600
config.vm.communicator = "winrm"
....Virtualbox Config
....Provisioning
end
Vagrant.configure(2) do |config|
.....
config.vm.provider "virtualbox" do |vb|
vb.gui = true
vb.memory = "8192"
vb.cpus = 2
vb.name = "Ndc Test Machine"
vb.customize ["modifyvm", :id, "--vram", "128"]
vb.customize ["modifyvm", :id, "--clipboard", "bidirectional"]
end
...Provisioning
end
Vagrant.configure(2) do |config|
.....
config.vm.provision :shell,
path: "shell/main.cmd"
config.vm.provision :shell,
path: "shell/InstallBoxStarter.bat"
config.vm.provision "file",
source: "shell/RunBoxStarterGist.bat",
destination: "desktop\\RunBoxStarterGist.bat"
end
Vagrant.configure(2) do |config|
.....
config.vm.provision :shell,
path: "shell/main.cmd"
config.vm.provision :shell,
path: "shell/InstallBoxStarter.bat"
config.vm.provision "file",
source: "shell/RunBoxStarterGist.bat",
destination: "desktop\\RunBoxStarterGist.bat"
end
@powershell -NoProfile -ExecutionPolicy Bypass -File
"%systemdrive%\vagrant\shell\RemoveDefaultPrograms.ps1"
@powershell -NoProfile -ExecutionPolicy Bypass -File
"%systemdrive%\vagrant\shell\InstallChocolatey.ps1"
config.vm.provision :shell,
path: "shell/InstallBoxStarter.bat"
Vagrant.configure(2) do |config|
.....
config.vm.provision :shell,
path: "shell/main.cmd"
config.vm.provision "file",
source: "shell/RunBoxStarterGist.bat",
destination: "desktop\\RunBoxStarterGist.bat"
end
chocolatey feature enable -n=allowGlobalConfirmation
choco install BoxStarter
chocolatey feature disable -n=allowGlobalConfirmatio
config.vm.provision "file",
source: "shell/RunBoxStarterGist.bat",
destination: "desktop\\RunBoxStarterGist.bat"
end
Vagrant.configure(2) do |config|
.....
config.vm.provision :shell,
path: "shell/main.cmd"
config.vm.provision :shell,
path: "shell/InstallBoxStarter.bat"
copy
"%systemdrive%\vagrant\shell\BoxStarterGist.txt"
"%temp%\BoxStarterGist.txt"
@powershell
-NoProfile -ExecutionPolicy Bypass
-Command "Install-BoxStarterPackage
-PackageName %temp%\\BoxstarterGist.txt"
Enable-RemoteDesktop
Set-CornerNavigationOptions -EnableUsePowerShellOnWinX
Set-ExplorerOptions
-EnableShowHiddenFilesFoldersDrives
-EnableShowProtectedOSFiles
-EnableShowFileExtensions
-EnableShowFullPathInTitlebar
Set-TaskbarOptions -Size Small -Lock
chocolatey feature enable -n=allowGlobalConfirmation
choco install git
choco install nodejs
choco install visualstudiocode
choco install GoogleChrome
.....
chocolatey feature disable -n=allowGlobalConfirmation
Install-ChocolateyPinnedTaskBarItem
"${env:UserProfile}\Desktop\code.lnk"
Install-ChocolateyPinnedTaskBarItem
"${env:ProgramFiles(x86)}\Google\Chrome\Application\chrome.exe"
npm config set loglevel http
npm config set spin false
npm install -g ionic
npm install -g cordova
$vsCodeDir = "${env:appdata}\Code"
If ((Test-Path $vsCodeDir)) {
cp "${env:temp}\VisualStudioCode_keybinding.json"
"$vsCodeDir\keybinding.json"
cp "${env:temp}\VisualStudioCode_UserSettings.json"
"$vsCodeDir\usersettings.json"
}
else {
Write-Host "Error: Visual Studio Code Directory, $vsCodeDir is missing"
}
$projectDir = "${env:systemdrive}\projects"
If (!(Test-Path $projectDir)) {
New-Item -Path $projectDir -ItemType Directory
}
cd $projectDir
git clone ....
Setup Windows Remote Management (WinRM)
http://tinyurl.com/winrmconfig
vagrant package --base NAME --output NAME
VirtualBox - http://www.virtualbox.org
Vagrant Website - http://www.vagrantup.com
Vagrant Boxes - https://atlas.hashicorp.com/boxes/search
Chocolatey - https://chocolatey.org/
BoxStarter - https://boxstarter.org/
@digitaldrummerj - digitaldrummerj@gmail.com
http://digitaldrummerj.me