Lean Windows 11 install for a dedicated gaming machine
Target state: official Windows 11 install, local-account-first, aggressively cleaned after setup, with NVIDIA App, Steam, MSI Afterburner, VR support, Epic, Battle.net, and Star Citizen compatibility preserved.
Constraints locked in
- Official ISO path first
- Reversible aggressive debloat
- Security updates kept
- Telemetry reduced, compatibility first
- Local account preferred
- Steam Cloud stays enabled
End state
- No Copilot / Recall / widgets / ads
- No OneDrive / Phone Link / Xbox app / Game Bar
- No Edge background tasks
- No system notifications
- No printer stack by default
- 4K 240Hz + VRR + HDR + FG + Reflex validated
Chosen base path
Official Windows 11 ISO + unattended local-account-first OOBE + post-install cleanup
Best fit for compatibility with launchers, VR runtimes, anti-cheat, driver updates, and future servicing.
LTSC
Less aligned with mainstream gaming desktop expectations, Store/UI assumptions, and consumer ecosystem fit.
NTLite / custom ISO
Higher chance of broken servicing, AppX behavior, repair installs, setup, upgrades, or obscure launcher/runtime failures.
This keeps the servicing stack intact and avoids pre-stripping components that later matter to Windows repair, feature updates, launchers, VR runtimes, or anti-cheat.
Prepare before install
Use the official ISO or Media Creation Tool path.
Do not start from an unstable firmware baseline.
UEFI only, CSM off, Secure Boot on, TPM on, ReBAR on if supported.
Apply EXPO/XMP only after the OS is stable if compatibility is the hard priority.
Chipset, LAN/Wi-Fi, storage driver packages on a second USB if needed.
Build a local-account-first installer
Use an unattended answer file only to control OOBE and create the first local admin account. Do not alter the ISO beyond that.
<OOBE>
<HideOnlineAccountScreens>true</HideOnlineAccountScreens>
<HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
</OOBE>
<UserAccounts>
<LocalAccounts>
<LocalAccount action="add">...</LocalAccount>
</LocalAccounts>
</UserAccounts>- Save the file as
Autounattend.xml - Place it in the root of the installer USB
- Prefer network disconnected during OOBE
- Result: first boot lands on a local account, not a Microsoft account
Install Windows without pre-stripping it
Use the official media. No custom image presets.
Use the unattended local-account-first flow.
Stay offline until base drivers are in if practical.
Chipset, storage, LAN/Wi-Fi.
NVIDIA App and current GeForce driver.
Do not use “lite” images, pre-removed WinSxS/component presets, or registry optimizer packs here.
Run the cleanup pass after first boot
Use policy-backed disablement plus selective AppX removal. Avoid dismantling the servicing stack.
Disable or remove
- Copilot / Recall / AI features
- Widgets / Spotlight / consumer features / recommendations
- OneDrive
- Xbox app / Game Bar / Game DVR
- Phone Link
- Edge background mode / Startup Boost
- System notifications
- Printer spooler
Keep
- Windows servicing and update path
- Steam and Steam Cloud
- SteamVR and headset runtime
- Epic launcher
- Battle.net
- RSI Launcher / Star Citizen
- Core OS repairability
High-value changes
# Recall / Windows AI reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsAI" /v AllowRecallEnablement /t REG_DWORD /d 0 /f reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsAI" /v DisableAIDataAnalysis /t REG_DWORD /d 1 /f reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsAI" /v DisableClickToDo /t REG_DWORD /d 1 /f # Copilot pane reg add "HKCU\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsCopilot" /v TurnOffWindowsCopilot /t REG_DWORD /d 1 /f # Widgets / consumer experiences reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Dsh" /v AllowNewsAndInterests /t REG_DWORD /d 0 /f reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Dsh" /v DisableWidgetsBoard /t REG_DWORD /d 1 /f reg add "HKLM\\SOFTWARE\\Policies\\Microsoft\\Windows\\CloudContent" /v DisableWindowsConsumerFeatures /t REG_DWORD /d 1 /f
Use policy-backed controls where Microsoft documents them. Only use package removal for the app families you explicitly do not want.
Selective removal commands
# OneDrive taskkill /f /im OneDrive.exe %SystemRoot%\\System32\\OneDriveSetup.exe /uninstall # Phone Link / Xbox / Game Bar Get-AppxPackage Microsoft.YourPhone | Remove-AppxPackage Get-AppxPackage Microsoft.GamingApp | Remove-AppxPackage Get-AppxPackage Microsoft.XboxGamingOverlay | Remove-AppxPackage Get-AppxProvisionedPackage -Online | ? DisplayName -like "*Microsoft.YourPhone*" | Remove-AppxProvisionedPackage -Online -AllUsers Get-AppxProvisionedPackage -Online | ? DisplayName -like "*Microsoft.GamingApp*" | Remove-AppxProvisionedPackage -Online -AllUsers Get-AppxProvisionedPackage -Online | ? DisplayName -like "*Microsoft.XboxGamingOverlay*" | Remove-AppxProvisionedPackage -Online -AllUsers # Print spooler Stop-Service Spooler -Force Set-Service Spooler -StartupType Disabled
App removals can return after major feature updates. Treat them as a re-apply step, not a one-time permanent state.
NVIDIA App is mandatory — use it, then add Afterburner
Install order
- NVIDIA App
- Current GeForce driver through the app
- Verify display path
- Install MSI Afterburner
- Add RTSS only if required
Why this order
- NVIDIA App owns driver delivery
- Afterburner owns manual voltage/frequency tuning
- Lower chance of layering conflicts
- Keeps your mandatory NVIDIA App requirement intact
Conservative 5090-class undervolt baseline
- Flatten the curve to the right of the 925 mV point
- Test in raster, RT + frame generation, then VR
- If unstable: 0.925 V @ 2655 MHz, or 0.950 V @ 2700–2775 MHz
- Rollback: Afterburner Reset, disable apply-at-startup, reboot
This is a conservative starting point, not a guaranteed universal target.
Validate the actual gaming output path
Confirm in Windows Advanced Display and, if available, the panel OSD.
Use Windows HDR settings. Calibrate if needed.
Use NVIDIA Control Panel and verify with the G-Sync indicator.
Do not start with folklore tweaks. Validate first.
Use in-game support where available; do not assume a global forcing strategy works equally well.
Install only what the machine needs
Required
- Steam
- SteamVR + headset runtime
- Epic Games Launcher
- Battle.net
- RSI Launcher / Star Citizen
- VC++ and DirectX runtimes as launcher/game installers require
Explicitly retained
- Steam Cloud
- VR runtime support
- Anti-cheat compatibility
- Standard Windows repair/update behavior
Do not pre-emptively cripple Windows security or anti-cheat-related behavior. Fix the specific title only when it reproduces a problem.
What not to do
Compatibility was your top priority. The workflow reflects that.
Minimal rollback posture
Safe reversals
- Delete policy keys added by cleanup script
- Re-enable Print Spooler
- Reset Afterburner profile
- Reinstall removed Store apps if later needed
High-cost rollback
- Custom ISO mistakes usually mean reinstall
- Deep component stripping breaks easy recovery
- This is why the workflow avoids them
Machine passes only when all boxes are checked
Research base
The presentation was derived from the completed research report and anchored on Microsoft documentation for exact policy/registry mappings, plus launcher/runtime/vendor docs for compatibility boundaries.
Core documentation
- Microsoft Windows 11 download and unattended setup docs
- Microsoft Recall / Windows AI / Widgets / Cloud Content / Start policy docs
- Microsoft AppX and DISM package servicing docs
- NVIDIA App, G-Sync, DLSS, Reflex, Blackwell architecture material
- MSI Afterburner documentation
Compatibility docs
- Steam and Steam Cloud docs
- SteamVR docs
- Epic launcher and Easy Anti-Cheat docs
- Battle.net desktop app and troubleshooting docs
- RSI / Star Citizen requirements, page file, anti-cheat, and overlay docs
The underlying research also surveyed custom-image and stripping approaches, then rejected them for this machine because they lose too much compatibility and recovery margin relative to the gain.