Last active
April 6, 2020 01:14
-
-
Save michael-wolfenden/5c48173ac7b8113f9e4a11b4038fedf7 to your computer and use it in GitHub Desktop.
My Boxstarter Script
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
########################################################################## | |
# Disable UAC (temporarily) | |
########################################################################## | |
Disable-UAC | |
########################################################################## | |
# Create temporary directory | |
########################################################################## | |
# Workaround choco / boxstarter path too long error | |
# https://github.com/chocolatey/boxstarter/issues/241 | |
$ChocoCachePath = "$env:USERPROFILE\AppData\Local\Temp\chocolatey" | |
New-Item -Path $ChocoCachePath -ItemType Directory -Force | |
########################################################################## | |
# Windows settings | |
########################################################################## | |
Disable-BingSearch | |
Disable-GameBarTips | |
Set-WindowsExplorerOptions ` | |
-EnableShowHiddenFilesFoldersDrives ` | |
-EnableShowProtectedOSFiles ` | |
-EnableShowFileExtensions ` | |
-EnableShowFullPathInTitleBar ` | |
-EnableExpandToOpenFolder | |
Set-ItemProperty ` | |
-Path "HKLM:SYSTEM\CurrentControlSet\Control\FileSystem" ` | |
-Name LongPathsEnabled ` | |
-Type DWord ` | |
-Value 1 | |
Set-TaskbarOptions ` | |
-Size Small ` | |
-Dock Bottom ` | |
-Combine Never ` | |
-Lock | |
########################################################################## | |
# Enable Windows subsystem for Linux | |
########################################################################## | |
choco install --cache="$ChocoCachePath" --yes Microsoft-Hyper-V-All -source windowsFeatures | |
choco install --cache="$ChocoCachePath" --yes Microsoft-Windows-Subsystem-Linux -source windowsfeatures | |
########################################################################## | |
# Power settings | |
########################################################################## | |
powercfg /change monitor-timeout-ac 0 # Don't turn off monitor | |
powercfg /change standby-timeout-ac 0 # Don't ever sleep | |
########################################################################## | |
# Uninstall bloatware | |
########################################################################## | |
Get-AppxPackage Microsoft.3DBuilder | Remove-AppxPackage | |
Get-AppxPackage Microsoft.WindowsAlarms | Remove-AppxPackage | |
Get-AppxPackage *Autodesk* | Remove-AppxPackage | |
Get-AppxPackage *BubbleWitch* | Remove-AppxPackage | |
Get-AppxPackage king.com.CandyCrush* | Remove-AppxPackage | |
Get-AppxPackage Microsoft.MicrosoftOfficeHub | Remove-AppxPackage | |
Get-AppxPackage Microsoft.WindowsMaps | Remove-AppxPackage | |
Get-AppxPackage *Netflix* | Remove-AppxPackage | |
Get-AppxPackage Microsoft.BingWeather | Remove-AppxPackage | |
Get-AppxPackage Microsoft.SkypeApp | Remove-AppxPackage | |
Get-AppxPackage Microsoft.Microsoft3DViewer | Remove-AppxPackage | |
Get-AppxPackage Microsoft.MixedReality.Portal | Remove-AppxPackage | |
Get-AppxPackage Microsoft.ZuneMusic | Remove-AppxPackage | |
Get-AppxPackage Microsoft.YourPhone | Remove-AppxPackage | |
Get-AppxPackage Microsoft.MSPaint | Remove-AppxPackage | |
Get-AppxPackage Microsoft.MicrosoftSolitaireCollection | Remove-AppxPackage | |
########################################################################## | |
# Privacy | |
########################################################################## | |
# Privacy: Let apps use my advertising ID: Disable | |
If (-Not (Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo")) { | |
New-Item -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo | Out-Null | |
} | |
Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo -Name Enabled -Type DWord -Value 0 | |
# WiFi Sense: HotSpot Sharing: Disable | |
If (-Not (Test-Path "HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting")) { | |
New-Item -Path HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting | Out-Null | |
} | |
Set-ItemProperty -Path HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting -Name value -Type DWord -Value 0 | |
# WiFi Sense: Shared HotSpot Auto-Connect: Disable | |
Set-ItemProperty -Path HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots -Name value -Type DWord -Value 0 | |
########################################################################## | |
# User interface | |
########################################################################## | |
# Change Explorer home screen back to "This PC" | |
Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced -Name LaunchTo -Type DWord -Value 1 | |
# Start Menu: Disable Bing Search Results | |
Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search -Name BingSearchEnabled -Type DWord -Value 0 | |
# Turn off People in Taskbar | |
If (-Not (Test-Path "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People")) { | |
New-Item -Path HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name PeopleBand -Type DWord -Value 0 | |
# Disable the Lock Screen (the one before password prompt - to prevent dropping the first character) | |
If (-Not (Test-Path HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization)) { | |
New-Item -Path HKLM:\SOFTWARE\Policies\Microsoft\Windows -Name Personalization | Out-Null | |
} | |
Set-ItemProperty -Path HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization -Name NoLockScreen -Type DWord -Value 1 | |
########################################################################## | |
# Install Ubuntu | |
########################################################################## | |
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile ~/Downloads/Ubuntu.appx -UseBasicParsing | |
Add-AppxPackage -Path ~/Downloads/Ubuntu.appx | |
RefreshEnv | |
Ubuntu1804 install --root | |
Ubuntu1804 run apt-get update -y | |
Ubuntu1804 run apt-get upgrade -y | |
########################################################################## | |
# Apps | |
########################################################################## | |
choco upgrade --cache="$ChocoCachePath" --yes googlechrome | |
choco upgrade --cache="$ChocoCachePath" --yes vscode-insiders | |
choco upgrade --cache="$ChocoCachePath" --yes git | |
choco upgrade --cache="$ChocoCachePath" --yes 7zip.install | |
choco upgrade --cache="$ChocoCachePath" --yes Microsoft-Hyper-V-All --source="'windowsFeatures'" | |
choco upgrade --cache="$ChocoCachePath" --yes Microsoft-Windows-Subsystem-Linux --source="'windowsfeatures'" | |
choco upgrade --cache="$ChocoCachePath" --yes slack | |
choco upgrade --cache="$ChocoCachePath" --yes nugetpackageexplorer | |
choco upgrade --cache="$ChocoCachePath" --yes docker-for-windows | |
choco upgrade --cache="$ChocoCachePath" --yes chocolateygui | |
choco upgrade --cache="$ChocoCachePath" --yes powershell-core | |
choco upgrade --cache="$ChocoCachePath" --yes ripgrep | |
choco upgrade --cache="$ChocoCachePath" --yes starship | |
choco upgrade --cache="$ChocoCachePath" --yes linqpad | |
choco upgrade --cache="$ChocoCachePath" --yes linqpad | |
choco upgrade --cache="$ChocoCachePath" --yes cascadia-code-nerd-font --version=2.1.0 | |
########################################################################## | |
# Restore Temporary Settings | |
########################################################################## | |
Enable-UAC | |
Enable-MicrosoftUpdate | |
Install-WindowsUpdate -acceptEula |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment