In my quest to set up the "perfect" program install worksheet for Windows . . . Priorities are: easy update, easy install, useful.
While setting up I spend some time in command prompt in the desktop directory. Copy cmd.exe from windows\system32 and paste on desktop. Saves time changing directory each time you open it.
copy "C:\Windows\System32\cmd.exe" "%userprofile%\Desktop"
1. Chris Titus Script
Open Powershell as Admin and type this:
irm christitus.com/win | iex
do Minimal or Standard Tweaks
set Windows update to security only if updated to point you want
grab some essential programs or run your apps.bat separately
Bottom right of tweaks tab create shortcut for script on desktop.
If UniGetUI is installed through ChrisTitus, Winget will be updated if needed.
Humourously, UniGetUI will not be installed because of wrong link.
2. UniGetUI
download and install
winget install -e --id=MartiCliment.UniGetUI
winget install -e --id=winaero.tweaker
Eliminate "shortcut" labels
Right Click Context Menu
Add "take ownership" to right click
Add cmd as admin
Add powershell as admin
Add shutdown
4. Wintoys
winget install -e --accept-package-agreements --id=9P8LTPGCBZXD
Open the tweaks section and turn off most things.
If Chris Titus was used many will me done already.
Check the other sections also.
5. RevoUninstaller
winget install -e --id=RevoUninstaller.RevoUninstaller
remove Windows Apps tab
portable version
Winget: Getting winget to update and run in Windows 10 keeps changing. So just in case.
A. Grab it from GitHub https://github.com/microsoft/winget-cli (Go to latest and download "Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle)
or
Winget & Dependencies (grab all 3 with 1 bat file)
<If curl does not work try curl.exe>
1. curl -O -L "https://github.com/microsoft/microsoft-ui-xaml/releases/download/v2.8.6/Microsoft.UI.Xaml.2.8.x64.appx"
2. curl -O -L "https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx"
3. curl -O -L "https://aka.ms/getwinget"
Powershell to install appx (Add-AppxPackage -Path "C:\Path\to\File.Appx")
right click file > copy as path
or
B. Or go to https://winget.run upper left grab the lastest msix bundle.
C. Or Christitus has winget reinstall in tweaks section which sometimes works.
Installing UnigetUI will update Winget and dependencies.
Ironically, right now it won't install UniGetUI because of wrong id.
The first things I install are: (create a "Portable" folder on C:)
Symenu for portable apps
command prompt
curl -O -L "https://www.ugmfree.it/Download/SyMenu/SyMenu.zip"
Irritating that you now need to set up an account here https://www.ugmfree.it/forum/default.aspx
Use the user/password on first run of Symenu.
Download:
Defender Exclusion Tool (exclude the "excluded folder" you created)
PatchMyPC (I like the way it installs & updates programs, no user interaction needed.)
Or bypass Symenu and get PatchMyPC, Defender Exclusion, LaunchyQT
Excluded Folder
(If you don't know why you need this - don't bother with it)
Create a "Portable" folder on
mkdir C:\Portable
In that folder create an "Excluded" folder.
mkdir C:\Portable\Excluded
Get Defender Exclusion from Sordum and place in the Excluded folder. (or with Symenu)
cmd
start https://www.sordum.org/downloads/?st-defender-control
curl -O -L https://www.sordum.org/files/download/defender-exclusion-tool/ExcTool.zip
or download to Excluded folder
curl -L -o C:\Portable\Excluded\ExcTool.zip https://www.sordum.org/files/download/defender-exclusion-tool/ExcTool.zip
Use Defender Exclusion to exclude the folder from Windows Defender.
Get Defender Control from Sordum and place it into the Exclude folder.
cmd
Now 7zip with password "sordum". You may need to "allow" and unzip twice.
The first time Control is run Defender may ask to allow.
Add Control exe file to exclusion.
These simple steps will now work for running within the Excluded folder stuff Defender hates but you know is safe.
LaunchyQT (in UnigetUI from Chocolatey)
choco install launchyqt
or just for fun . . .
curl -O -L "https://github.com/samsonwang/LaunchyQt/releases/download/v3.1.7/Launchy-3.1.7-win-x64.7z"
LaunchyQT doesn't run on Win11-24H2 for some reason. Original Launchy does.
winget install CodeJelly.Launchy
Original is here
curl -O -L https://launchy.net/downloads/win/LaunchySetup2.6B2.exe
With high res screen, forget original Launchy
RocketDock (I just can't give it up) (in UnigetUI from Chocolatey)
choco install RocketDock -y
It's hard to find/download the portable version.
Just install it
In settings check save settings in "settings.ini"
copy the Rocketdock folder to your portable folder
uninstall the original.
Or just use the installed version.
If you get serious, you will want Stack Docklet.
Move it into Rocketdock\Docklets Folder.
I use the portable version. Be careful, it's like carrying the nuclear codes.
command prompt
curl -O -L "https://www.carifred.com/uvk/UVKPortable.exe"
AOMEI Backupper Standard
winget install -e --id=AOMEI.Backupper.Standard
backup the system periodically if you have a second HD installed
FC Portables has a Win PE pro version if needing to access individual files.
Looking for a specific Windows version for some unknown reason?
Visual C++ Runtimes
(If you need an old one or a reinstall) Chris Titus and/or PatchMyPC has current version.
winget install Microsoft.VCRedist.2015+.x64
The Mother Load of tweeks (I haven't used it but you never know)
Symenu:
Updates are easy & source is usually original provider.
Unfortunately you have to pick them one by one. I grab each program when I need it.
curl -O -L "https://www.ugmfree.it/Download/SyMenu/SyMenu.zip"
You need user name\password first time so go to website & set up.
1. LaunchyQT
Will need Visual C++ installed for needed dll
Already have it if UniGetUI is installed.
When UniGetUI installs and opened once, Chocolatey is installed.
curl -O -L "https://github.com/samsonwang/LaunchyQt/releases/download/v3.1.7/Launchy-3.1.7-win-x64.7z"
Win11 24H2 won't run LaunchyQT so install original. No difference that I can tell.
winget install CodeJelly.Launchy
2. PatchMyPC if not already done.
winget install -e --id=PatchMyPC.PatchMyPC
I'm using this less as UnigetUI gets better over time.
curl -O -L https://patchmypc.com/freeupdater/PatchMyPC.exe
AnyDesk (can install from the portable version if need it running always)
Any_Burn (insert files into iso and rebuild)
Autoruns (use UVK it does VirusTotal automatically)
CrystalDiskInfo_Portable
CrystalDiskMark_Portable
DriverBackup
FxSound (maybe Realtek only & ear buds right click-exit if needed)
HFS
HWiNFO
IcoFX
IObit Unlocker
LaunchyQT
MiniTool_Partition_Wizard_Free_(x64) (Clone disk is in v10 which I keep on Mega.nz)
NeatDownloadManager
PatchMyPC
PDF_Arranger
PeStudio (File analysis crazy detail)
PortableWindowsRepair
Process_Explorer (use UVK it does VirusTotal)
Process_Hacker
Q-Dir_(x64)
Rainmeter4_(x64) (skins Enigma mod the network.inc for IP) (SilverAzide Gadgets)
Revo_Uninstaller
Safe_Mode_Launcher
ScreenToGif_(x64)
Show or Hide Updates Tool
Snappy_Driver_Installer_Origin
Speccy (This has become worthless on older PC)
Sumatra_PDF_(x64)
Tor_Browser
Ventoy
VeraCrypt_Portable
Windows_Repair_Toolbox
WinSCP
Wise_Disk_Cleaner
Nirsoft
QuickSetDNS
TaskSchedulerView_x64
Volumouse_x64
Even though this is in Symenu, Defender won't allow it and will delete it.
Save the headache and download portable from MajorGeeks into Excluded folder.
curl -O -L https://www.nirsoft.net/utils/wnetwatcher-x64.zip
PatchMyPC.ini file: Patch will find updates for programs not installed with PatchMyPC. It is so good with quiet install, I use it for updates first before Winget.
Right click on a program and set for automatic install. This will creat the .ini file in the Patch folder. Then you can edit the .ini file for all your downloads.
Not in Symenu
BatToExe great to convert bat to exe and insert icon
curl -O -L https://github.com/Makazzz/BatToExePortable/releases/download/3.1.99.1/BatToExePortable_3.2_Dev_Test_1.paf.exe
Winget:
To chain installs in cmd separate each ID with a space.
Or use a vertical list in notepad and save as a .bat file.
---
winget install --accept-source-agreements --accept-package-agreements ShareX.ShareX AutoHotkey.AutoHotkey voidtools.Everything voidtools.Everything HexChat.HexChat
pause
---
Win10 will need winget updated as described above.
Win11 may need updating to run also
*I'll leave this here but an easier way to install is with a .bat file.
See below near bottom of post
To export
winget export -o %userprofile%\Desktop\appslist --accept-source-agreements
To import
winget import -i %userprofile%\Desktop\appslist --ignore-versions --accept-package-agreements --accept-source-agreements
I usually install the following:
winget search is so fast it's overkill to provide these install instructions
but handy if setting up an install bat file
Actually, this can all be copied into Notepad and saved as a .bat file.
UniGetUI
winget install -e --accept-source-agreements --accept-package-agreements --id MartiCliment.UniGetUI
7zip
winget install -e --id 7zip.7zip
SyncBackFree
winget install -e --id 2BrightSparks.SyncBackFree
AOMEI.Backupper
winget install -e --id AOMEI.Backupper
AutoHotkey
winget install -e --id AutoHotkey.AutoHotkey
Brave
winget install -e --id Brave.Brave
Chocolatey.Chocolatey
winget install -e --id Chocolatey.Chocolatey
Chocolatey.ChocolateyGUI (just in case)
winget install -e --id Chocolatey.ChocolateyGUI
Everything Search
winget install -e --id voidtools.Everything
FileConverter
winget install -e --id AdrienAllard.FileConverter
Google.Chrome
winget install -e --id Google.Chrome
after install chrome://flags
parallel downloading
HexChat
winget install -e --id HexChat.HexChat
IrfanView
winget install -e --id IrfanSkiljan.IrfanView
IrfanView PlugIns
winget install -e --id IrfanSkiljan.IrfanView.PlugIns
LocalSend
winget install -e --id LocalSend.LocalSend
Microsoft.PowerToys
winget install -e --id Microsoft.PowerToys
NirSoft.Volumouse
winget install -e --id NirSoft.Volumouse
Notepad++
winget install -e --id Notepad++.Notepad++
PrivateInternetAccess
winget install -e --id PrivateInternetAccess.PrivateInternetAccess
qBittorrent.qBittorrent (Uncheck Behavior, Use Magnet) It's a bug ignore warning.
winget install -e --id qBittorrent.qBittorrent
ShareX
winget install -e --id ShareX.ShareX
Taskbarx (Win 10 only)
TranslucentTB
winget install -e --id CharlesMilette.TranslucentTB
Microsoft.WindowsTerminal
winget install -e --id Microsoft.WindowsTerminal
VirtualBox Oracle
winget install -e --id Oracle.VirtualBox
VideoLAN.VLC
winget install -e --id VideoLAN.VLC
Wintoys
winget install -e --accept-package-agreements --id 9P8LTPGCBZXD
- -
winget install.bat file installer
I find this continuous string harder to edit than the vertical list layout.
winget install -e --accept-source-agreements --accept-package-agreements 7zip.7zip Notepad++.Notepad++ ShareX.ShareX MartiCliment.UniGetUI AOMEI.Backupper AutoHotkey.AutoHotkey Chocolatey.Chocolatey Chocolatey.ChocolateyGUI voidtools.Everything Google.Chrome IrfanSkiljan.IrfanView IrfanSkiljan.IrfanView.PlugIns NirSoft.Volumouse CharlesMilette.TranslucentTB Microsoft.WindowsTerminal Oracle.VirtualBox VideoLAN.VLC 9P8LTPGCBZXD qBittorrent.qBittorrent LocalSend.LocalSend HexChat.HexChat
pause
Alternatives:
SMPlayer (I don't use a player much so no biggie to me)
winget install --id SMPlayer.SMPlayer also in Symenu
Find It Somewhere:
Deleted file recovery software
BatToExe Converter Portable (Embed icon into exe file)
curl -O -L https://github.com/tokyoneon/B2E/archive/refs/heads/master.zip
IcoFX is a great portable icon maker. (also in Symenu)
Classic Sticky Notes & Classic Notepad
ClearDisk Info (SSD Health) Is in UVK also
Defender Antivirus (Is more aggressive lately and does not turn off)
Sordum has a couple solutions when you need to do things Windows hates.
Defender Control (will need to be excluded in Defender) Is in Symenu
Defender Exclusion Tool (Speaking of exclusions)
Display Driver Uninstaller (advised to disable internet before running) Haven't need it lately.
Free PC Audit (great little PC inventory portable but not for IP info)
Gimp *Partha's site is down for some reason so go to WebArchive
Web Archive no longer produces full download.
On high res monitors try the size icon plugin
G'mic for Gimp (I use Parth's portable which includes it) Latest Gimp install breaks some things I like.
Samj's portable v 2.10.36 is here
curl -O -L https://www.aljacom.com/~gimp/Gimp-2.10.36_Portable_32-64bit-Win.7z
NeatDownloadManager
curl -O -L "https://www.neatdownloadmanager.com/file/NeatDM_setup.exe"
sciteautohotkey
curl -O -L "https://www.autohotkey.com/scite4ahk/dl/s4ahk-install.exe"
Stenanos LockNote (a passworded note app I've used for years)
curl -L https://go.steganos.com/productpage_locknote2_download_en -o Locknote.exe
TaskbarX
- Win11 (I use TranslucentTB instead)
- Win10
VMWare Workstation
you will need to register for login - Virtualbox has gotten so good I stick with it.
Xlight FTP
And it grabs your IP address :) Edit paths in user settings. Use WinSCP on the other end.
Try "pairdrop.net" if on the same network. Snapdrop on Android phone. Can stall out.
Windows sharing is great unless you have problems. Local Share is better.
Tweaks
Trash bin shortcut C:\Windows\explorer.exe shell:RecycleBinFolder
Explorer Patcher Win 11 (default all apps in start menu, etc.) I no longer use
Websites
Spelling & Grammar
https://languagetool.org/ (less baloney)
Windows Repair
FixWin leaves an irritating context menu entry. Remove it with this .reg file
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\DesktopBackground\Shell\UWTSettings]
Tron Script (run prep and disinfect sections only) (results in the log file) Last Resort
UltraVirusKiller (lots of useful stuff, easy threat analyzer)
curl -O -L "https://www.carifred.com/uvk/UVKPortable.exe"
(many of these are on the Chris Titus installer)
This list will not run in CMD being on lines like this. Must be continuous string separated by &&.
Also the string cann't contain all of them. Not sure of the limit.
*Silly me - put them into a .bat file
I just did this process and it worked right after a standard install
turn off UAC temoporarily
cmd admin
winget upgrade
see the list with these likely included
upgrade them
winget upgrade Microsoft.AppInstallerwi
winget upgrade Microsoft.VCLibs.Desktop.14
winget upgrade Microsoft.WindowsTerminal
or they could be placed into the bat file below
open Powershell admin
irm "https://christitus.com/win" | iex
Do Standard Tweaks - They can be reversed
Create link on Desktop
Set Update to Security
a bat file defaults to the directiory from which it is run.
So, when run from the desktop & containing a curl or winget command, it will download to the desktop.
If UniGetUI is not being installed, install this:
winget install -e --id=Microsoft.VCRedist.2015+.x64
including --accept-source-agreements --accept-package-agreements in the first winget install will avoid the y\n question.
Start .bat file
winget install -e --accept-source-agreements --accept-package-agreements --id=Microsoft.AppInstaller
winget install -e --id=Microsoft.VCLibs.Desktop.14
winget install -e --id=Microsoft.WindowsTerminal
winget install -e --id=MartiCliment.UniGetUI
winget install -e --id=7zip.7zip
winget install -e --id=2BrightSparks.SyncBackFree
winget install -e --id=AOMEI.Backupper
winget install -e --id=AutoHotkey.AutoHotkey
winget install -e --id=Brave.Brave
winget install -e --id=Chocolatey.Chocolatey
winget install -e --id=Chocolatey.ChocolateyGUI
winget install -e --id=voidtools.Everything
winget install -e --id=AdrienAllard.FileConverter
winget install -e --id=Google.Chrome
winget install -e --id=HexChat.HexChat
winget install -e --id=IrfanSkiljan.IrfanView
winget install -e --id =IrfanSkiljan.IrfanView.PlugIns
winget install -e --id=Microsoft.PowerToys
winget install -e --id=Notepad++.Notepad++
winget install -e --id=qBittorrent.qBittorrent
winget install -e --id=ShareX.ShareX
winget install -e --id=Oracle.VirtualBox
winget install -e --id=VideoLAN.VLC
winget install -e --accept-package-agreements --id=9PF4KZ2VN4W9
winget install -e --id=RevoUninstaller.RevoUninstaller
winget install -e --id=winaero.tweaker
pause
Some things are not available in Winget but in Chocolatey
choco install launchyqt RocketDock -y
pause
Win11
winget install -e --id=Nilesoft.shell
(May need to alter shell on dark background link.)
I don't use it.
You can paste groups of installs into cmd.
But just use a simple bat file - winget install and list all the id's with a space between the id's.
If you insist on winget import & export
Woopie - I just imported the file below and it installed everyting without my intervention.
If you copy below and paste, name the file "appslist" and leave it on the desktop.
To export
winget export -o %userprofile%\desktop\appslist --accept-source-agreements
To import
winget import -i %userprofile%\desktop\appslist --ignore-versions --accept-package-agreements --accept-source-agreements
A bat file can run a vertical list of commands: winget, curl, wget and "start" websites.
My Sample Bat File
I use cd %userprofile%\Desktop so the .bat file operated in the Desktop folder and files are downloaded into it unless they are directed somewhere else. I also used curl.exe in case the system environmemt variable path is messed up. Just "curl" should work in most cases.
This simple initial install bat provides what I need to tweak Windows to it's knees.
Run as Admin
cd %userprofile%\Desktop
mkdir C:\Portable
mkdir C:\Portable\Excluded
winget install -e --id Chocolatey.Chocolatey
winget install -e --id 7zip.7zip
winget install -e --id=Notepad++.Notepad++
winget install -e --accept-source-agreements --accept-package-agreements --id XPFFTQ032PTPHF
winget install -e --id=winaero.tweaker
winget install -e --id=9P8LTPGCBZXD
winget install -e --id=RevoUninstaller.RevoUninstaller
winget install -e --id=CodeJelly.Launchy
curl.exe -L https://eternallybored.org/misc/wget/1.21.4/64/wget.exe -o C:\Windows\System32\wget.exe
curl.exe -L https://www.ugmfree.it/Download/SyMenu/SyMenu.zip -o C:\Portable\symenu.zip
curl.exe -L https://patchmypc.com/freeupdater/PatchMyPC.exe -o C:\Portable\patchmypc.exe
curl.exe -L https://www.carifred.com/uvk/UVKPortable.exe -o C:\Portable\UVK.exe
curl.exe -L https://www.sordum.org/files/download/defender-exclusion-tool/ExcTool.zip -o C:\Portable\Excluded\ExcTool.zip
curl.exe -L https://downloads.wisecleaner.com/soft/WDCFree_11.1.6.832.zip -o C:\Portable\WDCFree.zip
curl.exe -L https://dl.dropboxusercontent.com/scl/fi/802730yqek6hkz1r9qzan/Windows_Repair_Toolbox_3.0.4.4_1.8.9.2.zip?rlkey=vyoletq5i5hyji6m3i7yy1aw6&st=tqu63c78&dl=0 -o C:\Portable\windows_repair-toolbox.zip
msg * "irm christitus.com/win | iex"
pause
cd %userprofile%\Desktop
winget install -e --accept-source-agreements --accept-package-agreements --id=Microsoft.WindowsTerminal
winget install -e --id=IObit.IObitUnlocker
winget install -e --id=9PF4KZ2VN4W9
winget install -e --silent --id=2BrightSparks.SyncBackFree
winget install -e --id=AOMEI.Backupper.Standard
winget install -e --id=AutoHotkey.AutoHotkey
winget install -e --id=voidtools.Everything
winget install -e --id=AdrienAllard.FileConverter
winget install -e --id=Google.Chrome
winget install -e --id=HexChat.HexChat
winget install -e --id=IrfanSkiljan.IrfanView
winget install -e --id=IrfanSkiljan.IrfanView.PlugIns
winget install -e --id=Microsoft.PowerToys
winget install -e --id=qBittorrent.qBittorrent
winget install -e --id=ShareX.ShareX
winget install -e --id=Oracle.VirtualBox
winget install -e --id=VideoLAN.VLC
pause
This is what it looks like in Wget
Using wget
wget install JernejSimoncic.Wget
or
copy wget.exe to Windows\System32
Open CMD in folder for downloads
or
curl -o C:\Windows\System32\wget.exe https://eternallybored.org/misc/wget/1.21.4/64/wget.exe
cd %userprofile%\Desktop
wget --no-check-certificate https://www.ugmfree.it/Download/SyMenu/SyMenu.zip https://github.com/samsonwang/LaunchyQt/releases/download/v3.1.7/Launchy-3.1.7-win-x64.7z https://patchmypc.com/freeupdater/PatchMyPC.exe https://www.carifred.com/uvk/UVKPortable.exe https://www.sordum.org/files/download/defender-exclusion-tool/ExcTool.zip https://downloads.wisecleaner.com/soft/WDCFree_11.1.6.832.zip https://dl.dropboxusercontent.com/scl/fi/802730yqek6hkz1r9qzan/Windows_Repair_Toolbox_3.0.4.4_1.8.9.2.zip?rlkey=vyoletq5i5hyji6m3i7yy1aw6&st=tqu63c78&dl=0 -O Windows_Repair_Toolbox_3.0.4.4_1.8.9.2.zip
This is what that might look like in Powershell
In Powershell you can list like above but I'm not sure how to write the single options statement.
Powershell is more particular about syntax formating.
Curl works the same with Powershell as it does with CMD but the file name is wrong.
#Install software
$SoftwareToInstall = "Chocolatey.Chocolatey", "MartiCliment.UniGetUI", "7zip.7zip", "Notepad++.Notepad++", "winaero.tweaker", "9P8LTPGCBZXD", "RevoUninstaller.RevoUninstaller", "2BrightSparks.SyncBackFree", "AOMEI.Backupper", "AutoHotkey.AutoHotkey", "voidtools.Everything", "AdrienAllard.FileConverter", "Google.Chrome", "HexChat.HexChat", "IrfanSkiljan.IrfanView", "IrfanSkiljan.IrfanView.PlugIns", "localsend", "qBittorrent.qBittorrent", "ShareX.ShareX", "Oracle.VirtualBox", "VideoLAN.VLC"
foreach ($Software in $SoftwareToInstall) {
WinGet.exe install $software --silent --force --accept-source-agreements --disable-interactivity --source winget
}
Invoke-WebRequest -Uri "https://www.ugmfree.it/Download/SyMenu/SyMenu.zip" -OutFile $env:USERPROFILE\Desktop\SyMenu.zip
Invoke-WebRequest -Uri "https://github.com/samsonwang/LaunchyQt/releases/download/v3.1.7/Launchy-3.1.7-win-x64.7z" -OutFile $env:USERPROFILE\Desktop\Launchy.7z
Invoke-WebRequest -Uri "https://patchmypc.com/freeupdater/PatchMyPC.exe" -OutFile $env:USERPROFILE\Desktop\PatchMyPC.exe
Invoke-WebRequest -Uri "https://www.carifred.com/uvk/UVKPortable.exe" -OutFile $env:USERPROFILE\Desktop\UVK.exe
Invoke-WebRequest -Uri "https://www.sordum.org/files/download/defender-exclusion-tool/ExcTool.zip" -OutFile $env:USERPROFILE\Desktop\ExcTool.zip
Invoke-WebRequest -Uri "https://downloads.wisecleaner.com/soft/WDCFree_11.1.6.832.zip" -OutFile $env:USERPROFILE\Desktop\WDCFree_11.1.6.832.zip
Invoke-WebRequest -Uri "https://dl.dropboxusercontent.com/scl/fi/802730yqek6hkz1r9qzan/Windows_Repair_Toolbox_3.0.4.4_1.8.9.2.zip?rlkey=vyoletq5i5hyji6m3i7yy1aw6&st=tqu63c78&dl=0" -OutFile $env:USERPROFILE\Desktop\Windows_Repair_Toolbox_3.0.4.4_1.8.9.2.zip