Skip to content

r33int/Windows10-Postinstall

Repository files navigation

Windows10-Postinstall

This repo contains a set of scripts & tools that I use to prepare my new Windows 10 (and Windows 11 too) installations. It improves performance, privacy, and makes the system cleaner overall.

main branch: Removes Cortana, Xbox services, OneDrive, Windows Defender, useless apps, and services.

Important: I tried to include references and credits in my scripts as much as possible. I recommend you to read the explanations about the scripts & tools below, before running them, as it can cause unwanted effects on your system. I am not responsible for any damage caused to your system.

Scripts:

Script Description
contentDeliveryManager.ps1 This script completely prevents Windows from automatically installing unwanted sponsored apps & games.
For reference: https://blog.drhack.net/disable-windows-10-app-install-without-consent/
fsutil.ps1 This script applies various tweaks for the NTFS filesystem using the fsutil command.
For reference: https://notes.ponderworthy.com/fsutil-tweaks-for-ntfs-performance-and-reliability
registryTweaks.ps1 This script contains various tweaks that apply to Windows's registry. The tweaks are the following:

- Set system clock to UTC, to prevent clock desyncs when multi-booting other systems such as Linux and macOS. This tweak does not cause any issue in the case of single-booting.

- Disable full-screen optimizations in games. This tweak allows games to use exclusive full-screen mode, thus can improve gaming performance and decrease latency.

- Prevent Malware Removal Tool from automatically installing via Windows Update. That can be unsafe, but we are not using Windows Defender anyway. Only use if you are sure you do not need an antivirus.

- Disable NetBIOS over TCP/IP. This service is legacy, vulnerable, and shouldn't be used anymore. Do not use if your computer belongs to your organization, and you are not sure. For reference: https://geekflare.com/netbios-disable-windows/

- Disable web search in Windows Search.
removeApps.ps1 This script uninstalls "useless" UWP apps for the current user, to make the system as minimal as possible. Please make sure this script does not uninstall any app that you need before running it.
Note: Most apps can be manually reinstalled from the Microsoft Store.
removeOneDrive.ps1 This script completely removes OneDrive features from Windows. Do not run if you use OneDrive.
Credits: https://github.com/Sycnex/Windows10Debloater
scheduledTasks.ps1 This script disables some default scheduled tasks, mostly tasks used for telemetry and data collection. Improves privacy.
services.ps1 This script disables "useless" Windows services. Services disabled are the following:

- Windows Error Reporting
- OneDrive sync Service
- Program Compatibility Assistant (does not disable compatibility features, only the assistant.)
- Messaging Services
- Retail Demo
- Diagnostics Hub Data Collector
- Geolocation Services
- AllJoyn Router Services
- Remote Registry
- Data Usage Monitor Service
- Diagnostics Tracking Service
- Downloaded Maps Manager

This script also disables all Xbox-related services.
ultimatePerformancePlan.ps1 This script enables the hidden "ultimate" performance plan. Enabling that can improve performance significantly. For reference: https://www.howtogeek.com/368781/how-to-enable-ultimate-performance-power-plan-in-windows-10/
GameBarPresenceWriter Removes a leftover Xbox Game Bar related program that appears whenever a game is running, and shouldn't be there. Reduces overhead.
For reference: https://www.reddit.com/r/DestinyTechSupport/comments/amq3g1/i_think_i_found_the_root_cause_of_the_stuttering/
disableVBS.ps1 This script disables Virtualization Based Security, Credential Guard and HVCI, which are enabled by default on Windows 11. These security features are known to negatively impact performance on older systems. Disabling this reduces system security, but it was not enabled by default on Windows 10, so it's up to you. Performance impact on the most modern systems seems to be very minor.
For reference: https://www.tomshardware.com/news/windows-11-gaming-benchmarks-performance-vbs-hvci-security

LGPO:

LGPO is a tool that can import/export the local group policy of Windows. I included my group policy in this repo as well. Here is a non-exhaustive list of the settings enforced in my group policy:

  • Disable Windows Update automatic driver installation (I prefer installing drivers from the respective manufacturers' websites).
  • Disable Windows Defender. That significantly improves performance and reduces overhead, but can reduce security, if you are not careful enough.
  • Disable Geolocation Services.
  • Limit telemetry and data collection.
  • Disable Windows Spotlight on the lock screen.

Be aware my group policy can contain personal preferences that you may not want.

While I strongly advise you to build your group policy yourself, you can use mine by importing it using the LGPO tool.

Run the following command in an elevated command prompt or PowerShell Window, with your current directory set to LGPO:

LGPO.exe /g policy

Tools:

Tool Description
Autoruns Autoruns is a useful tool from Windows Sysinternals that helps manage and remove programs, services, scheduled tasks, system extensions, and more that automatically run at startup.
cru-1.5.2 Custom Resolution Utility is a tool used to create and manage custom monitor resolutions. You probably do not need this tool, but I have included it for personal reasons.
MSI_util_v3 This tool is used to enable message-signaled interrupts for internal devices. That can improve performance and decrease latency. Can cause issues with older devices, use with caution.
For reference: https://forums.guru3d.com/threads/windows-line-based-vs-message-signaled-based-interrupts-msi-tool.378044/
https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/introduction-to-message-signaled-interrupts
Winaero Tweaker Winaero Tweaker is a tool from Winaero that exposes hidden Windows settings and registry tweaks with a nice-looking user interface. There are many options to explore there. Use this tool at your convenience.
InSpectre InSpectre is a tool from Gibson Research Corporation. This tool can enable/disable Meltdown and Spectre mitigations. It also determines the performance hit by the mitigations.
Disabling mitigations can improve performance but is discouraged due to security implications.
dControl dControl is a tool from Sordum that allows disabling/enabling the Windows Defneder service. I added it because in Windows 11, disabling Windows Defender via the group policy does not completely disable the service anymore.

Please report any issues you find in my scripts. I am also very open to contributions. Thanks!