Last active
February 27, 2019 14:45
-
-
Save clabnet/ea4fc52778333cd7d30cff7e0debd980 to your computer and use it in GitHub Desktop.
Boxstarter script for my development computer
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Boxstarter script for development environment | |
# START http://boxstarter.org/package/nr/url? | |
# oppure : START http://boxstarter.org/package/nr/url?c:\temp\install-my-computer.ps1 | |
# oppure : Install-BoxstarterPackage -PackageName https://gist.github.com/clabnet/ea4fc52778333cd7d30cff7e0debd980 -DisableReboots | |
function SetPowerPlan([string]$PreferredPlan) | |
{ | |
Write-Host "Setting Powerplan to $PreferredPlan" | |
$guid = (Get-WmiObject -Class win32_powerplan -Namespace root\cimv2\power -Filter "ElementName='$PreferredPlan'").InstanceID.tostring() | |
$regex = [regex]"{(.*?)}$" | |
$newpowerVal = $regex.Match($guid).groups[1].value | |
# setting power setting to high performance | |
powercfg -S $newpowerVal | |
} | |
# Boxstarter options | |
$Boxstarter.RebootOk=$true # Allow reboots? | |
$Boxstarter.NoPassword=$false # Is this a machine with no login password? | |
$Boxstarter.AutoLogin=$true # Save my password securely and auto-login after a reboot | |
# ------------------------- | |
# Windows configuration changes | |
# ------------------------- | |
Set-ExecutionPolicy Unrestricted | |
Disable-UAC | |
Set-WindowsExplorerOptions -EnableShowHiddenFilesFoldersDrives -EnableShowFileExtensions | |
Enable-RemoteDesktop | |
Disable-InternetExplorerESC | |
Disable-GameBarTips | |
Disable-BingSearch | |
Set-TaskbarOptions -Lock | |
# Power plan setup | |
SetPowerPlan "High performance" | |
Write-BoxstarterMessage "Setting Standby Timeout to Never" | |
& powercfg.exe -change -standby-timeout-ac 0 | |
& powercfg.exe -change -standby-timeout-dc 0 | |
Write-BoxstarterMessage "Setting Monitor Timeout to Never" | |
& powercfg.exe -change -monitor-timeout-ac 0 | |
& powercfg.exe -change -monitor-timeout-dc 0 | |
Write-BoxstarterMessage "Setting Disk Timeout to Never" | |
& powercfg.exe -change -disk-timeout-ac 0 | |
& powercfg.exe -change -disk-timeout-dc 0 | |
Write-BoxstarterMessage "Turning off Windows Hibernation" | |
& powercfg.exe -h off | |
# Install chocolatey | |
#cinst chocolatey | |
#choco feature enable -n allowGlobalConfirmation | |
#choco feature enable -n allowEmptyChecksums | |
#choco feature enable -n allowEmptyChecksumsSecure | |
#choco feature disable -n checksumFiles | |
iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex | |
choco install -y boxstarter | |
# DotNet Runtime | |
cinst dotnet3.5 -y | |
cinst dotnet4.5.1 -y | |
cinst DotNet4.6.1 -y | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# Windows Features | |
#cinst Microsoft-Hyper-V-All -source windowsFeatures | |
cinst IIS-WebServerRole -source windowsfeatures | |
cinst IIS-WebServer -source windowsfeatures | |
cinst IIS-HttpCompressionDynamic -source windowsfeatures | |
cinst IIS-ManagementScriptingTools -source windowsfeatures | |
cinst IIS-WindowsAuthentication -source windowsfeatures | |
cinst IIS-Security -source windowsfeatures | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# Windows Update and reboot if necessary | |
Install-WindowsUpdate -AcceptEula -GetUpdatesFromMS | |
if (Test-PendingReboot) { Invoke-Reboot } | |
Disable-MicrosoftUpdate | |
# Browsers | |
cinst googlechrome -ignore-checksums | |
cinst firefox -packageParameters "l=en-US" | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# Essentials software | |
cinst 7zip | |
cinst adobereader | |
cinst javaruntime | |
cinst jdk8 | |
cinst typora | |
cinst notepadplusplus | |
cinst dropbox | |
cinst teamviewer | |
cinst slack | |
cinst skype | |
cinst treesizefree | |
cinst virtualclonedrive | |
cinst thunderbird | |
cinst keepass | |
cinst Ditto | |
cinst PDFCreator | |
#cinst ultradefrag | |
cinst virtualbox | |
cinst ccleaner | |
cinst xplorer2pro | |
cinst hashtab | |
cinst ilspy | |
cinst openvpn | |
cinst rdmfree | |
cinst curl -y | |
cinst wget -y | |
cinst -y spotify | |
## Developer | |
cinst git | |
cinst git.install | |
cinst gitkraken | |
cinst sublimetext3 | |
cinst fiddler4 | |
cinst beyondcompare | |
cinst TestDriven.Net | |
cinst filezilla | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# Node | |
cinst nodejs | |
cinst nodejs.install | |
cinst npm | |
cinst yarn | |
#Write-Host 'Installing Bower. This may take a few minutes' | |
#cmd /c "refreshenv && npm install -g bower" | |
Write-Host 'Installing Gulp. This may take a few minutes' | |
cmd /c "refreshenv && npm install -g gulp" | |
# Developer Environment | |
cinst mongodb | |
#SQL Server 2014 Express | |
cinst mssql2014express-defaultinstance | |
cinst sql-server-management-studio | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# Install Visual Studio 2017 Professional | |
cinst visualstudio2017professional | |
# Install Visual Studio Code | |
cinst vscode | |
if (Test-PendingReboot) { Invoke-Reboot } | |
# VS extensions | |
#Install-ChocolateyVsixPackage WebEssentials2013 http://visualstudiogallery.msdn.microsoft.com/56633663-6799-41d7-9df7-0f2a504ca361/file/105627/31/WebEssentials2013.vsix | |
# Windows Explorer settings | |
#Install-ChocolateyPinnedTaskBarItem "$($Boxstarter.programFiles86)\Google\Chrome\Application\chrome.exe" | |
Install-ChocolateyPinnedTaskBarItem "$($Boxstarter.programFiles)\Mozilla Firefox\firefox.exe" | |
#Install-ChocolateyPinnedTaskBarItem "$($Boxstarter.programFiles86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe" | |
#Install-ChocolateyPinnedTaskBarItem "$($Boxstarter.programFiles86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\Ssms.exe" | |
#Install-ChocolateyPinnedTaskBarItem "$env:programfiles\Sublime Text 3\sublime_text.exe" | |
# Remove windows update uninstallers | |
Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase | |
#Cleanup the disk | |
Start-Process -FilePath "C:\Program Files\CCleaner\CCleaner.exe" -ArgumentList "/CLEANER /AUTO" | |
Start-Sleep -s 20 | |
# Defragment drive | |
#Start-Process -FilePath "udefrag.exe" -ArgumentList '--optimize --repeat C:' -Wait | |
Write-BoxstarterMessage "Enabling UAC, Windows Update, and Cleaning up Boxstarter junk" | |
Update-ExecutionPolicy Unrestricted | |
Enable-MicrosoftUpdate | |
Install-WindowsUpdate -acceptEula -GetUpdatesFromMS | |
#Turn UAC Back on | |
Enable-UAC | |
# Final operation. Shutdown. | |
stop-computer |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment