Compare commits

...

3 Commits

Author SHA1 Message Date
Chris Titus
f4703284ef chore: Update generated dev docs (#4264) 2026-03-26 15:26:48 -05:00
Paweł Gwozdowski
0028e439b5 Cleaned up typos, fixes grammatical errors and other related fixes (#4215)
* 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>
2026-03-26 15:26:21 -05:00
Gabi
37529a5659 Added mpc-qt and qview and TeamSpeak 3 and ecm to applications.json (#4211)
* Added mpc-qt and qview to applications.json

* Update applications.json

* Added teamspeak3

* added ecm
2026-03-26 15:23:35 -05:00
84 changed files with 213 additions and 179 deletions

View File

@@ -21,7 +21,7 @@
* 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.
* If you're doing code changes, then you can submit a PR to the `main` branch, but I am very selective about these.
!!! warning "Important"
@@ -87,7 +87,7 @@ graph TD
### Testing your changes
* To test to see if your changes work as intended run following commands in a powershell terminal as admin:
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
* Change the directory where you are running the commands to the forked project.
* `cd {path to the folder with the compile.ps1}`
@@ -112,6 +112,6 @@ graph TD
![Push Commit Image](/docs/assets/images/Push-Commit.png)
### 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.
* 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 no 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.

View File

@@ -50,9 +50,9 @@ If you have Issues, refer to [Known Issues](https://winutil.christitus.com/known
> [!NOTE]
> 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 easier.
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.
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:
If git is installed, run the following commands under a PowerShell window to clone and move into the project's directory:
```ps1
git clone --depth 1 "https://github.com/ChrisTitusTech/winutil.git"
cd winutil
@@ -63,10 +63,10 @@ To build the project, run the Compile Script under a PowerShell window (admin pe
.\Compile.ps1
```
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 :)
You'll see a new file named `winutil.ps1`, which was created by `Compile.ps1` script. Now you can run it as admin, and a new window will pop up. Enjoy your own compiled version of WinUtil :)
> [!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.
> 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.
## 💖 Support
- To morally and mentally support the project, make sure to leave a ⭐️!

View File

@@ -36,7 +36,7 @@
"category": "Document",
"choco": "na",
"content": "AFFiNE",
"description": "AFFiNE is an open-source alternative to Notion. Write, draw, plan all at once. Selfhost it to sync across devices.",
"description": "AFFiNE is an open-source alternative to Notion. Write, draw, plan all at once. Self-host it to sync across devices.",
"link": "https://affine.pro/",
"winget": "ToEverything.AFFiNE",
"foss": true
@@ -261,7 +261,7 @@
"category": "Utilities",
"choco": "citrix-workspace",
"content": "Citrix Workspace app",
"description": "a secure, unified client application that provides instant access to virtual desktops, SaaS, web, and Windows apps from any device (Windows, macOS, Linux, iOS, Android) or browser.",
"description": "A secure, unified client application that provides instant access to virtual desktops, SaaS, web, and Windows apps from any device (Windows, macOS, Linux, iOS, Android) or browser.",
"link": "https://www.citrix.com/downloads/workspace-app/",
"winget": "Citrix.Workspace"
},
@@ -523,7 +523,7 @@
"category": "Utilities",
"choco": "ditto",
"content": "Ditto",
"description": "Ditto is an extension to the standard windows clipboard.",
"description": "Ditto is an extension to the standard Windows Clipboard.",
"link": "https://github.com/sabrogden/Ditto",
"winget": "Ditto.Ditto",
"foss": true
@@ -610,6 +610,14 @@
"winget": "Duplicati.Duplicati",
"foss": true
},
"ecm": {
"category": "Utilities",
"choco": "ecm",
"content": "Easy Context Menu",
"description": "Easy Context Menu (ECM) lets you add a variety of useful commands and tweaks to the Desktop, My Computer, Drives, File and Folder right-click context menus. This enables you to access the most used Windows components quickly and easily. Simply check the box next to the items you wish to add. Once added, just right click and the select the component shortcut to launch it. Easy Context Menu is both portable and freeware.",
"link": "https://www.sordum.org/7615/easy-context-menu-v1-6/",
"winget": "sordum.EasyContextMenu"
},
"eaapp": {
"category": "Games",
"choco": "ea-app",
@@ -726,7 +734,7 @@
"category": "Multimedia Tools",
"choco": "ffmpeg-full",
"content": "FFmpeg (full)",
"description": "FFmpeg is a powerful multimedia processing tool that enables users to convert, edit, and stream audio and video files with a vast range of codecs and formats. | Note: FFmpeg can not be uninstalled using winget.",
"description": "FFmpeg is a powerful multimedia processing tool that enables users to convert, edit, and stream audio and video files with a vast range of codecs and formats. | Note: FFmpeg can not be uninstalled using WinGet.",
"link": "https://ffmpeg.org/",
"winget": "Gyan.FFmpeg"
},
@@ -787,7 +795,7 @@
"category": "Multimedia Tools",
"choco": "lightshot",
"content": "Lightshot (Screenshots)",
"description": "Ligthshot is an easy-to-use, light-weight screenshot software tool, where you can optionally edit your screenshots using different tools, share them via Internet and/or save to disk, and customize the available options.",
"description": "Lightshot is an easy-to-use, light-weight screenshot software tool, where you can optionally edit your screenshots using different tools, share them via Internet and/or save to disk, and customize the available options.",
"link": "https://app.prntscr.com/",
"winget": "Skillbrains.Lightshot"
},
@@ -1359,7 +1367,7 @@
"category": "Communications",
"choco": "linphone",
"content": "Linphone",
"description": "Linphone is an open-source voice over IP (VoIPservice that allows for audio and video calls, messaging, and more.",
"description": "Linphone is an open-source voice over IP (VoIP) service that allows for audio and video calls, messaging, and more.",
"link": "https://www.linphone.org/",
"winget": "BelledonneCommunications.Linphone",
"foss": true
@@ -1424,6 +1432,15 @@
"link": "https://www.malwarebytes.com/",
"winget": "Malwarebytes.Malwarebytes"
},
"mpc-qt": {
"category": "Multimedia Tools",
"choco": "mediainfo",
"content": "mpc-qt",
"description": "MPC-HC (Media Player Classic Home Cinema) is considered by many to be the quintessential media player for the Windows desktop. MPC-QT (Media Player Classic Qute Theater) aims to reproduce most of the interface and functionality of MPC-HC while using libmpv to play video instead of DirectShow.",
"link": "https://github.com/mpc-qt/mpc-qt",
"winget": "mpc-qt.mpc-qt",
"foss": true
},
"masscode": {
"category": "Document",
"choco": "na",
@@ -1640,7 +1657,7 @@
"category": "Pro Tools",
"choco": "netbird",
"content": "NetBird",
"description": "NetBird is a open-source alternative comparable to TailScale that can be connected to a selfhosted Server.",
"description": "NetBird is a open-source alternative comparable to TailScale that can be connected to a self-hosted server.",
"link": "https://netbird.io/",
"winget": "netbird",
"foss": true
@@ -1899,6 +1916,15 @@
"winget": "Fleex255.PolicyPlus",
"foss": true
},
"qview": {
"category": "Multimedia Tools",
"choco": "na",
"content": "qView",
"description": "qView is an image viewer designed with minimalism and usability in mind.",
"link": "https://github.com/jurplel/qView",
"winget": "jurplel.qView",
"foss": true
},
"potplayer": {
"category": "Multimedia Tools",
"choco": "na",
@@ -1944,7 +1970,7 @@
"category": "Document",
"choco": "pdfxchangeeditor",
"content": "PDF-XChangeEditor",
"description": "a comprehensive Windows-based software suite and editor for creating, viewing, editing, annotating, and signing PDF files.",
"description": "A comprehensive Windows-based software suite and editor for creating, viewing, editing, annotating, and signing PDF files.",
"link": "https://www.pdf-xchange.com/",
"winget": "TrackerSoftware.PDF-XChangeEditor"
},
@@ -2588,6 +2614,14 @@
"link": "https://www.teamviewer.com/",
"winget": "TeamViewer.TeamViewer"
},
"teamspeak3": {
"category": "Utilities",
"choco": "teamspeak",
"content": "TeamSpeak 3",
"description": "TEAMSPEAK. YOUR TEAM. YOUR RULES. Use crystal clear sound to communicate with your team mates cross-platform with military-grade security, lag-free performance & unparalleled reliability and uptime.",
"link": "https://www.teamspeak.com/",
"winget": "TeamSpeakSystems.TeamSpeakClient"
},
"telegram": {
"category": "Communications",
"choco": "telegram",
@@ -2883,7 +2917,7 @@
"wazuh": {
"category": "Utilities",
"choco": "wazuh-agent",
"content": "Wazuh.",
"content": "Wazuh",
"description": "Wazuh is an open-source security monitoring platform that offers intrusion detection, compliance checks, and log analysis.",
"link": "https://wazuh.com/",
"winget": "Wazuh.WazuhAgent",
@@ -2918,7 +2952,7 @@
"category": "Utilities",
"choco": "wingetui",
"content": "UniGetUI",
"description": "UniGetUI is a GUI for Winget, Chocolatey, and other Windows CLI package managers.",
"description": "UniGetUI is a GUI for WinGet, Chocolatey, and other Windows CLI package managers.",
"link": "https://www.marticliment.com/wingetui/",
"winget": "MartiCliment.UniGetUI",
"foss": true
@@ -3405,7 +3439,7 @@
"category": "Utilities",
"choco": "na",
"content": "Lenovo Legion Toolkit",
"description": "Lenovo Legion Toolkit (LLT) is a open-source utility created for Lenovo Legion (and similar) series laptops, that allows changing a couple of features that are only available in Lenovo Vantage or Legion Zone. It runs no background services, uses less memory, uses virtually no CPU, and contains no telemetry. Just like Lenovo Vantage, this application is Windows only.",
"description": "Lenovo Legion Toolkit (LLT) is a open-source utility created for Lenovo Legion laptops, that allows changing a couple of features that are only available in Lenovo Vantage or Legion Zone. It runs no background services, uses less memory, uses virtually no CPU, and contains no telemetry. Just like Lenovo Vantage, this application is Windows only.",
"link": "https://github.com/BartoszCichecki/LenovoLegionToolkit",
"winget": "BartoszCichecki.LenovoLegionToolkit",
"foss": true

View File

@@ -21,13 +21,13 @@
"Description": "Upgrade all applications to the latest version"
},
"WingetRadioButton": {
"Content": "Winget",
"Content": "WinGet",
"Category": "__Package Manager",
"Type": "RadioButton",
"GroupName": "PackageManagerGroup",
"Checked": true,
"Order": "1",
"Description": "Use Winget for package management"
"Description": "Use WinGet for package management"
},
"ChocoRadioButton": {
"Content": "Chocolatey",

View File

@@ -103,7 +103,7 @@
Remove-Item ViVeTool -Recurse
Write-Host 'Old start menu reverted please restart your computer to take effect'
Write-Host 'Old start menu reverted. Please restart your computer to take effect.'
"
],
"UndoScript": [
@@ -117,7 +117,7 @@
Remove-Item ViVeTool -Recurse
Write-Host 'New start menu reverted please restart your computer to take effect'
Write-Host 'New start menu reverted. Please restart your computer to take effect.'
"
],
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/revertstartmenu"
@@ -1457,7 +1457,7 @@
},
"WPFTweaksUTC": {
"Content": "Set Time to UTC (Dual Boot)",
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.",
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux systems.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",
"registry": [
@@ -1490,7 +1490,7 @@
Remove-Item \"$Env:LocalAppData\\Microsoft\\OneDrive\" -Recurse -Force
Remove-Item \"C:\\ProgramData\\Microsoft OneDrive\" -Recurse -Force
# Grant back permission to accses OneDrive folder
# Grant back permission to access OneDrive folder
icacls $Env:OneDrive /grant \"Administrators:(D,DC)\"
# Disable OneSyncSvc
@@ -1528,7 +1528,7 @@
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removehome"
},
"WPFTweaksRemoveGallery": {
"Content": "Remove Gallery from explorer",
"Content": "Remove Gallery from Explorer",
"Description": "Removes the Gallery from Explorer and sets This PC as default.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",
@@ -1799,7 +1799,7 @@
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/endtaskontaskbar"
},
"WPFTweaksPowershell7Tele": {
"Content": "Disable Powershell 7 Telemetry",
"Content": "Disable PowerShell 7 Telemetry",
"Description": "Creates an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell PowerShell 7 to not send Telemetry Data.",
"category": "Essential Tweaks",
"panel": "1",
@@ -2088,7 +2088,7 @@
},
"WPFTweaksTeredo": {
"Content": "Disable Teredo",
"Description": "Teredo network tunneling is a IPv6 feature that can cause additional latency, but may cause problems with some games.",
"Description": "Teredo network tunneling is an IPv6 feature that can cause additional latency, but may cause problems with some games.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",
"registry": [
@@ -2224,7 +2224,7 @@
},
"WPFToggleStandbyFix": {
"Content": "Modern Standby fix",
"Description": "Disable network connection during S0 sleep. If network connectivity is turned on during S0 sleep it could cause overheating on modern laptops",
"Description": "Disable network connection during S0 Sleep. If network connectivity is turned on during S0 Sleep it could cause overheating on modern laptops.",
"category": "Customize Preferences",
"panel": "2",
"Type": "Toggle",

View File

@@ -24,7 +24,7 @@ toc: true
* 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.
* If you're doing code changes, then you can submit a PR to the `main` branch, but I am very selective about these.
> [!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!
@@ -85,7 +85,7 @@ graph TD
### Testing your changes
* To test to see if your changes work as intended run following commands in a powershell terminal as admin:
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
* Change the directory where you are running the commands to the forked project.
* `cd {path to the folder with the compile.ps1}`
@@ -110,6 +110,6 @@ graph TD
{{< image src="images/Push-Commit" alt="Push Commit Image" >}}
### 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.
* 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 no 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.

View File

@@ -13,7 +13,7 @@ irm https://github.com/ChrisTitusTech/Winutil/releases/latest/download/Winutil.p
If it still isn't working in your region, it may be due to temporary ISP or network filtering of GitHub content domains. This has been reported by some users in India in the past. See: [Times of India](https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms).
If you are still having issues, try using a **VPN**, or changing your **DNS provider** to one of following two providers:
If you are still having issues, try using a **VPN**, or changing your **DNS provider** to one of the following two providers:
| Provider | Primary DNS | Secondary DNS |
| :--------: | :---------: | :-----------: |
@@ -44,7 +44,7 @@ irm "https://christitus.com/win" | iex
```
> [!NOTE]
> On Windows 11, you usually do not need the TLS 1.2 command. Use it only if you hit download or security protocol errors.
> On Windows 11, you usually do not need the TLS 1.2 command. Use it only if you encounter download or security protocol errors.
### Execution Policy Error
@@ -59,7 +59,7 @@ This only changes the policy for the current PowerShell process and is safe for
### Interface Doesn't Appear
If Winutil downloads but the GUI does not open or appear, try these steps:
If Winutil downloads, but the GUI does not open or appear, try these steps:
1. Check if your antivirus or Windows Defender is blocking the script — add an exclusion if necessary.
2. Ensure you launched PowerShell / Terminal as **Administrator**.

View File

@@ -14,7 +14,7 @@ Welcome to the official documentation for Winutil, your go-to utility for optimi
## Running the latest release of Winutil
* You will first need to start a Powershell terminal **as Admin**.
* You will first need to start a PowerShell terminal **as Admin**.
* Now you can run the following command:
```

View File

@@ -145,7 +145,7 @@ The **Win11 Creator** is a specialized subsystem within Winutil that creates cus
- `Invoke-WinUtilISOScript.ps1`: Applies modifications to mounted install.wim
- Removes provisioned AppX packages (40+ bloatware apps)
- Injects drivers (optional) from current system
- Injects drivers (optional) from the current system
- Removes OneDrive setup files
- Applies offline registry tweaks (hardware bypass, privacy, telemetry, OOBE)
- Deletes telemetry scheduled task definitions
@@ -167,7 +167,7 @@ Invoke-WinUtilISOMountAndVerify
├─ Extract available editions (Home, Pro, Enterprise, etc.)
└─ Store ISO path, drive letter, WIM path, image info in $sync
User optionally enables Driver Injection checkbox
User optionally enables the Driver Injection checkbox
Invoke-WinUtilISOModify (runs in background runspace)
├─ Create work directory: ~WinUtil_Win11ISO_[timestamp]
@@ -183,7 +183,7 @@ Invoke-WinUtilISOModify (runs in background runspace)
│ ├─ Pre-stage setup scripts from autounattend.xml to C:\Windows\Setup\Scripts\
│ └─ Unload registry hives
├─ DISM /Cleanup-Image /StartComponentCleanup /ResetBase (saves 300-800 MB)
├─ Dismount and save modified install.wim (~10+ minutes, slowest step)
├─ Dismount and save the modified install.wim (~10+ minutes, slowest step)
├─ Export selected edition only (removes all other editions, saves 1-2 GB each)
├─ Dismount source ISO
└─ Report completion, enable export options
@@ -218,7 +218,7 @@ Invoke-WinUtilISOCleanAndReset (optional)
- Prevents redundant modifications
**Modification Safety**:
- All registry changes are documented in script (reversible)
- All registry changes are documented in a script (reversible)
- Original ISO never modified; only working copy
- Logged to `WinUtil_Win11ISO.log` for debugging
- DISM handles image dismount with automatic cleanup on error
@@ -256,7 +256,7 @@ The `Invoke-WinUtilISOScript` function applies **50+ offline registry tweaks**:
**System Features**:
- Disable BitLocker and device encryption
- Disable Chat icon from taskbar
- Disable Chat icon from the Taskbar
- Disable OneDrive folder backup
- Disable Copilot
- Disable Windows Update during OOBE (re-enabled at first login)
@@ -287,7 +287,7 @@ Get-WinUtilCheckBoxes → Retrieves selected apps
For each selected app:
Check if WinGet/Choco installed
Check if WinGet/Choco is installed
Install-WinUtilWinget/Choco (if needed)
@@ -333,7 +333,7 @@ Retrieve "OriginalState" from tweak definition
Invoke-WPFUndoTweak → Restore original values
Remove from applied tweaks log
Remove from the applied tweaks log
Update UI
```
@@ -525,7 +525,7 @@ $sync.form.Dispatcher.Invoke([action]{
```
2. Recompile: `.\Compile.ps1`
3. The app appears automatically in Install tab
3. The app appears automatically in the Install tab
### Adding a New Tweak
@@ -550,7 +550,7 @@ $sync.form.Dispatcher.Invoke([action]{
```
2. Recompile: `.\Compile.ps1`
3. Tweak appears in Tweaks tab
3. Tweak appears in the Tweaks tab
### Adding a New Function

View File

@@ -9,20 +9,20 @@ function Invoke-WPFFixesWinget {
<#
.SYNOPSIS
Fixes Winget by running choco install winget
Fixes WinGet by running `choco install winget`
.DESCRIPTION
BravoNorris for the fantastic idea of a button to reinstall winget
BravoNorris for the fantastic idea of a button to reinstall WinGet
#>
# Install Choco if not already present
try {
Set-WinUtilTaskbaritem -state "Indeterminate" -overlay "logo"
Write-Host "==> Starting Winget Repair"
Write-Host "==> Starting WinGet Repair"
Install-WinUtilWinget
} catch {
Write-Error "Failed to install winget: $_"
Write-Error "Failed to install WinGet: $_"
Set-WinUtilTaskbaritem -state "Error" -overlay "warning"
} finally {
Write-Host "==> Finished Winget Repair"
Write-Host "==> Finished WinGet Repair"
Set-WinUtilTaskbaritem -state "None" -overlay "checkmark"
}

View File

@@ -13,6 +13,6 @@ function Invoke-WinUtilUninstallPSProfile {
Remove-Item $Profile
}
Write-Host "Successfully uninstalled CTT Powershell Profile" -ForegroundColor Green
Write-Host "Successfully uninstalled CTT PowerShell Profile." -ForegroundColor Green
}
```

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -48,6 +48,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -32,6 +32,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -34,6 +34,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -40,6 +40,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -48,6 +48,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -32,6 +32,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -34,6 +34,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -6,7 +6,7 @@ description: ""
```json {filename="config/tweaks.json",linenos=inline,linenostart=2225}
"WPFToggleStandbyFix": {
"Content": "Modern Standby fix",
"Description": "Disable network connection during S0 sleep. If network connectivity is turned on during S0 sleep it could cause overheating on modern laptops",
"Description": "Disable network connection during S0 Sleep. If network connectivity is turned on during S0 Sleep it could cause overheating on modern laptops.",
"category": "Customize Preferences",
"panel": "2",
"Type": "Toggle",
@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -50,6 +50,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -34,6 +34,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -24,6 +24,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -36,6 +36,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -35,6 +35,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -43,6 +43,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -1,11 +1,11 @@
---
title: "Disable Powershell 7 Telemetry"
title: "Disable PowerShell 7 Telemetry"
description: ""
---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1801}
"WPFTweaksPowershell7Tele": {
"Content": "Disable Powershell 7 Telemetry",
"Content": "Disable PowerShell 7 Telemetry",
"Description": "Creates an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell PowerShell 7 to not send Telemetry Data.",
"category": "Essential Tweaks",
"panel": "1",

View File

@@ -33,6 +33,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -20,7 +20,7 @@ description: ""
Remove-Item ViVeTool -Recurse
Write-Host 'Old start menu reverted please restart your computer to take effect'
Write-Host 'Old start menu reverted. Please restart your computer to take effect.'
"
],
"UndoScript": [
@@ -34,7 +34,7 @@ description: ""
Remove-Item ViVeTool -Recurse
Write-Host 'New start menu reverted please restart your computer to take effect'
Write-Host 'New start menu reverted. Please restart your computer to take effect.'
"
],
```

View File

@@ -128,6 +128,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -50,6 +50,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -28,6 +28,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -29,6 +29,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -105,6 +105,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -127,6 +127,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -48,6 +48,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -90,6 +90,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -1,11 +1,11 @@
---
title: "Remove Gallery from explorer"
title: "Remove Gallery from Explorer"
description: ""
---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1530}
"WPFTweaksRemoveGallery": {
"Content": "Remove Gallery from explorer",
"Content": "Remove Gallery from Explorer",
"Description": "Removes the Gallery from Explorer and sets This PC as default.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",

View File

@@ -23,7 +23,7 @@ description: ""
Remove-Item \"$Env:LocalAppData\\Microsoft\\OneDrive\" -Recurse -Force
Remove-Item \"C:\\ProgramData\\Microsoft OneDrive\" -Recurse -Force
# Grant back permission to accses OneDrive folder
# Grant back permission to access OneDrive folder
icacls $Env:OneDrive /grant \"Administrators:(D,DC)\"
# Disable OneSyncSvc

View File

@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -6,7 +6,7 @@ description: ""
```json {filename="config/tweaks.json",linenos=inline,linenostart=2089}
"WPFTweaksTeredo": {
"Content": "Disable Teredo",
"Description": "Teredo network tunneling is a IPv6 feature that can cause additional latency, but may cause problems with some games.",
"Description": "Teredo network tunneling is an IPv6 feature that can cause additional latency, but may cause problems with some games.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",
"registry": [
@@ -28,6 +28,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -6,7 +6,7 @@ description: ""
```json {filename="config/tweaks.json",linenos=inline,linenostart=1458}
"WPFTweaksUTC": {
"Content": "Set Time to UTC (Dual Boot)",
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.",
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux systems.",
"category": "z__Advanced Tweaks - CAUTION",
"panel": "1",
"registry": [
@@ -22,6 +22,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -29,6 +29,6 @@ description: ""
## 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.
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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -6,14 +6,14 @@ toc: true
## General Questions
### Is Windows 10 still supported?
No. Windows 10 is no longer supported by Winutil because it reached end of support on **October 14, 2025**.
No. Windows 10 is no longer supported by Winutil because it reached the end of support on **October 14, 2025**.
Winutil is focused on Windows 11.
### How do I uninstall Winutil?
You do not need to uninstall Winutil. Because it runs as a PowerShell script, it is loaded into memory only while it is open. Once you close it, it is removed from memory and does not remain installed on your system.
### Is Winutil safe to use?
Yes, Winutil is open source and the code is publicly available on GitHub. Thousands of users run it daily. However, like any system modification tool, you should:
Yes, Winutil is open source, and the code is publicly available on GitHub. Thousands of users run it daily. However, like any system modification tool, you should:
- Run it as Administrator (required)
- Create a restore point before major changes
- Understand what tweaks you're applying
@@ -23,7 +23,7 @@ Yes, Winutil is open source and the code is publicly available on GitHub. Thousa
No. Once you've applied tweaks or installed applications, you can close Winutil. Changes persist after closing. You only need to run Winutil again when you want to make additional changes or undo tweaks.
### Does Winutil require internet access?
- **For downloading**: Yes, installing applications requires internet
- **For downloading**: Yes, installing applications requires the internet
- **For tweaks**: No, most tweaks work offline
- **Initial run**: Yes, to run the latest script
@@ -55,7 +55,7 @@ Try these solutions in order:
```
> [!NOTE]
> On Windows 11, you usually do not need the TLS 1.2 command. Use it only if you hit download or security protocol errors.
> On Windows 11, you usually do not need the TLS 1.2 command. Use it only if you encounter download or security protocol errors.
3. **Change DNS** to Cloudflare (1.1.1.1) or Google (8.8.8.8)
@@ -91,10 +91,10 @@ Alternatively, use System Restore if you created a restore point.
- Run Disk Cleanup
- Create Restore Point
**(Advanced Tweaks)** should only be ran by advance users.
**(Advanced Tweaks)** should only be run by advanced users.
### Will tweaks survive Windows Updates?
Most tweaks persist through updates, but some may be reset by major Windows feature updates. You may need to reapply certain tweaks afterward.
Most tweaks persist through updates, but some may be reset by major Windows feature updates. You may need to reapply certain tweaks afterwards.
### Can I create my own tweak presets?
Currently, Winutil uses predefined presets (Standard, Minimal). Custom presets aren't directly supported in the GUI, but you can script your preferred configuration.
@@ -165,7 +165,7 @@ Troubleshooting steps:
1. Check your internet connection
2. Try installing just that one application
3. Review error messages in the output panel
4. Check if antivirus is blocking
4. Check if the antivirus is blocking
5. Try the WinGet Reinstall fix
### Network tweaks broke my internet connection
@@ -241,7 +241,7 @@ Results may vary depending on your system.
Use the **Desktop** preset, then additionally apply:
- Disable GameDVR
- Ultimate Performance power plan
- Disable fullscreen optimizations (Advanced)
- Disable full-screen optimizations (Advanced)
- Set display for performance (Advanced)
### How much RAM does Winutil use?
@@ -251,7 +251,7 @@ Winutil itself uses about 50-100 MB while running. Once closed, it is removed fr
### "Access Denied" errors
- Ensure PowerShell is running as Administrator
- Check if antivirus is blocking changes
- Check if the antivirus is blocking changes
- Verify you have ownership of files/registry keys

View File

@@ -6,7 +6,7 @@ weight: 2
Welcome to the official User Guide for **Winutil**, your all-in-one Windows toolkit.
> [!IMPORTANT]
> Windows 10 is not supported by Winutil. Windows 10 reached end of support on **October 14, 2025**.
> Windows 10 is not supported by Winutil. Windows 10 reached the end of support on **October 14, 2025**.
## What is Winutil?

View File

@@ -13,7 +13,7 @@ Install common **Windows features** by selecting the feature checkboxes and clic
* Hyper-V Virtualization
* Legacy Media (WMP, DirectPlay)
* NFS - Network File System
* Enable Daily Registry Backup Task 12:30am
* Enable Daily Registry Backup Task 12:30 AM
* Enable Legacy F8 Boot Recovery
* Disable Legacy F8 Boot Recovery
* Windows Subsystem for Linux

View File

@@ -12,7 +12,7 @@ Winutil is a powerful Windows utility that helps you optimize, customize, and ma
Before running Winutil, ensure your system meets these requirements:
> [!IMPORTANT]
> Windows 10 is not supported by Winutil. Windows 10 reached end of support on **October 14, 2025**.
> Windows 10 is not supported by Winutil. Windows 10 reached the end of support on **October 14, 2025**.
- **Operating System**: Windows 11
- **PowerShell**: Version 5.1 or later (included by default in Windows 11)
@@ -86,7 +86,7 @@ Winutil opens with a clean, tabbed interface:
- **Tweaks**: Apply system optimizations and customizations
- **Config**: Access system tools and utilities
- **Updates**: Manage Windows updates
- **Win11 Creator**: Allows user to debloat Win11 iso files.
- **Win11 Creator**: Allows user to debloat Windows 11 ISO files.
## Your First Actions
@@ -106,7 +106,7 @@ This gives you a rollback point if needed.
1. Navigate to the **Install** tab
2. Browse categories or use the search bar
3. Check applications you want to install
3. Check the applications you want to install
4. Click "Install/Upgrade Selected" at the bottom
### 3. Apply Basic Tweaks
@@ -209,7 +209,7 @@ Winutil offers several preset configurations:
### Script Won't Download
If you get any errors when running winutil please refer to [Known Issues](/knownissues/) page
If you get any errors when running Winutil please refer to [Known Issues](/knownissues/) page
## Next Steps

View File

@@ -5,7 +5,7 @@ weight: 6
Winutil provides three update modes so you can choose how aggressively Windows Update is managed on your system:
- **Default (Out of Box) Settings**: Restores standard Windows Update behavior
- **Default (Out of the Box) Settings**: Restores standard Windows Update behavior
- **Security (Recommended) Settings**: Prioritizes stability while still receiving security updates
- **Disable ALL Updates**: Turns off Windows Update entirely and should only be used with extreme caution

View File

@@ -59,7 +59,7 @@ Click **Run Windows ISO Modification and Creator** to start the customization pr
- **Disable Copilot and search box suggestions**
**Optional: Driver Injection**
- If enabled, injects all drivers from your current system into the install.wim and boot.wim — useful for offline installations on machines with missing drivers. This is an optional checkbox in Step 3.
- If enabled, it injects all drivers from your current system into the install.wim and boot.wim — useful for offline installations on machines with missing drivers. This is an optional checkbox in Step 3.
A live log shows progress as each step completes. This stage usually takes **1030 minutes** depending on disk speed. The WIM dismount near the end is the slowest part, so do not close Winutil while it is running.
@@ -67,7 +67,7 @@ A live log shows progress as each step completes. This stage usually takes **10
### Step 4 — Export Your Result
Once modification is complete, choose how to save your image:
Once the modification is complete, choose how to save your image:
{{< tabs >}}

View File

@@ -34,21 +34,21 @@ function Get-WinUtilSelectedPackages
if ($package.choco -eq "na") {
Write-Debug "$($package.content) has no Choco value."
$null = $packagesWinget.add($($package.winget))
Write-Host "Queueing $($package.winget) for Winget"
Write-Host "Queueing $($package.winget) for WinGet..."
} else {
$null = $packagesChoco.add($package.choco)
Write-Host "Queueing $($package.choco) for Chocolatey"
Write-Host "Queueing $($package.choco) for Chocolatey..."
}
break
}
"Winget" {
if ($package.winget -eq "na") {
Write-Debug "$($package.content) has no Winget value."
Write-Debug "$($package.content) has no WinGet value."
$null = $packagesChoco.add($package.choco)
Write-Host "Queueing $($package.choco) for Chocolatey"
Write-Host "Queueing $($package.choco) for Chocolatey..."
} else {
$null = $packagesWinget.add($($package.winget))
Write-Host "Queueing $($package.winget) for Winget"
Write-Host "Queueing $($package.winget) for WinGet..."
}
break
}

View File

@@ -20,9 +20,9 @@ Function Get-WinUtilToggleStatus {
if (($ToggleSwitchReg.path -imatch "hku") -and !(Get-PSDrive -Name HKU -ErrorAction SilentlyContinue)) {
$null = (New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS)
if (Get-PSDrive -Name HKU -ErrorAction SilentlyContinue) {
Write-Debug "HKU drive created successfully"
Write-Debug "HKU drive created successfully."
} else {
Write-Debug "Failed to create HKU drive"
Write-Debug "Failed to create HKU drive."
}
}
} catch {

View File

@@ -10,6 +10,6 @@ function Install-WinUtilChoco {
return
}
Write-Host "Chocolatey is not installed, installing now."
Write-Host "Chocolatey is not installed. Installing now..."
Invoke-WebRequest -Uri https://community.chocolatey.org/install.ps1 -UseBasicParsing | Invoke-Expression
}

View File

@@ -205,7 +205,7 @@ function Install-WinUtilProgramChoco {
Write-Host "Searching for metapackages of $Program (.install or .portable)"
$chocoPackages = ((choco list | Select-String -Pattern "$Program(\.install|\.portable)?").Matches.Value) -join " "
if ($chocoPackages) {
Write-Host "Starting uninstallation of $chocoPackages with Chocolatey."
Write-Host "Starting uninstallation of $chocoPackages with Chocolatey..."
try {
$uninstallStatusCode = Invoke-ChocoCommand "uninstall $chocoPackages -y"
Write-Host "$Program" $(if ($uninstallStatusCode -eq 0) { "uninstalled successfully." } else { "failed to uninstall." })

View File

@@ -28,10 +28,10 @@ Function Install-WinUtilProgramWinget {
Invokes the winget.exe with the provided arguments and return the exit code
.PARAMETER wingetId
The Id of the Program that Winget should Install/Uninstall
The Id of the Program that WinGet should Install/Uninstall
.NOTES
Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed
Invoke WinGet uses the public variable $Action defined outside the function to determine if a Program should be installed or removed
#>
param (
[string]$wingetId
@@ -61,7 +61,7 @@ Function Install-WinUtilProgramWinget {
Contains the Install Logic and return code handling from winget
.PARAMETER Program
The Winget ID of the Program that should be installed
The WinGet ID of the Program that should be installed
#>
param (
[string]$Program
@@ -71,7 +71,7 @@ Function Install-WinUtilProgramWinget {
Write-Host "$($Program) installed successfully."
return $true
} elseif ($status -eq -1978335189) {
Write-Host "$($Program) No applicable update found"
Write-Host "No applicable update found for $($Program)."
return $true
}
@@ -82,10 +82,10 @@ Function Install-WinUtilProgramWinget {
Function Invoke-Uninstall {
<#
.SYNOPSIS
Contains the Uninstall Logic and return code handling from winget
Contains the Uninstall Logic and return code handling from WinGet
.PARAMETER Program
The Winget ID of the Program that should be uninstalled
The WinGet ID of the Program that should be uninstalled
#>
param (
[string]$Program
@@ -110,7 +110,7 @@ Function Install-WinUtilProgramWinget {
$failedPackages = @()
Write-Host "==========================================="
Write-Host "-- Configuring winget packages ---"
Write-Host "-- Configuring WinGet packages ---"
Write-Host "==========================================="
for ($i = 0; $i -lt $count; $i++) {
@@ -130,6 +130,6 @@ Function Install-WinUtilProgramWinget {
}
}
Set-WinUtilProgressBar -label "$($Action)ation done" -percent 100
Set-WinUtilProgressBar -label "$($Action) action done." -percent 100
return $failedPackages
}

View File

@@ -2,16 +2,16 @@ function Install-WinUtilWinget {
<#
.SYNOPSIS
Installs Winget if not already installed.
Installs WinGet if not already installed.
.DESCRIPTION
installs winget if needed
installs winGet if needed
#>
if ((Test-WinUtilPackageManager -winget) -eq "installed") {
return
}
Write-Host "Winget is not Installed. Installing." -ForegroundColor Red
Write-Host "WinGet is not installed. Installing now..." -ForegroundColor Red
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
Install-PackageProvider -Name NuGet -Force

View File

@@ -21,7 +21,7 @@ function Invoke-WinUtilFeatureInstall {
Invoke-WPFUIThread -ScriptBlock { Set-WinUtilTaskbaritem -state "Error" }
} else {
Write-Warning "Unable to Install $feature due to unhandled exception"
Write-Warning "Unable to Install $feature due to unhandled exception."
Write-Warning $CheckBox.Exception.StackTrace
}
}
@@ -40,7 +40,7 @@ function Invoke-WinUtilFeatureInstall {
Invoke-WPFUIThread -ScriptBlock { Set-WinUtilTaskbaritem -state "Error" }
} else {
Invoke-WPFUIThread -ScriptBlock { Set-WinUtilTaskbaritem -state "Error" }
Write-Warning "Unable to Install $feature due to unhandled exception"
Write-Warning "Unable to Install $feature due to unhandled exception."
Write-Warning $CheckBox.Exception.StackTrace
}
}

View File

@@ -416,12 +416,12 @@ function Invoke-WinUtilISOCleanAndReset {
Log "WIM dismounted successfully."
}
} elseif (Test-Path $mountDir) {
Log "No mounted WIM reported by Get-WindowsImage, running DISM /Cleanup-Wim as a precaution..."
Log "No mounted WIM reported by Get-WindowsImage. Running DISM /Cleanup-Wim as a precaution..."
SetProgress "Running DISM cleanup..." 3
& dism /English /Cleanup-Wim 2>&1 | ForEach-Object { Log $_ }
}
} catch {
Log "Warning: could not dismount WIM cleanly, attempting DISM /Cleanup-Wim fallback: $_"
Log "Warning: could not dismount WIM cleanly. Attempting DISM /Cleanup-Wim fallback: $_"
try { & dism /English /Cleanup-Wim 2>&1 | ForEach-Object { Log $_ } }
catch { Log "Warning: DISM /Cleanup-Wim also failed: $_" }
}

View File

@@ -5,7 +5,7 @@ function Invoke-WinUtilISORefreshUSBDrives {
$combo.Items.Clear()
if ($removable.Count -eq 0) {
$combo.Items.Add("No USB drives detected")
$combo.Items.Add("No USB drives detected.")
$combo.SelectedIndex = 0
$sync["Win11ISOUSBDisks"] = @()
Write-Win11ISOLog "No USB drives detected."

View File

@@ -9,12 +9,12 @@ function Invoke-WinUtilSSHServer {
# Install the OpenSSH Server feature if not already installed
if ($FeatureName.State -ne "Installed") {
Write-Host "Enabling OpenSSH Server"
Write-Host "Enabling OpenSSH Server..."
Add-WindowsCapability -Online -Name $FeatureName.Name
}
# Sets up the OpenSSH Server service
Write-Host "Starting the services"
Write-Host "Starting the services..."
Start-Service -Name sshd
Set-Service -Name sshd -StartupType Automatic
@@ -50,7 +50,7 @@ function Invoke-WinUtilSSHServer {
}
#Adding Firewall rule for port 22
Write-Host "Setting up firewall rules"
Write-Host "Setting up firewall rules..."
$firewallRule = (Get-NetFirewallRule -Name 'sshd').Enabled
if ($firewallRule) {
Write-Host "Firewall rule for OpenSSH Server (sshd) already exists."

View File

@@ -21,7 +21,7 @@ function Invoke-WinUtilScript {
)
try {
Write-Host "Running Script for $name"
Write-Host "Running Script for $Name"
Invoke-Command $scriptblock -ErrorAction Stop
} catch [System.Management.Automation.CommandNotFoundException] {
Write-Warning "The specified command was not found."
@@ -37,7 +37,7 @@ function Invoke-WinUtilScript {
Write-Warning $PSItem.Exception.message
} catch {
# Generic catch block to handle any other type of exception
Write-Warning "Unable to run script for $name due to unhandled exception"
Write-Warning "Unable to run script for $Name due to unhandled exception."
Write-Warning $psitem.Exception.StackTrace
}

View File

@@ -60,7 +60,7 @@ function Invoke-WinUtilTweaks {
$changeservice = $false
}
} catch [System.ServiceProcess.ServiceNotFoundException] {
Write-Warning "Service $($psitem.Name) was not found"
Write-Warning "Service $($psitem.Name) was not found."
}
}
@@ -76,9 +76,9 @@ function Invoke-WinUtilTweaks {
if (($psitem.Path -imatch "hku") -and !(Get-PSDrive -Name HKU -ErrorAction SilentlyContinue)) {
$null = (New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS)
if (Get-PSDrive -Name HKU -ErrorAction SilentlyContinue) {
Write-Debug "HKU drive created successfully"
Write-Debug "HKU drive created successfully."
} else {
Write-Debug "Failed to create HKU drive"
Write-Debug "Failed to create HKU drive."
}
}
Set-WinUtilRegistry -Name $psitem.Name -Path $psitem.Path -Type $psitem.Type -Value $psitem.$($values.registry)

View File

@@ -7,5 +7,5 @@ function Invoke-WinUtilUninstallPSProfile {
Remove-Item $Profile
}
Write-Host "Successfully uninstalled CTT Powershell Profile" -ForegroundColor Green
Write-Host "Successfully uninstalled CTT PowerShell Profile." -ForegroundColor Green
}

View File

@@ -15,7 +15,7 @@ function Set-WinUtilDNS {
if($DNSProvider -eq "Default") {return}
try {
$Adapters = Get-NetAdapter | Where-Object {$_.Status -eq "Up"}
Write-Host "Ensuring DNS is set to $DNSProvider on the following interfaces"
Write-Host "Ensuring DNS is set to $DNSProvider on the following interfaces:"
Write-Host $($Adapters | Out-String)
Foreach ($Adapter in $Adapters) {
@@ -27,7 +27,7 @@ function Set-WinUtilDNS {
}
}
} catch {
Write-Warning "Unable to set DNS Provider due to an unhandled exception"
Write-Warning "Unable to set DNS Provider due to an unhandled exception."
Write-Warning $psitem.Exception.StackTrace
}
}

View File

@@ -31,7 +31,7 @@ function Set-WinUtilRegistry {
if(!(Test-Path 'HKU:\')) {New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS}
If (!(Test-Path $Path)) {
Write-Host "$Path was not found, Creating..."
Write-Host "$Path was not found. Creating..."
New-Item -Path $Path -Force -ErrorAction Stop | Out-Null
}
@@ -44,13 +44,13 @@ function Set-WinUtilRegistry {
Remove-ItemProperty -Path $Path -Name $Name -Force -ErrorAction Stop | Out-Null
}
} catch [System.Security.SecurityException] {
Write-Warning "Unable to set $Path\$Name to $Value due to a Security Exception"
Write-Warning "Unable to set $Path\$Name to $Value due to a Security Exception."
} catch [System.Management.Automation.ItemNotFoundException] {
Write-Warning $psitem.Exception.ErrorRecord
} catch [System.UnauthorizedAccessException] {
Write-Warning $psitem.Exception.Message
} catch {
Write-Warning "Unable to set $Name due to unhandled exception"
Write-Warning "Unable to set $Name due to unhandled exception."
Write-Warning $psitem.Exception.StackTrace
}
}

View File

@@ -30,13 +30,13 @@ function Set-WinUtilScheduledTask {
}
} catch [System.Exception] {
if($psitem.Exception.Message -like "*The system cannot find the file specified*") {
Write-Warning "Scheduled Task $name was not Found"
Write-Warning "Scheduled Task $Name was not found."
} else {
Write-Warning "Unable to set $Name due to unhandled exception"
Write-Warning "Unable to set $Name due to unhandled exception."
Write-Warning $psitem.Exception.Message
}
} catch {
Write-Warning "Unable to run script for $name due to unhandled exception"
Write-Warning "Unable to run script for $name due to unhandled exception."
Write-Warning $psitem.Exception.StackTrace
}
}

View File

@@ -31,9 +31,9 @@ Function Set-WinUtilService {
$service | Set-Service -StartupType $StartupType -ErrorAction Stop
}
} catch [System.ServiceProcess.ServiceNotFoundException] {
Write-Warning "Service $Name was not found"
Write-Warning "Service $Name was not found."
} catch {
Write-Warning "Unable to set $Name due to unhandled exception"
Write-Warning "Unable to set $Name due to unhandled exception."
Write-Warning $_.Exception.Message
}

View File

@@ -2,10 +2,10 @@ function Test-WinUtilPackageManager {
<#
.SYNOPSIS
Checks if Winget and/or Choco are installed
Checks if WinGet and/or Choco are installed
.PARAMETER winget
Check if Winget is installed
Check if WinGet is installed
.PARAMETER choco
Check if Chocolatey is installed
@@ -20,12 +20,12 @@ function Test-WinUtilPackageManager {
if ($winget) {
if (Get-Command winget -ErrorAction SilentlyContinue) {
Write-Host "===========================================" -ForegroundColor Green
Write-Host "--- Winget is installed ---" -ForegroundColor Green
Write-Host "--- WinGet is installed ---" -ForegroundColor Green
Write-Host "===========================================" -ForegroundColor Green
$status = "installed"
} else {
Write-Host "===========================================" -ForegroundColor Red
Write-Host "--- Winget is not installed ---" -ForegroundColor Red
Write-Host "--- WinGet is not installed ---" -ForegroundColor Red
Write-Host "===========================================" -ForegroundColor Red
$status = "not-installed"
}

View File

@@ -3,13 +3,13 @@ Function Update-WinUtilProgramWinget {
<#
.SYNOPSIS
This will update all programs using Winget
This will update all programs using WinGet
#>
[ScriptBlock]$wingetinstall = {
$host.ui.RawUI.WindowTitle = """Winget Install"""
$host.ui.RawUI.WindowTitle = """WinGet Install"""
Start-Transcript "$logdir\winget-update_$dateTime.log" -Append
winget upgrade --all --accept-source-agreements --accept-package-agreements --scope=machine --silent

View File

@@ -3,20 +3,20 @@ function Invoke-WPFFixesWinget {
<#
.SYNOPSIS
Fixes Winget by running choco install winget
Fixes WinGet by running `choco install winget`
.DESCRIPTION
BravoNorris for the fantastic idea of a button to reinstall winget
BravoNorris for the fantastic idea of a button to reinstall WinGet
#>
# Install Choco if not already present
try {
Set-WinUtilTaskbaritem -state "Indeterminate" -overlay "logo"
Write-Host "==> Starting Winget Repair"
Write-Host "==> Starting WinGet Repair"
Install-WinUtilWinget
} catch {
Write-Error "Failed to install winget: $_"
Write-Error "Failed to install WinGet: $_"
Set-WinUtilTaskbaritem -state "Error" -overlay "warning"
} finally {
Write-Host "==> Finished Winget Repair"
Write-Host "==> Finished WinGet Repair"
Set-WinUtilTaskbaritem -state "None" -overlay "checkmark"
}

View File

@@ -14,7 +14,7 @@ function Invoke-WPFInstall {
}
if ($PackagesToInstall.Count -eq 0) {
$WarningMsg = "Please select the program(s) to install or upgrade"
$WarningMsg = "Please select the program(s) to install or upgrade."
[System.Windows.MessageBox]::Show($WarningMsg, $AppTitle, [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
return
}

View File

@@ -278,7 +278,7 @@ foreach ($itemName in $tweakNames) {
if ($item.registry) {
$content += "`r`n## Registry Changes`r`n`r`n"
$content += "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.`r`n`r`n"
$content += "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.`r`n`r`n"
$content += "You can find information about the registry on [Wikipedia](https://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).`r`n"
}
}