* Fix slop remains
Chris likes to vibe code. AI likes to use different types of dashes (em-dashes, en-dashes), instead of regular dashes (-).
On PowerShell 7 this appears to work. The parser doesn't care. But, what about PowerShell 5? It begins throwing errors about the ampersand. Loading it in the ISE reveals how it stops parsing the syntax correctly when it encounters em-dashes. Rather than displaying them as such, the ISE displays them as —.
Chris, if you want to vibe code, I don't mind. But at least use regular dashes.
Anyway, I won't fix the AI code. I just want to make it work on my beloved powershell 5.
* Apparently this file is important
* Create READMEITALIAN.md for Italian users
Added Italian translation for the README file, detailing the functionality and usage of WinUtil.
* Fix formatting in READMEITALIAN.md
* Rename READMEITALIAN.md to .github/READMEITALIAN.md
* Added Delivery Optimization tweak to Standard Tweaks preset
* Added Delivery Optimization tweak to Standard Tweaks preset and Advanced preset to match Gabi PR
* Update CONTRIBUTING.md
* updated the apps page and pics
* updated tweaks tab pic
* updated features page with pic
* updated update page with pic
* update win 11 page with pic
* update pics for app page
* deleted old pics
* fix favicon from not showing
* added forums link in help
* Update hugo.toml
* updated title screen pic and added it to the main screen
* Update _index.md
* added the recommended section to the user guild tweeks
* Update _index.md
* added the new advance preset
* clean up pages
* fix links
* fixed wikipedia link
* Update _index.md
* Less radical removal of apps
* Moving some applications to Selfhosted category
* Some more chess-boxing
* Document section is too small
* TG forks are too niche
* Floorp should be good
* feat: Add new multimedia tools and update existing application entries in applications.json
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Add checkbox for known issues acknowledgment
Some people do not check the link
* typo fix
Updated checkbox type to checkboxes in bug report template.
* :zombie_sound:
* :zombie_sound_2:
* AAAAAAAAAAAAAAA
* I'm tired of testing commits
* :zombie_sound_1337:
Added a description to the read issues checkbox.
* my bad
* Revert "Revert "Simplfy Invoke-WPFUltimatePerformance.ps1 (#4319)" (#4333)"
This reverts commit 419b150220.
* Refactor Invoke-WPFUltimatePerformance function to use "ChrisTitus - Ultimate Power Plan" naming and improve power plan management
* add message for laptop users
* Remove activation of "ChrisTitus - Ultimate Power Plan" during setup
* Update Invoke-WPFUpdatesdisable.ps1 to not require a restart
* Update Invoke-WPFUpdatesdisable.ps1
* Update Invoke-WPFUpdatesdefault.ps1
* Merge branch 'ChrisTitusTech:main' into patch-9
* Update applications.json
* Remove Borderless Gaming
* Update UniGetUI code for their link and winget
---------
Co-authored-by: Vaso <92270244+VasoHD@users.noreply.github.com>
* cleaned up typo, fixes, grammatical and other related fixes (#2)
* typo in Lightshot app name
* remove trailing comma in applications.json
* consistent capitalization of Windows, WinGet - only user-facing text
- includes update to devdocs-generator.ps1, so docs for tweaks modifying registry will have `Windows settings` rather than `windows settings`
* various fixes for typos, style, punctuation and capitalization
* capitalize 'AM'
* Update README.md
change formatting for GitHub UI interaction form code format (` `) to bold md
Co-authored-by: Jay <65828559+Jay-o-Way@users.noreply.github.com>
* typos and wording in docs
---------
Co-authored-by: Jay <65828559+Jay-o-Way@users.noreply.github.com>
* Add Opera, OperaGX, Ruby and Lua entries
Update applications.json to include two new browser entries (Opera, OperaGX) and two development runtime entries (Ruby, Lua).
* Remove Opera and OperaGX from applications.json
Removed entries for Opera and OperaGX from applications list.
* - Added AI-Automation download section
- Fixed typo in CONTRIBUTING.md teminal -> terminal
* Move Cursor to Development
* Move AutoHotkey back to Utilities
* removed any windows 10 reference
* update links
* page clean up
* Update _index.md
* clean up getting started page
* clean up more pages
* Update faq.md
* Update _index.md
* more clean up
* updated theme to latest version
* updated tabs to the new way
* added missing frontmatter to pages
* updated hugo version
* edited the file structure
* revert back to old way
* Update _index.md
* fix typo and made sure it was upto date
* updated docs
* clean up navbar
* Update en.yaml
* initial usb fixes
* fix full button width
* Cleanup and Verbose output for copy
* expand ui and fix clean and reset
* Add minimal driver injection
* initial driver support
* fix verbage
* fix syntax error
* create log file on iso generation
* inject to boot.wim for install
* fix single driver install issues
* fix first run probs
* cleanup injection
* improve clean up
* Fix OSCDIMG output and cleanup comments
* Fix Scrollviewer in Status Log
* large drive support and change to Exfat
* Fix BOOT for older UEFI and Add error checks for small usb drives
* fix single usb drive error
* fix: cast selections to string to prevent PSCustomObject type issues
* fix(presets): clear existing selections before importing to replace state instead of merging
* refactor(impex): warn user when exporting empty selections or importing empty config
* Tab creation
* scaffold outline for the iso tab
* autounattended creation
* inital modification success
* iso save success
* cleanup and iso improvements
* fix startmenu on new 26h2
* remove old first startup
* Fix run for use
* fix unapproved verb
* Keep step 4 output expanded
* update auto-merge
* Cleanup
* remove out-null and trailing whitespace
* explain modify and creator button
* fix scroll to end
* remove workflow change
* fix home updates
* Tab creation
* scaffold outline for the iso tab
* autounattended creation
* inital modification success
* iso save success
* cleanup and iso improvements
* fix startmenu on new 26h2
* remove old first startup
* Fix run for use
* fix unapproved verb
* Keep step 4 output expanded
* update auto-merge
* Cleanup
* remove out-null and trailing whitespace
* explain modify and creator button
* fix scroll to end
* remove workflow change
* updated workflow
* changed the commit message
* fixed spacing in copyright
i will notice these issues before committing in future lol
* Update devdocs-generator.md
* Update Invoke-WPFSystemRepair.ps1
* Update Invoke-WPFSystemRepair.ps1
* add chkdsk back in to tell users if there disk is broken
* Merge branch 'Update-Invoke-WPFSystemRepair' of https://github.com/gabinun/winutil into pr/GabiNun/4043
* add doc
* updated the gen to add a blackline under the frontmatter and added .md file in the same location with breakdown on what the script does
* copyright fix.
found out the reason why it rendered correctly on my pc and not with site builder. it was because we use --minify for the site builder and i have not been using that on the local instance
* Update pre-release.yaml
* Update en.yaml
* feat: add support for importing and exporting WPFToggle checkbox states.
* feat: add export and import
* remove unnecessary buttons from tweaks tab
* Merge branch 'main' into feature/import-export
* Merge branch 'main' into feature/import-export
* updated theme to the latest version
* Update en.yaml
* removed all the order from the docs
* add the store link
* update homepage
* add filename and line number to all the code blocks and also removed pages
* auto pull the code from the json files
* Merge branch 'main' into winutil-new-features
* the script updated linenostart=
* Delete LaptopHibernation.md
* changed autolinks to now use frontmatter instead off #heading
* updated all docs with front matter names
* Update DisableLegacyRecovery.md
this was the same as EnableLegacyRecovery file
* made sure pages have got the corrects scripts on them
* Update default.md
updated the archetype default to make sure every new page had the title and description automatically on the front matter
* Create BraveDebloat.md
* added brave debloat link to tweaks.json
* Update tweaks.json
* Update tweaks.json
* Updated winutil website
add git ignore to not upload unnecessarily file. i have also updated microwin docs and added a copyright info to the footer
* Update _index.md
* Update KnownIssues.md
* Update links
update all the links for github to the corresponding pages. i have kept the original links aswell but commented out
* update hugo workflow to use version 0.147.0
* Update en.yaml
* update hugo toml to get rid off powered by
* Update docs.yaml
* Update KnownIssues.md
* Update KnownIssues.md
* Update KnownIssues.md
* Update compatibility note for MicroWin and Ventoy
* removed quad 9 dns
* fixed all the incorrect code block in markdown file
* Replace hardcoded page lists with auto-discovery shortcode
Created a new shortcode at docs/layouts/shortcodes/autolinks.html. This enables auto-discovery when creating new Markdown files, streamlining the workflow for future documentation updates.
* updated os requirements
* Fix: retry password prompt on failure to prevent script halting
* Update Invoke-WPFInstall.ps1
* format fix
* fix: change RealTimeIsUniversal to QWord for correct UTC time sync
---------
Co-authored-by: Chris Titus <contact@christitus.com>
Co-authored-by: Chris Titus Tech <dfm.titus@gmail.com>
* New reporting tool
* Why did we EVER need to load the component store?
* Up the execution policy for default PWSH sessions
This is required to run the diagnostics script, and any script that either we create here, or the user creates later. At least we don't go too wild and use unrestricted... we use something more "safe"
* Force Panther Setup instead of MoSetup
This will increase reliability and performance. Screw the Windows 8 installer, we're back with what was used on Windows 7!
Anyway, there are problems with the new installer:
1. It is slow at everything. Some people did benchmarks of both installers. MoSetup lost to Panther (ofc). Source: https://www.reddit.com/r/Windows11/comments/1kmjavl/i_made_a_small_test_comparing_which_one_installs/
2. It is unreliable. The "Install driver to show hardware" screen that appears in some systems AND in PXE/WDS for Server 2025 is possibly, and simply, due to Setup not being able to find the install image. From BlueBox.log in MoSetup:
...
2025-12-21 10:05:43: Creating path (with ACL): [X:\$WINDOWS.~BT]...
2025-12-21 10:05:43: Creating path: [X:\$WINDOWS.~BT\Sources]...
2025-12-21 10:05:43: CBootScenarioCtrl::PopulateWorkingDir: Install.wim/swm/esd was not found!
...
Other contributors in the CTT community stated similar unreliability with borked installs.
I'm pretty sure this change will benefit everyone. We'll see how long it lasts before Microsoft f's it up.
* Improve reporting tool
Display appx package dependency full names
* Rework ADK detection
* Add revamped detection for ISO creation
* File Explorer ain't broken anymore on 26200.7462
Those incompetent developers changed WindowsAppRuntime.CBS to WindowsAppRuntime.CBS.1.6 circa 10.0.26200.7462. No wonder why direct downloads were not causing this issue; they are still based on 10.0.26200.6584. The MCT, on the other hand...
* Patch maximum version boundary
Apparently they fixed that in November. Expanding the amd64_winappsdk-cbs-stable component manifest to a XML file reveals the dark secret:
<registryKeys>
<registryKey keyName="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications\Microsoft.WindowsAppRuntime.CBS.1.6_6000.653.2246.100_x64__8wekyb3d8bbwe">
<registryValue name="Path" valueType="REG_SZ" value="$(runtime.windows)\SystemApps\Microsoft.WindowsAppRuntime.CBS_8wekyb3d8bbwe\AppxManifest.xml" />
<securityDescriptor name="REGKEY_APPXALLUSERSTORE_SDDL" />
</registryKey>
<registryKey keyName="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Config\Microsoft.WindowsAppRuntime.CBS.1.6_8wekyb3d8bbwe">
<registryValue name="SetupPhase" valueType="REG_DWORD" value="0x00000427" />
</registryKey>
<registryKey keyName="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\UpdatedApplications\Microsoft.WindowsAppRuntime.CBS.1.6_8wekyb3d8bbwe" />
</registryKeys>
This is not a problem in .6899 because we don't have amd64_winappsdk-cbs-stable, but a vnext counterpart. But, at this point, why bother checking with that? MCT will not bundle this update with the image!
* Default to showing file extensions
Apart from a security improvement (let's remember ILOVEYOU from 2000), it's also a QoL.
* Fix key for color modes
Color mode settings are saved per-user, not system-wide. So HKLM\SOFTWARE is not our solution. HKCU is, and is mapped to \Users\Default\NTUSER.DAT
* Move color mode from offline servicing to firstrun
* Drop build number by 100
* Update Invoke-Microwin.ps1 (#15)
* Revert "Update Invoke-Microwin.ps1 (#15)"
This reverts commit 88f8a3031b.
* Keep trying to commit and unmount images
* Consistent REG ADD /F /V...
Some issues happen with REG and strings if you put /f at the end... move it to the beginning, where it doesn't conflict with anything.
* Rework stub path reg value set
This works on both Windows 11 and Windows 10. It didn't work on Win10 before; it should work now
* Remove copy link step
We no longer do this
* Move Copy-Files to microwin folder
Only microwin calls this function; it's better if we place this script in that folder
* Add Create Bootable USB (#18)
* Add Create Bootable USB
* Apply suggestion from @CodingWonders
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Download ADK to get oscdimg if not to download on GitHub
If we don't download OSCDIMG from GitHub, because we now use ADK kits roots detection to get installed copies of the ADK and oscdimg, we just download the Deployment Tools. This is only 100 MB once fully installed, and removes the need to install Chocolatey.
One caveat is that, on 64-bit systems, the script will output "Could not find ADK" once. This is normal as it does checks on both regular SOFTWARE and WOW6432Node, and it's able to pick it on the latter. If it isn't found anywhere, that message will appear twice.
* Make indentation more consitent in bootable USB func.
* Initialize petoolspath variable
* Remove temporary adksetup on completion
* Fix whitespace
* Remove unnecessary comments and revamp admin check
* Revert "Add Create Bootable USB (#18)"
This reverts commit 64babfe986.
* Remove reporting tool creation
The reporting tool is now hosted on a separate repo. The script itself can be run anywhere, not just in microwin, so...
* Some formatting change here
* Remove copy to ventoy option
* Fix some more indents
* Add Description that ISO automatically removes Win11 Requirements
* Additional things
- WPBT done by defaults
- Skip Logon Animation
- Remove convert to ESD and Upgrade to Win11 as Win10 is no longer supported
* First attempt at OSCDIMG autodownload
* No more custom ScratchPaths!
Time to get rid of that mess and just use %TEMP%.
All of these minor changes were made on a Server 2K8R2 VM.
* Redetect ADK/OSCDIMG after autodownload
* Leave ADK reg query error to debug only
---------
Co-authored-by: Real-MullaC <callumjanes2007new+github@gmail.com>
* Delete WPFTweaksPowershell7 from tweaks.json
Removed WPFTweaksPowershell7 configuration for Windows Terminal.
* Delete functions/public/Invoke-WPFTweakPS7.ps1
* Update WPFTweaksRazerBlock's InvokeScript
* Format fix for WPFTweaksRazerBlock
* Update WPFTweaksRazerBlock
* Update WPFTweaksRazerBlock
* Update WPFTweaksRazerBlock
* Better format for WPFTweaksRazerBlock's InvokeScript
* Better format for WPFTweaksRazerBlock's InvokeScript
* Fomat fix on WPFTweaksRazerBlock
* Update WPFTweaksRemoveHome to use powershell
* Fix WPFTweaksRemoveGallery format
* Format fix for WPFTweaksRemoveHome
* Update tweaks.json
* fix my f up
* Update tweaks.json to use registry modifications
Replaced InvokeScript and UndoScript with registry modifications for removing Home from Explorer and setting This PC as default.
* fix missing comma from twitch chat
* [Tweaks] Conditionally determine when to use sc and Set-Service
* Clean up comments in Set-WinUtilService.ps1
Removed comments explaining the handling of auto delayed start for PWSH 5.
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Update tweaks.json
* Fix
* Final Fix
* Added comments to WPFTweaksBlockAdobeNet
* Syntax change for WPFTweaksBlockAdobeNet
* Removed double \ from WPFTweaksBlockAdobeNet
* Added back double \ for WPFTweaksBlockAdobeNet
* Syntax fix for WPFTweaksBlockAdobeNet
* Syntax fix for WPFTweaksBlockAdobeNet again
* Fix for WPFTweaksBlockAdobeNet
* Merge branch 'ChrisTitusTech:main' into Update-WPFTweaksBlockAdobeNet
* Rename m to M
* Update tweaks.json
* Update tweaks.json
* Update tweaks.json
* Merge branch 'ChrisTitusTech:main' into Typo-Fix
* Merge branch 'ChrisTitusTech:main' into Typo-Fix
* Extra space
* From Tweaks to Toggle
* Merge branch 'ChrisTitusTech:main' into Typo-Fix
* Added Proton Authenticator to applications.json
Proton Authenticator is a popular open source 2fa app from proton.
* Update name in applications.json
---------
Co-authored-by: CyberSphinx <202843220+CyberSphonx@users.noreply.github.com>
The Invoke-WinUtilTweaks function was using the '-contains' operator on a string variable to check for toggle-type tweaks. This operator is intended for collections (arrays), not for substring matching within a string, leading to incorrect logic flow.
This caused an issue where selecting one tweak (e.g., WPFTweaksRightClickMenu) could erroneously trigger the action of another (e.g., WPFTweaksDisableCrossDeviceResume).
This commit replaces the incorrect '-contains' operator with the '-like' operator and appropriate wildcards ('*Toggle*'). This ensures that tweak types are identified correctly, resolving the bug and preventing unintended system modifications.
* feat: Add Beeper to Messaging applications
This commit adds the Beeper desktop application to the list of installable packages in the "Messaging" category.
The entry has been added to `config/applications.json` with the official download URL and the correct silent installation arguments.
Fixes#3608
* Fix job failure: ensure excluded directory exists before processing
This commit updates the Invoke-Preprocessing function to prevent workflow failures caused by missing excluded directories.
Previously, the script would attempt to recursively list files in excluded paths, resulting in an error if a directory did not exist.
The updated logic checks if the excluded path refers to a directory (ends with a backslash) and creates it if necessary before proceeding. This avoids "Cannot find path" errors and ensures smoother preprocessing, especially for jobs that depend on directory existence for exclusion logic.
No changes are made for excluded files or wildcard patterns.
* [Applications] DISM utility changes, app description fixes
- NTLite has been added to the list of apps to give the user some choice
- Both DISMTools and NTLite have been moved to a new section so they can be identified more easily by what they do, and because the former is not a tool made by either Microsoft or Sysinternals. The former now has its description pulled from WinGet (and summarized using Copilot)
- Em-dashes in some app descriptions have been replaced with semicolons to avoid question marks in tooltips
* Change category from 'DISM Utilities' to 'Microsoft Tools'
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* [Enhance] Configure all apps view in start menu
To keep look consistent with older Win11
* [Enhance] Additional Start menu settings
* [MicroWin] Change Write-Host to Write-Debug on debug lines. (#13)
* Add a resolution to scripts being disabled (#14)
* [MicroWin] Change Write-Host to Write-Debug on debug lines.
* Add a resolution to scripts being disabled
* Add skip first logon anim option
* Unrelated: indentation fixes from compile script
* Some little touches to the first-run script
---------
Co-authored-by: Real-MullaC <callumjanes2007new+github@gmail.com>
* Disable "Microsoft account" notification source
* [WinPE] Remove driver addition block for WinPE
WE DO NOT TOUCH THE DRIVERS IN WinPE. There are reports of people getting "Install driver to show hardware" screens all over this repository, and on Discord; and the less drivers we touch in WinPE, the better.
Drivers can still be added to Preinstallation Environments in the following ways:
- Using the driver installation screens
- Firing up "drvload.exe <driver>" in cmd
* [Fix] Added fallback for DISM export command
This is a port of the fix in #3305
* [Cleanup] Removed some comments that no longer make sense
* [Fix] Same DISM export image fallback fix
* Merge branch 'main' into microwin-202506
* [Fix] Improve UI consistency for instructions
Fixes#3394
* Merge branch 'main' into microwin-202506
* [Unattended answer file] Remove it from drive root
The answer file, on the drive root, is not necessary for us to apply it. In fact, it's not even used there
* Merge branch 'main' into microwin-202506
* [MicroWin] June-August 2025 Update (#3) -- Contributions from Callum
* Allow people without compatible hardware or a USB to use MicroWin.
* Update functions/microwin/Microwin-NewUnattend.ps1
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Update Invoke-Microwin.ps1
* Update Microwin-NewUnattend.ps1
* Update Microwin-NewUnattend.ps1
* Add error pop up if ISO Creation fails.
Issue 2653
* Add Disable WPBT Execution to MicroWin.
* Update functions/microwin/Invoke-Microwin.ps1
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* modified: functions/microwin/Invoke-Microwin.ps1
modified: xaml/inputXML.xaml
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Add conversion to ESD (#4)
* Add conversion to ESD
Issue - #3450
* Update Invoke-Microwin.ps1
Added quotes to the file paths. Put all the arguments in 1 string (as that also works fine)
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* Update MicroWin contributor list
* Merge branch 'main' into microwin-202506
* Merge branch 'main' into microwin-202506
* [MicroWin] Add automatic configuration settings
Originally implemented in #2618. Adapted to follow the new file structure. And it works.
Though there are issues that will be detailed very soon
* [Fix] Fixed typos, updated descriptions
* Re-add WinPE driver addition
We're not yet sure if that is the actual problem of missing storage controllers. Logs can tell us more about this. Maybe for a future PR?
* [Fix/WPBT] Add spaces to reg key path
Avoid REG failure
* [Fix/XAML] Fix word wrapping issue for checkboxes
* add TIMEDATE.cpl Panel
* Fix standardization
---------
Co-authored-by: Chris Titus <contact@christitus.com>
Co-authored-by: Chris Titus Tech <dfm.titus@gmail.com>
* Checks if password exists for the user, if it doesn't the user is prompted to create one.
It checks if the password is equal to $null using `ValidateCredentials` and if it isn't the variable will be created. If it is equal to $null, a window with text, a textbox and a button will appear asking the user to create a password. That password is then set for the user and the winget installation continues.
* Made this a little more secure
Securing the password variable when it gets created and deleting it after it's done being used.
* Forces the user to input their password and automatically puts their username into the credentials box
* Removed the second greater than 0 check
* Adaptive Busy Icon + Message
- added adaptive color & message of busy indicator
- fixed placement at some places for "Set-WinUtilTaskbaritem" as dialogbox which waits for user input came before
* seperate long Errormessaged for BusyIndication
* add CharacterEllipsis as TextTrimming on BusyText
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
* fix BusyIndication + add more detailed one
* removing wip busymessages before process
* Improve reporting of messages significantly (#15)
- Added parameter sets
- Implemented detections for interactive/noninteractive processes
* Fix hidden message action (#16)
---------
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
It just adds the `$null =` from the else to the start of the add line if the package is equal to `na`.
For winget the package added is put into an extra set of $(), because of how it is in the else. I haven't tested it without.
* Implement app installation progress overlay and refactor progress bar handling
* Add overlay background color settings and ensure minimum progress bar value
* Add busy overlay functionality and progress bar updates for installation process
* Refactor busy overlay implementation to dynamically adjust size based on app area dimensions
This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!
### 3. Create a Branch
## Issues
Never work directly on `main`.
* If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
Create a branch related to your change:
## Contribute Code
* Pull requests are now handled directly on the **MAIN branch**. This was done since we can now select specific releases to launch via releases in GitHub.
* If you're doing code changes, then you can submit a PR to `main` branch, but I am very selective about these.
!!! warning "Important"
Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!
* When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the `tweaks` section and corresponding `undo tweak`, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.
* By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.
!!! note
When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.
## Walk through
* This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
* [Commit through WEB](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits)
* [Commit through GitHub Desktop](https://docs.github.com/en/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop#about-commits)
* [Create a Pull Request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request)
Open the project in your preferred text editor and make your changes.
While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.
Keep changes small and focused.
* Install GitHub Desktop if it is not already installed.
* Log in using the same GitHub account you used to fork WinUtil.
* Choose the fork under "Your Repositories" and press "clone {repo name}"
* Create a new branch and name it something relatable to your changes.
---
* Now you can modify WinUtil to your liking using your preferred text editor.
### 5. Test Your Changes
Open Pwsh (Not Powershell) as Administrator.
### Testing your changes
Go to the project folder:
* To test to see if your changes work as intended run following commands in a powershell teminal as admin:
```powershell
cd path\to\winutil
```
* Change the directory where you are running the commands to the forked project.
* `cd {path to the folder with the compile.ps1}`
* Run the following command to compile and run WinUtil:
* `.\Compile.ps1 -run`
Run:

```powershell
.\Compile.ps1-Run
```
* After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
Verify:
### Committing the changes
* Before committing your changes, please discard changes made to the `winutil.ps1` file, like the following:
- WinUtil launches correctly
- Your feature works
- Nothing else breaks

If something fails, fix it before committing.
* Now, commit your changes once you are happy with the result.
---

### 6. Review Your Changes
* Push the changes to upload them to your fork on github.com.
Check what changed:

```powershell
gitstatus
```
### Making a PR
* To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
* If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
* Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
Review the diff:
```powershell
gitdiff
```
Make sure you did not accidentally modify unrelated files.
---
### 7. Commit Your Changes
Stage files:
```powershell
gitadd.
```
Commit them:
```powershell
gitcommit-m"Add feature description"
```
Example:
```powershell
gitcommit-m"Add Firefox package tweak"
```
---
### 8. Push Your Branch
```powershell
gitpushoriginbranch-name
```
Example:
```powershell
gitpushoriginadd-firefox-tweak
```
---
### 9. Open a Pull Request
Go to your fork on GitHub.
GitHub will show a button to create a pull request.
Thank you for taking the time to report an issue! Please provide as much detail as possible to help us address the problem efficiently.
## ⚠️ **IMPORTANT**
- 🛠️ **Supported environments only:** We only support Windows 11. Custom ISOs that are not made using Microwin are not supported.
- 💡 For general questions, use the [Discussions section](https://github.com/Christitustech/winutil/discussions) or join our Community-driven [Discord Server](https://discord.gg/RUbZUZyByQ).
- Remember, we only support Windows 11. If you encounter problems on Windows 10, please consider upgrading to Windows 11.
- For general questions, join our Community-driven [Discord Server](https://discord.gg/RUbZUZyByQ).
- type:checkboxes
id:read_issues
attributes:
label:⚙️ Issue Checklist
label:"I have read the known issues"
description:"You [better do](https://winutil.christitus.com/knownissues/), cause your issue can be already there"
options:
- label:I have read the guidelines.
- label:I checked for duplicate issues.
- label:I searched for existing discussions.
- label:I checked for an existing pull request that addresses this issue.
validations:
- label:Yes,I did
required:true
- type:input
- type:dropdown
id:affected_part
attributes:
label:📜 What part of Winutil are you having issues with?
placeholder:"e.g., Microwin, Tweaks, etc."
label:What part of Winutil are you having issues with?
options:
- Program Install Tab
- Tweaks Tab
- Config Tab
- Updates Tab
- Win11 Creator Tab
validations:
required:true
required:false
- type:textarea
id:issue_description
attributes:
label:📝 Provide a clear and concise description of the issue.
label:Provide a clear and concise description of the issue.
validations:
required:true
- type:textarea
id:steps_to_reproduce
id:tweaks_applied
attributes:
label:🔄 Steps to reproduce the issue.
placeholder:"e.g., Step 1: ..., Step 2: ..."
label:List the tweaks you applied before the issue occurred.
validations:
required:true
required:false
- type:textarea
id:error_output
attributes:
label:❌ Paste the full error output (if available).
label:Paste the full error output (if available) or Screenshot or Video.
placeholder:"Include any relevant logs or error messages."
- type:textarea
id:additional_context
attributes:
label:🖼️ Additional context.
placeholder:"Include screenshots, code blocks (use triple backticks ```), or any other relevant information."
- 🛠️ **Supported environments only:** We only support Windows 11.
- 💡 For general questions, use the [Discussions section](https://github.com/Christitustech/winutil/discussions) or join our Community-driven [Discord Server](https://discord.gg/RUbZUZyByQ).
- type:checkboxes
attributes:
label:⚙️ Issue Checklist
options:
- label:I have read the guidelines.
- label:I checked for duplicate issues.
- label:I searched for existing discussions.
- label:I checked for an existing pull request that addresses this request.
validations:
required:true
- type:textarea
id:problem_statement
attributes:
label:❓ Is your feature request related to a problem?
placeholder:"Provide a clear and concise description of the issue you're facing. Example: 'I'm always frustrated when [...]'"
validations:
required:false
- type:textarea
id:proposed_solution
attributes:
label:💡 Describe the solution you'd like
placeholder:"Provide a clear and concise description of what you want to happen."
placeholder:"Provide a clear and concise description."
validations:
required:true
- type:textarea
id:alternatives
attributes:
label:🔄 Describe alternatives you've considered
placeholder:"Provide details on any alternative solutions or features you've thought about."
validations:
required:false
- type:textarea
id:additional_context
attributes:
label:🖼️ Additional context
placeholder:"Include screenshots, code blocks (use triple backticks ```), or any other relevant information."
<!--Before you make this PR have you followed the docs here? - https://christitustech.github.io/winutil/contribute/ -->
<!--Before you make this PR have you followed the docs here? - https://winutil.christitus.com/contributing/ -->
<!--Documentation is auto-generated from configs - no manual documentation updates needed -->
## Type of Change
- [ ] New feature
- [ ] Bug fix
- [ ] Documentation update
- [ ] Refactoring
- [ ] Hotfix
- [ ] Security patch
- [ ] Refactor
- [ ] UI/UX improvement
<!-- This automatically adds labels to your PR based on the selections above. -->
## Description
<!--[Provide a detailed explanation of the changes you have made. Include the reasons behind these changes and any relevant context. Link any related issues.]-->
## Testing
<!--[Detail the testing you have performed to ensure that these changes function as intended. Include information about any added tests.]-->
## Impact
<!--[Discuss the impact of your changes on the project. This might include effects on performance, new dependencies, or changes in behaviour.]-->
<!--[What does this PR do? Provide Screenshots when possible.]-->
## Issue related to PR
<!--[What issue/discussion is related to this PR (if any)]-->
<!--[List any ISSUES this is related to as it AUTO-CLOSES Them!]-->
- Resolves #
## Additional Information
<!--[Any additional information that reviewers should be aware of.]-->
## Checklist
- [ ] My code adheres to the coding and style guidelines of the project.
- [ ] I have performed a self-review of my own code.
- [ ] I have commented my code, particularly in hard-to-understand areas.
- [ ] I have made corresponding changes to the documentation.
- [ ] My changes generate no errors/warnings/merge conflicts.
Questa utility è una raccolta di attività Windows che eseguo personalmente su ogni sistema che utilizzo. È progettata per snellire le *installazioni*, rimuovere i componenti superflui tramite *ottimizzazioni*, risolvere problemi tramite la *configurazione*, e riparare *aggiornamenti* di Windows. Sono estremamente selettivo riguardo ai contributi per mantenere questo progetto pulito ed efficiente.
Winutil deve essere eseguito con privilegi di amministratore, poiché apporta modifiche all'intero sistema. Per farlo, avvia PowerShell come amministratore. Ecco alcuni modi per procedere:
1.**Metodo del menu di Start:**
- Fai clic con il tasto destro sul menu Start.
- Scegli "Windows PowerShell (esegui come Amministratore)" (per Windows 10) o "Terminale (esegui come Amministratore)" (per Windows 11).
2.**Metodo tramite ricerca:**
- Premi il tasto Windows.
- Digita "PowerShell" o "Terminal" (per Windows 11).
- Premi `Ctrl + Shift + Invio` oppure fai clic con il tasto destro e seleziona "Esegui come amministratore" per avviarlo con privilegi elevati.
### Comando di avvio
#### Branch stabile (Consigliato)
```ps1
irm "https://christitus.com/win"|iex
```
#### Branch Sviluppatore
```ps1
irm "https://christitus.com/windev"|iex
```
### Automazione
Winutil supporta anche preset predefiniti che applicano automaticamente configurazioni comuni:
In caso di problemi, consulta i [Problemi noti](https://winutil.christitus.com/knownissues/) o [Apri una segnalazione](https://github.com/ChrisTitusTech/winutil/issues)
## 🎓 Documentazione
### [Documentazione ufficiale di WinUtil](https://winutil.christitus.com/)
### [Tutorial su YouTube](https://www.youtube.com/watch?v=6UQZ5oQg8XA)
### [Articolo su ChrisTitus.com](https://christitus.com/windows-tool/)
## 🛠️ Build & Sviluppo
> [!NOTE]
> Winutil è uno script piuttosto esteso, per questo è suddiviso in più file che vengono combinati in un unico file `.ps1` tramite un compilatore personalizzato. Questo rende la manutenzione del progetto molto più semplice.
Ottieni una copia del codice sorgente. Puoi farlo tramite l'interfaccia di GitHub (**Code** > **Download ZIP**), oppure clonando (scaricando) la repo tramite git.
Se git è installato, esegui i seguenti comandi in una finestra PowerShell per clonare e accedere alla directory del progetto:
Per compilare il progetto, esegui lo script di compilazione in una finestra PowerShell (i permessi di amministratore NON sono richiesti):
```ps1
.\Compile.ps1
```
Troverai un nuovo file chiamato `winutil.ps1`, creato dallo script `Compile.ps1`. Ora puoi eseguirlo come amministratore e apparirà una nuova finestra. Goditi la tua versione compilata di WinUtil :)
> [!TIP]
> Per ulteriori informazioni sull'utilizzo di WinUtil e su come contribuire allo sviluppo, ti invitiamo a leggere le [Linee guida per i contributi](https://winutil.christitus.com/contributing/). Se non sai da dove iniziare o hai domande, puoi chiedere sul nostro [Server Discord della community](https://discord.gg/RUbZUZyByQ); i membri attivi del progetto risponderanno appena possibile.
## 💖 Supporto
- Per sostenere il progetto moralmente e mentalmente, non dimenticare di lasciare una ⭐️!
- Wrapper EXE a 10$ su https://www.cttstore.com/windows-toolbox
## 💖 Sponsor
Questi sono gli sponsor che aiutano a mantenere vivo il progetto con contributi mensili.
This utility is a compilation of Windows tasks I perform on each Windows system I use. It is meant to streamline *installs*, debloat with *tweaks*, troubleshoot with *config*, and fix Windows *updates*. I am extremely picky about any contributions to keep this project clean and efficient.
A curated compilation of Windows system tasks streamline **installs**, debloat with **tweaks**, troubleshoot with **config**, and configure **Windows updates**. Run it fresh on every new Windows install.
Winutil must be run in Admin mode because it performs system-wide tweaks. To achieve this, run PowerShell as an administrator. Here are a few ways to do it:
## Quick Start
1.**Start menu Method:**
- Right-click on the start menu.
- Choose "Windows PowerShell (Admin)" (for Windows 10) or "Terminal (Admin)" (for Windows 11).
> **WinUtil must be run as Administrator** Because it performs system-wide changes.
2.**Search and Launch Method:**
- Press the Windows key.
- Type "PowerShell" or "Terminal" (for Windows 11).
- Press `Ctrl + Shift + Enter` or Right-click and choose "Run as administrator" to launch it with administrator privileges.
### Launch Command
#### Stable Branch (Recommended)
Open PowerShell or Terminal as admin, then run:
**Stable Branch (recommended)**
```ps1
irm "https://christitus.com/win"|iex
```
#### Dev Branch
```ps1
irm "https://christitus.com/windev"|iex
irm https://christitus.com/win|iex
```
If you have Issues, refer to [Known Issues](https://winutil.christitus.com/knownissues/)
## 🎓 Documentation
> [!NOTE]
> To contribute to the documentation, please visit [WinUtil Docs Repo](https://github.com/Chris-Titus-Docs/winutil-docs) for more info.
### [WinUtil Official Documentation](https://winutil.christitus.com/)
> Winutil is a relatively large script, so it's split into multiple files which're combined into a single `.ps1` file using a custom compiler. This makes maintaining the project a lot easiler.
Get a copy of the source code, this can be done using GitHub UI (`Code -> Download ZIP`), or by cloning (downloading) the repo using git.
If git is installed, run the following commands under a PowerShell window to clone and move into project's directory:
You'll see a new file named `winutil.ps1`, which's created by `Compile.ps1` script, now you can run it as admin and a new window will popup, enjoy your own compiled version of WinUtil :)
| Preset | Description |
|--------|-------------|
| `Standard` | Balanced defaults for most users |
| `Minimal` | Minimal changes to suit every user |
| `Advanced` | Deep tweaks for power users |
> [!TIP]
> For more info on using WinUtil and how to develop for it, please consider reading [the Contribution Guidelines](https://winutil.christitus.com/contributing/), if you don't know where to start, or have questions, you can ask over on our [Discord Community Server](https://discord.gg/RUbZUZyByQ) and active project members will answer when they can.
"Description":".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.",
"Description":"Replaces the default Windows NTP server (time.windows.com) with pool.ntp.org for improved time synchronization accuracy and reliability.",
"Content":"Windows Subsystem for Linux (WSL) - Enable",
"Description":"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.",
"Description":"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.",
"category":"Features",
"panel":"1",
"Order":"a021_",
"Description":"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.",
Welcome to the official documentation for Winutil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, Winutil provides a comprehensive set of tools to enhance your Windows experience.
{{< image src="images/Title-Screen" alt="Winutil title screen" >}}
## Running the latest release of Winutil
* You will first need to start a PowerShell terminal **as Admin**.
* Now you can run the following command:
```
irm "https://christitus.com/win" | iex
```
> [!IMPORTANT]
> Winutil is updated frequently as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.
Winutil is a PowerShell-based Windows utility with a WPF (Windows Presentation Foundation) GUI. This document explains the architecture, code structure, and how different components work together.
├── Compile.ps1 # Build script that combines all files
├── winutil.ps1 # Compiled output (generated)
├── scripts/
│ ├── main.ps1 # Entry point and GUI initialization
│ └── start.ps1 # Startup logic
├── functions/
│ ├── private/ # Internal helper functions
│ │ ├── Get-WinUtilVariables.ps1
│ │ ├── Install-WinUtilWinget.ps1
│ │ └── ...
│ ├── public/ # User-facing functions
│ │ ├── Initialize-WPFUI.ps1
│ │ └── ...
├── config/ # JSON configuration files
│ ├── applications.json # Application definitions
│ ├── tweaks.json # Tweak definitions
│ ├── feature.json # Windows feature definitions
│ └── preset.json # Preset configurations
├── xaml/
│ └── inputXML.xaml # GUI layout definition
└── docs/ # Documentation
```
### Key Components
#### 1. Compile.ps1
**Purpose**: Combines all separate script files into a single `winutil.ps1` for distribution.
**Process**:
1. Reads all function files from `/functions/`
2. Includes configuration JSON files
3. Embeds XAML GUI definition
4. Combines into single script
5. Outputs `winutil.ps1`
**Why**: Makes distribution easier (single file) and improves load time.
#### 2. scripts/main.ps1
**Purpose**: Entry point that initializes the GUI and event system.
**Responsibilities**:
- Load XAML and create WPF window
- Initialize form elements
- Set up event handlers
- Load configurations
- Display the GUI
#### 3. functions/public/
**Purpose**: User-facing functions that implement main features.
**Key Functions**:
-`Initialize-WPFUI.ps1`: Sets up the GUI
-`Invoke-WPFTweak*`: Applies system tweaks
-`Invoke-WPFFeature*`: Enables Windows features
-`Install-WinUtilProgram*`: Installs applications
**Naming Convention**: Functions start with `WPF` or `Winutil` to be loaded into the runspace.
#### 4. functions/private/
**Purpose**: Internal helper functions not directly called by users.
**Key Functions**:
-`Get-WinUtilVariables.ps1`: Retrieves UI element references
-`Install-WinUtilWinget.ps1`: Ensures WinGet is installed
-`Get-WinUtilCheckBoxes.ps1`: Gets checkbox states
-`Invoke-WinUtilCurrentSystem.ps1`: Gets system information
#### 5. config/*.json
**Purpose**: Define available applications, tweaks, and features declaratively.
**Files**:
-`applications.json`: Application definitions with WinGet/Choco IDs
-`tweaks.json`: Registry tweaks and their undo actions
-`feature.json`: Windows features that can be enabled/disabled
-`preset.json`: Predefined tweak combinations
-`dns.json`: DNS provider configurations
#### 6. xaml/inputXML.xaml
**Purpose**: WPF GUI layout and design.
**Structure**:
- Buttons with event handlers
- TextBoxes for input
- CheckBoxes for options
- ListBoxes for selections
## Win11 Creator Architecture
The **Win11 Creator** is a specialized subsystem within Winutil that creates customized Windows 11 ISOs. It operates independently from the main package installation and tweak system.
### Win11 Creator Components
**Core Functions** (`functions/private/`):
-`Invoke-WinUtilISO.ps1`: Main orchestrator containing all Win11 Creator functions
-`Invoke-WinUtilISOBrowse`: ISO file selection dialog
-`Invoke-WinUtilISOMountAndVerify`: Validates and mounts ISO, verifies it's official Windows 11
-`Invoke-WinUtilISOModify`: Launches modification in background runspace
-`Invoke-WinUtilISOExport`: Handles ISO and USB export
-`Invoke-WinUtilISOCheckExistingWork`: Recovers incomplete work sessions
-`Invoke-WinUtilISOCleanAndReset`: Cleans up temp directories and resets UI
-`Invoke-WinUtilISOScript.ps1`: Applies modifications to mounted install.wim
"Description": "Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.",
"Description": ".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.",
"Content": "Windows Subsystem for Linux (WSL) - Enable",
"Description": "Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.",
Performs various tasks in an attempt to repair Windows Update
.DESCRIPTION
1. (Aggressive Only) Scans the system for corruption using the Invoke-WPFSystemRepair function
2. Stops Windows Update Services
3. Remove the QMGR Data file, which stores BITS jobs
4. (Aggressive Only) Renames the DataStore and CatRoot2 folders
DataStore - Contains the Windows Update History and Log Files
CatRoot2 - Contains the Signatures for Windows Update Packages
5. Renames the Windows Update Download Folder
6. Deletes the Windows Update Log
7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services
8. Reregisters the BITS and Windows Update DLLs
9. Removes the WSUS client settings
10. Resets WinSock
11. Gets and deletes all BITS jobs
12. Sets the startup type of the Windows Update Services then starts them
13. Forces Windows Update to check for updates
.PARAMETER Aggressive
If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary
#>
param($Aggressive = $false)
Write-Progress -Id 0 -Activity "Repairing Windows Update" -PercentComplete 0
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
"Description": "Toggles Windows prioritizes gaming performance by allocating system resources to games.",
"category": "Customize Preferences",
"panel": "2",
"Type": "Toggle",
"registry": [
{
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
"Name": "AllowAutoGameMode",
"Value": "1",
"Type": "DWord",
"OriginalValue": "0",
"DefaultState": "true"
},
{
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
"Name": "AutoGameModeEnabled",
"Value": "1",
"Type": "DWord",
"OriginalValue": "0",
"DefaultState": "true"
}
],
```
## Registry Changes
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
"Description": "Makes it so Cursor movement is affected by the speed of your physical mouse movements.",
"category": "Customize Preferences",
"panel": "2",
"Type": "Toggle",
"registry": [
{
"Path": "HKCU:\\Control Panel\\Mouse",
"Name": "MouseSpeed",
"Value": "1",
"Type": "DWord",
"OriginalValue": "0",
"DefaultState": "true"
},
{
"Path": "HKCU:\\Control Panel\\Mouse",
"Name": "MouseThreshold1",
"Value": "6",
"Type": "DWord",
"OriginalValue": "0",
"DefaultState": "true"
},
{
"Path": "HKCU:\\Control Panel\\Mouse",
"Name": "MouseThreshold2",
"Value": "10",
"Type": "DWord",
"OriginalValue": "0",
"DefaultState": "true"
}
],
```
## Registry Changes
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
"Description": "Toggles the recommendations section in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.",
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Applications and System Components store and retrieve configuration data to modify Windows settings, so we can use the registry to change many settings in one place.
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.