Skip to content

Instantly share code, notes, and snippets.

@baralong
Last active October 16, 2025 03:32
Show Gist options
  • Select an option

  • Save baralong/53c526d2347b110de8cb to your computer and use it in GitHub Desktop.

Select an option

Save baralong/53c526d2347b110de8cb to your computer and use it in GitHub Desktop.
Sysinit - winget
Set-ExecutionPolicy Unrestricted -force
# fix Mouse scrolling, not always needed, but if you do you need to run this every time uyou use a new mouse
Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Enum\HID\*\*\Device` Parameters FlipFlopWheel -EA 0 | ForEach-Object { Set-ItemProperty $_.PSPath FlipFlopWheel 1 }
# From https://learn.microsoft.com/en-us/windows/package-manager/winget/
# The WinGet command line tool is only supported on Windows 10 version 1809 (build 17763) or later.
# WinGet will not be available until you have logged into Windows as a user for the first time,
# triggering Microsoft Store to register the Windows Package Manager as part of an asynchronous
# process. If you have recently logged in as a user for the first time and find that WinGet is not
# yet available, you can open PowerShell and enter the following command to request this WinGet
# registration:
Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.
#iex ((new-object net.webclient).DownloadString('https://community.chocolatey.org/install.ps1'))
# essential programs
winget install --id Google.Chrome # web browser
winget install --id Microsoft.VisualStudioCode # text editor, IMHO the best one
winget install --id Microsoft.PowerToys # useful utilities
winget install --id ScooterSoftware.BeyondCompare.5 # file and directory compare tool
winget install --id dotPDN.PaintDotNet # image editor
winget install --id XnSoft.XnViewMP # image viewer
winget install --id 7zip.7zip # archive file manager
winget install --id voidtools.Everything # better than windows search
winget install --id UderzoSoftware.SpaceSniffer # disk space analyzer
winget install --id Chocolatey.Chocolatey # because winget doestn't have everything
choco feature enable -n=allowGlobalConfirmation # so we don't have to keep saying yes
choco install FiraCode # nice programming font often doesn't install cleanly
# this one is optional, but once installed from an admin account you can then remove your regular account
# from the admin group, then use this to run programs with admin rights when needed
# because windows doesn't have sudo
winget install --id pseymour.MakeMeAdmin # run programs with admin rights easily
# set timeout to 34 minutes (default is 15)
New-Item "HKLM:\SOFTWARE\Policies\Sinclair Community College\Make Me Admin"
Set-ItemProperty "HKLM:\SOFTWARE\Policies\Sinclair Community College\Make Me Admin" "Admin Rights Timeout" 34
# other dev tools and utilities
winget install --id git.git # source code management
choco install poshgit # git prompt and tab completion for powershell
winget install --id LINQPad.LINQPad.8 # .NET code scratchpad
winget install --id OpenJS.NodeJS # JavaScript runtime
winget install --id DBeaver.DBeaver.Community # database management tool
winget install --id Docker.DockerDesktop # containerisation
winget install --id AivarAnnamaa.Thonny # Python IDE
winget install --id PuTTY.PuTTY # SSH client
winget install --id RaspberryPiFoundation.RaspberryPiImage # Raspberry Pi imaging tool
winget install --id Devolutions.RemoteDesktopManager # remote desktop management
npm install -g yarn # better package manager for JavaScript
npm install -g typescript # TypeScript language
wsl --install -d Ubuntu # Windows Subsystem for Linux with Ubuntu
# git config
git config --global user.name "YourName" # set your name for commits
git config --global user.email "YourEmail" # set your email for commits
git config --global push.autoSetupRemote true # set up remote tracking branches automatically on push
git config --global core.autocrlf true # handle line endings properly on Windows
# make log output pretty
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
# beyond compare as diff and merge tool
git config --global diff.tool bc
git config --global difftool.bc.path "c:/Program Files/Beyond Compare 5/bcomp.exe"
git config --global merge.tool bc
git config --global mergetool.bc.path "c:/Program Files/Beyond Compare 5/bcomp.exe"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment