Compare commits

...

30 Commits

Author SHA1 Message Date
Chris Titus
5516be2464 chore: Update generated dev docs (#4338) 2026-04-07 14:10:34 -05:00
Chris Titus
9f972fdac1 Merge branch 'main' of https://github.com/ChrisTitusTech/winutil 2026-04-07 14:09:40 -05:00
Chris Titus
c453f260cf Revert "Revert "Simplfy Invoke-WPFUltimatePerformance.ps1"" (#4335)
* 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
2026-04-07 14:09:31 -05:00
Chris Titus
98eba09986 formatting 2026-04-07 13:07:36 -05:00
Chris Titus
61bce6afda chore: Update generated dev docs (#4334) 2026-04-07 13:04:43 -05:00
Chris Titus
419b150220 Revert "Simplfy Invoke-WPFUltimatePerformance.ps1 (#4319)" (#4333)
This reverts commit e30c0a4c27.
2026-04-07 13:04:02 -05:00
Chris Titus
372fa0159a chore: Update generated dev docs (#4332) 2026-04-07 13:00:56 -05:00
Gabi
406d6fdfc4 oopsy (#4330) 2026-04-07 12:59:59 -05:00
Gabi
e30c0a4c27 Simplfy Invoke-WPFUltimatePerformance.ps1 (#4319)
* Simplfy Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFButton.ps1

* Update Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFButton.ps1

* Update Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFUltimatePerformance.ps1

* Update Invoke-WPFUltimatePerformance.ps1
2026-04-07 12:59:37 -05:00
Chris Titus
3d300f6634 chore: Update generated dev docs (#4331) 2026-04-07 12:58:59 -05:00
Sean (ANGRYxScotsman)
a72c0770dd removed redundant appx packages (#4308)
* updated appx list

* kept camera

* kept dolby

* removed copilot as we have another tweak for this

* Update tweaks.json

* undo last commits

* removed likedin

* other tweaks do this.

* remove copilot tweak does this

* Update tweaks.json

* removed redundant packages

* removed AppUp.IntelManagementandSecurityStatus

* updated content

* Update tweaks.json

* Update tweaks.json

* Update tweaks.json

* Update tweaks.json

* Update tweaks.json

* Update tweaks.json

* Update tweaks.json
2026-04-07 12:58:27 -05:00
Chris Titus
811cc126e6 chore: Update generated dev docs (#4329) 2026-04-07 12:51:25 -05:00
Gabi
3ceea1b9c1 Disable GeoLocation service in WPFTweaksLocation (#4307)
* Disable GeoLocation service in WPFTweaksLocation

* Update tweaks.json

* Update tweaks.json
2026-04-07 12:50:50 -05:00
Gabi
0cd971d992 Update Install-WinUtilWinget.ps1 (#4302)
* Update Install-WinUtilWinget.ps1

* Update Install-WinUtilWinget.ps1

* Update Install-WinUtilWinget.ps1

* Update Install-WinUtilWinget.ps1

* Update Install-WinUtilWinget.ps1
2026-04-07 12:50:05 -05:00
Chris Titus
e077fc7e21 chore: Update generated dev docs (#4328) 2026-04-07 12:47:42 -05:00
Jarosław Drzewiecki de Ogańczyk
0abac833ce Fixed InitialKeyboardIndicators to be String instead of Dword (#4306) 2026-04-07 12:47:12 -05:00
Sean (ANGRYxScotsman)
a0fdf2cb80 removed redundant appx packages from win11 creator (#4321)
* redundant

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* Update Invoke-WinUtilISOScript.ps1

* removed notes aswell
2026-04-07 10:48:52 -05:00
Gabi
b8f1671ff7 Removed some old code from Invoke-WPFButton.ps1 (#4318) 2026-04-07 10:47:42 -05:00
Gabi
0536047200 Fix: onedrivesetup not being removed (#4317)
* Removed onedrive removal from Invoke-WinUtilISOScript.ps1

* Update autounattend.xml

* Update Invoke-WinUtilISOScript.ps1
2026-04-07 10:47:24 -05:00
dependabot[bot]
2a4bff017d Bump actions/download-artifact from 4 to 8 (#4316)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-07 10:46:57 -05:00
dependabot[bot]
68d6ca7edc Bump actions/upload-artifact from 4 to 7 (#4315)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-07 10:46:37 -05:00
Chris Titus
00fbd0e86d chore: Update generated dev docs (#4326) 2026-04-07 10:46:13 -05:00
Gabi
c24ea5e53b Update Invoke-WinUtilISO.ps1 (#4314) 2026-04-07 10:46:11 -05:00
Gabi
786c7c677d Make WPFTweaksRemoveCopilot only remove copilot (#4310) 2026-04-07 10:45:44 -05:00
Sean (ANGRYxScotsman)
c9e9214fd6 added next and previous (#4323)
Co-authored-by: Chris Titus <contact@christitus.com>
2026-04-07 10:38:37 -05:00
Sean (ANGRYxScotsman)
b7f6a8cebe fixed more 404 errors (#4322)
* fixed 404 errors

* updated page

* Update _index.md
2026-04-07 10:37:37 -05:00
Gabi
355bd17b88 Added veravrypt and cryptomator and hugo to applications.json (#4305)
* Added veravrypt to applications.json

* Added hugo to applications.json

* Update applications.json
2026-04-07 10:36:14 -05:00
potato
6198bb2cdd feat: add uv to installable applications (#4304) 2026-04-07 10:35:37 -05:00
Chris Titus
6a495411e8 chore: Update generated dev docs (#4325) 2026-04-07 10:31:58 -05:00
Gabi
8f830a59df Update tweaks.json (#4303) 2026-04-07 10:31:25 -05:00
59 changed files with 271 additions and 622 deletions

View File

@@ -83,7 +83,7 @@ jobs:
shell: pwsh shell: pwsh
- name: Upload compiled script - name: Upload compiled script
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v7
with: with:
name: winutil-ps1 name: winutil-ps1
path: ./winutil.ps1 path: ./winutil.ps1
@@ -93,7 +93,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Download compiled script - name: Download compiled script
uses: actions/download-artifact@v4 uses: actions/download-artifact@v8
with: with:
name: winutil-ps1 name: winutil-ps1

View File

@@ -257,6 +257,15 @@
"link": "https://www.advancedrenamer.com/", "link": "https://www.advancedrenamer.com/",
"winget": "HulubuluSoftware.AdvancedRenamer" "winget": "HulubuluSoftware.AdvancedRenamer"
}, },
"cryptomator": {
"category": "Utilities",
"choco": "cryptomator",
"content": "Cryptomator",
"description": "Cryptomator for Windows, macOS, and Linux: Secure client-side encryption for your cloud storage, ensuring privacy and control over your data.",
"link": "https://github.com/cryptomator/cryptomator/",
"winget": "Cryptomator.Cryptomator",
"foss": true
},
"citrixworkspaceapp": { "citrixworkspaceapp": {
"category": "Utilities", "category": "Utilities",
"choco": "citrix-workspace", "choco": "citrix-workspace",
@@ -1038,6 +1047,15 @@
"link": "https://gerardog.github.io/gsudo/", "link": "https://gerardog.github.io/gsudo/",
"winget": "gerardog.gsudo" "winget": "gerardog.gsudo"
}, },
"hugo": {
"category": "Utilities",
"choco": "hugo-extended",
"content": "Hugo",
"description": "The worlds fastest framework for building websites.",
"link": "https://github.com/gohugoio/hugo/",
"winget": "Hugo.Hugo.Extended",
"foss": true
},
"handbrake": { "handbrake": {
"category": "Multimedia Tools", "category": "Multimedia Tools",
"choco": "handbrake", "choco": "handbrake",
@@ -2762,6 +2780,15 @@
"link": "https://unity.com/", "link": "https://unity.com/",
"winget": "Unity.UnityHub" "winget": "Unity.UnityHub"
}, },
"veravrypt": {
"category": "Utilities",
"choco": "veracrypt",
"content": "VeraCrypt",
"description": "Disk encryption with strong security based on TrueCrypt.",
"link": "https://github.com/veracrypt/VeraCrypt/",
"winget": "IDRIX.VeraCrypt",
"foss": true
},
"vagrant": { "vagrant": {
"category": "Development", "category": "Development",
"choco": "vagrant", "choco": "vagrant",
@@ -3218,6 +3245,15 @@
"winget": "Intel.PresentMon.Beta", "winget": "Intel.PresentMon.Beta",
"foss": true "foss": true
}, },
"uv": {
"category": "Development",
"choco": "na",
"content": "uv",
"description": "uv is a fast Python package and project manager written in Rust.",
"link": "https://docs.astral.sh/uv/getting-started/installation/",
"winget": "astral-sh.uv",
"foss": true
},
"pyenvwin": { "pyenvwin": {
"category": "Development", "category": "Development",
"choco": "pyenv-win", "choco": "pyenv-win",

View File

@@ -140,6 +140,13 @@
"Description": "Disables Location Tracking.", "Description": "Disables Location Tracking.",
"category": "Essential Tweaks", "category": "Essential Tweaks",
"panel": "1", "panel": "1",
"service": [
{
"Name": "lfsvc",
"StartupType": "Disable",
"OriginalType": "Manual"
}
],
"registry": [ "registry": [
{ {
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\CapabilityAccessManager\\ConsentStore\\location", "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\CapabilityAccessManager\\ConsentStore\\location",
@@ -155,13 +162,6 @@
"Type": "DWord", "Type": "DWord",
"OriginalValue": "1" "OriginalValue": "1"
}, },
{
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\lfsvc\\Service\\Configuration",
"Name": "Status",
"Value": "0",
"Type": "DWord",
"OriginalValue": "1"
},
{ {
"Path": "HKLM:\\SYSTEM\\Maps", "Path": "HKLM:\\SYSTEM\\Maps",
"Name": "AutoUpdateEnabled", "Name": "AutoUpdateEnabled",
@@ -1674,78 +1674,30 @@
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/xboxremoval" "link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/xboxremoval"
}, },
"WPFTweaksDeBloat": { "WPFTweaksDeBloat": {
"Content": "Remove all Microsoft Store apps", "Content": "Remove Unwanted Pre-Installed Apps",
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.", "Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.",
"category": "z__Advanced Tweaks - CAUTION", "category": "z__Advanced Tweaks - CAUTION",
"panel": "1", "panel": "1",
"appx": [ "appx": [
"Microsoft.Microsoft3DViewer", "Microsoft.WindowsFeedbackHub",
"Microsoft.AppConnector",
"Microsoft.BingFinance",
"Microsoft.BingNews", "Microsoft.BingNews",
"Microsoft.BingSports", "Microsoft.BingSearch",
"Microsoft.BingTranslator",
"Microsoft.BingWeather", "Microsoft.BingWeather",
"Microsoft.BingFoodAndDrink",
"Microsoft.BingHealthAndFitness",
"Microsoft.BingTravel",
"Clipchamp.Clipchamp", "Clipchamp.Clipchamp",
"Microsoft.Todos", "Microsoft.Todos",
"MicrosoftCorporationII.QuickAssist", "Microsoft.PowerAutomateDesktop",
"Microsoft.MicrosoftStickyNotes",
"Microsoft.GetHelp",
"Microsoft.GetStarted",
"Microsoft.Messaging",
"Microsoft.MicrosoftSolitaireCollection", "Microsoft.MicrosoftSolitaireCollection",
"Microsoft.NetworkSpeedTest",
"Microsoft.News",
"Microsoft.Office.Lens",
"Microsoft.Office.Sway",
"Microsoft.Office.OneNote",
"Microsoft.OneConnect",
"Microsoft.People",
"Microsoft.Print3D",
"Microsoft.SkypeApp",
"Microsoft.Wallet",
"Microsoft.Whiteboard",
"Microsoft.WindowsAlarms",
"Microsoft.WindowsCommunicationsApps",
"Microsoft.WindowsFeedbackHub",
"Microsoft.WindowsMaps",
"Microsoft.WindowsSoundRecorder", "Microsoft.WindowsSoundRecorder",
"Microsoft.ConnectivityStore", "Microsoft.MicrosoftStickyNotes",
"Microsoft.ScreenSketch", "Microsoft.Windows.DevHome",
"Microsoft.MixedReality.Portal", "Microsoft.Paint",
"Microsoft.OutlookForWindows",
"Microsoft.WindowsAlarms",
"Microsoft.StartExperiencesApp",
"Microsoft.GetHelp",
"Microsoft.ZuneMusic", "Microsoft.ZuneMusic",
"Microsoft.ZuneVideo", "MicrosoftCorporationII.QuickAssist",
"Microsoft.MicrosoftOfficeHub", "MSTeams"
"MsTeams",
"*EclipseManager*",
"*ActiproSoftwareLLC*",
"*AdobeSystemsIncorporated.AdobePhotoshopExpress*",
"*Duolingo-LearnLanguagesforFree*",
"*PandoraMediaInc*",
"*CandyCrush*",
"*BubbleWitch3Saga*",
"*Wunderlist*",
"*Flipboard*",
"*Twitter*",
"*Facebook*",
"*Royal Revolt*",
"*Sway*",
"*Speed Test*",
"*Dolby*",
"*Viber*",
"*ACGMediaPlayer*",
"*Netflix*",
"*OneCalendar*",
"*LinkedInForWindows*",
"*HiddenCityMysteryofShadows*",
"*Hulu*",
"*HiddenCity*",
"*AdobePhotoshopExpress*",
"*HotspotShieldFreeVPN*",
"*Microsoft.Advertising.Xaml*"
], ],
"InvokeScript": [ "InvokeScript": [
" "
@@ -1835,84 +1787,27 @@
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/storage" "link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/storage"
}, },
"WPFTweaksRemoveCopilot": { "WPFTweaksRemoveCopilot": {
"Content": "Disable Microsoft Copilot", "Content": "Remove Microsoft Copilot",
"Description": "Disables MS Copilot AI built into Windows since 23H2.", "Description": "Removes Copilot AppXPackages and related ai packages",
"category": "z__Advanced Tweaks - CAUTION", "category": "z__Advanced Tweaks - CAUTION",
"panel": "1", "panel": "1",
"registry": [
{
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsCopilot",
"Name": "TurnOffWindowsCopilot",
"Value": "1",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\Software\\Policies\\Microsoft\\Windows\\WindowsCopilot",
"Name": "TurnOffWindowsCopilot",
"Value": "1",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
"Name": "ShowCopilotButton",
"Value": "0",
"Type": "DWord",
"OriginalValue": "1"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot",
"Name": "IsCopilotAvailable",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot",
"Name": "CopilotDisabledReason",
"Value": "IsEnabledForGeographicRegionFailed",
"Type": "String",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsCopilot",
"Name": "AllowCopilotRuntime",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Blocked",
"Name": "{CB3B0003-8088-4EDE-8769-8B354AB2FF8C}",
"Value": "",
"Type": "String",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot\\BingChat",
"Name": "IsUserEligible",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
}
],
"InvokeScript": [ "InvokeScript": [
" "
Write-Host \"Remove Copilot\"
Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers
Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers
$Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName $Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName
$Sid = (Get-LocalUser $Env:UserName).Sid.Value $Sid = (Get-LocalUser $Env:UserName).Sid.Value
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force
Remove-AppxPackage $Appx Remove-AppxPackage $Appx
Write-Host \"Copilot Removed\"
" "
], ],
"UndoScript": [ "UndoScript": [
" "
Write-Host \"Install Copilot\" Write-Host \"Installing Copilot...\"
winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent
" "
], ],
@@ -1961,8 +1856,7 @@
if (Test-Path $RazerPath) { if (Test-Path $RazerPath) {
Remove-Item $RazerPath\\* -Recurse -Force Remove-Item $RazerPath\\* -Recurse -Force
} } else {
else {
New-Item -Path $RazerPath -ItemType Directory New-Item -Path $RazerPath -ItemType Directory
} }
@@ -2258,7 +2152,7 @@
"Path": "HKU:\\.Default\\Control Panel\\Keyboard", "Path": "HKU:\\.Default\\Control Panel\\Keyboard",
"Name": "InitialKeyboardIndicators", "Name": "InitialKeyboardIndicators",
"Value": "2", "Value": "2",
"Type": "DWord", "Type": "String",
"OriginalValue": "0", "OriginalValue": "0",
"DefaultState": "false" "DefaultState": "false"
}, },
@@ -2266,7 +2160,7 @@
"Path": "HKCU:\\Control Panel\\Keyboard", "Path": "HKCU:\\Control Panel\\Keyboard",
"Name": "InitialKeyboardIndicators", "Name": "InitialKeyboardIndicators",
"Value": "2", "Value": "2",
"Type": "DWord", "Type": "String",
"OriginalValue": "0", "OriginalValue": "0",
"DefaultState": "false" "DefaultState": "false"
} }

View File

@@ -3,7 +3,7 @@ title: "Bing Search in Start Menu"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2214} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2108}
"WPFToggleBingSearch": { "WPFToggleBingSearch": {
"Content": "Bing Search in Start Menu", "Content": "Bing Search in Start Menu",
"Description": "If enabled, Bing web search results will be included in your Start Menu search.", "Description": "If enabled, Bing web search results will be included in your Start Menu search.",

View File

@@ -3,7 +3,7 @@ title: "Dark Theme for Windows"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2172} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2066}
"WPFToggleDarkMode": { "WPFToggleDarkMode": {
"Content": "Dark Theme for Windows", "Content": "Dark Theme for Windows",
"Description": "Enable/Disable Dark Mode.", "Description": "Enable/Disable Dark Mode.",

View File

@@ -3,7 +3,7 @@ title: "Detailed BSoD"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2588} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2482}
"WPFToggleDetailedBSoD": { "WPFToggleDetailedBSoD": {
"Content": "Detailed BSoD", "Content": "Detailed BSoD",
"Description": "If enabled, you will see a detailed Blue Screen of Death (BSOD) with more information.", "Description": "If enabled, you will see a detailed Blue Screen of Death (BSOD) with more information.",

View File

@@ -3,7 +3,7 @@ title: "Cross-Device Resume"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2718} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2612}
"WPFToggleDisableCrossDeviceResume": { "WPFToggleDisableCrossDeviceResume": {
"Content": "Cross-Device Resume", "Content": "Cross-Device Resume",
"Description": "This tweak controls the Resume function in Windows 11 24H2 and later, which allows you to resume an activity from a mobile device and vice-versa.", "Description": "This tweak controls the Resume function in Windows 11 24H2 and later, which allows you to resume an activity from a mobile device and vice-versa.",

View File

@@ -3,7 +3,7 @@ title: "Show Hidden Files"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2468} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2362}
"WPFToggleHiddenFiles": { "WPFToggleHiddenFiles": {
"Content": "Show Hidden Files", "Content": "Show Hidden Files",
"Description": "If enabled, Hidden Files will be shown.", "Description": "If enabled, Hidden Files will be shown.",

View File

@@ -3,7 +3,7 @@ title: "Remove Settings Home Page"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2338} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2232}
"WPFToggleHideSettingsHome": { "WPFToggleHideSettingsHome": {
"Content": "Remove Settings Home Page", "Content": "Remove Settings Home Page",
"Description": "Removes the Home Page in the Windows Settings app.", "Description": "Removes the Home Page in the Windows Settings app.",

View File

@@ -3,7 +3,7 @@ title: "Mouse Acceleration"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2356} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2250}
"WPFToggleMouseAcceleration": { "WPFToggleMouseAcceleration": {
"Content": "Mouse Acceleration", "Content": "Mouse Acceleration",
"Description": "If enabled, the Cursor movement is affected by the speed of your physical mouse movements.", "Description": "If enabled, the Cursor movement is affected by the speed of your physical mouse movements.",

View File

@@ -3,7 +3,7 @@ title: "Disable Multiplane Overlay"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2450} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2344}
"WPFToggleMultiplaneOverlay": { "WPFToggleMultiplaneOverlay": {
"Content": "Disable Multiplane Overlay", "Content": "Disable Multiplane Overlay",
"Description": "Disable the Multiplane Overlay which can sometimes cause issues with Graphics Cards.", "Description": "Disable the Multiplane Overlay which can sometimes cause issues with Graphics Cards.",

View File

@@ -3,7 +3,7 @@ title: "New Outlook"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2408} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2302}
"WPFToggleNewOutlook": { "WPFToggleNewOutlook": {
"Content": "New Outlook", "Content": "New Outlook",
"Description": "If disabled, it removes the new Outlook toggle, disables the new Outlook migration, and ensures the classic Outlook application is used.", "Description": "If disabled, it removes the new Outlook toggle, disables the new Outlook migration, and ensures the classic Outlook application is used.",

View File

@@ -3,7 +3,7 @@ title: "Num Lock on Startup"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2250} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2144}
"WPFToggleNumLock": { "WPFToggleNumLock": {
"Content": "Num Lock on Startup", "Content": "Num Lock on Startup",
"Description": "Toggle the Num Lock key state when your computer starts.", "Description": "Toggle the Num Lock key state when your computer starts.",
@@ -15,7 +15,7 @@ description: ""
"Path": "HKU:\\.Default\\Control Panel\\Keyboard", "Path": "HKU:\\.Default\\Control Panel\\Keyboard",
"Name": "InitialKeyboardIndicators", "Name": "InitialKeyboardIndicators",
"Value": "2", "Value": "2",
"Type": "DWord", "Type": "String",
"OriginalValue": "0", "OriginalValue": "0",
"DefaultState": "false" "DefaultState": "false"
}, },
@@ -23,7 +23,7 @@ description: ""
"Path": "HKCU:\\Control Panel\\Keyboard", "Path": "HKCU:\\Control Panel\\Keyboard",
"Name": "InitialKeyboardIndicators", "Name": "InitialKeyboardIndicators",
"Value": "2", "Value": "2",
"Type": "DWord", "Type": "String",
"OriginalValue": "0", "OriginalValue": "0",
"DefaultState": "false" "DefaultState": "false"
} }

View File

@@ -3,7 +3,7 @@ title: "S3 Sleep"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2614} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2508}
"WPFToggleS3Sleep": { "WPFToggleS3Sleep": {
"Content": "S3 Sleep", "Content": "S3 Sleep",
"Description": "Toggles between Modern Standby and S3 Sleep.", "Description": "Toggles between Modern Standby and S3 Sleep.",

View File

@@ -3,7 +3,7 @@ title: "Show File Extensions"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2496} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2390}
"WPFToggleShowExt": { "WPFToggleShowExt": {
"Content": "Show File Extensions", "Content": "Show File Extensions",
"Description": "If enabled, File extensions (e.g., .txt, .jpg) are visible.", "Description": "If enabled, File extensions (e.g., .txt, .jpg) are visible.",

View File

@@ -3,7 +3,7 @@ title: "Modern Standby fix"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2232} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2126}
"WPFToggleStandbyFix": { "WPFToggleStandbyFix": {
"Content": "Modern Standby fix", "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.",

View File

@@ -3,7 +3,7 @@ title: "Recommendations in Start Menu"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2294} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2188}
"WPFToggleStartMenuRecommendations": { "WPFToggleStartMenuRecommendations": {
"Content": "Recommendations in Start Menu", "Content": "Recommendations in Start Menu",
"Description": "If disabled, then you will not see recommendations in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.", "Description": "If disabled, then you will not see recommendations in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.",

View File

@@ -3,7 +3,7 @@ title: "Sticky Keys"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2390} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2284}
"WPFToggleStickyKeys": { "WPFToggleStickyKeys": {
"Content": "Sticky Keys", "Content": "Sticky Keys",
"Description": "If enabled, Sticky Keys is activated. Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.", "Description": "If enabled, Sticky Keys is activated. Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.",

View File

@@ -3,7 +3,7 @@ title: "Task View Button in Taskbar"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2542} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2436}
"WPFToggleTaskView": { "WPFToggleTaskView": {
"Content": "Task View Button in Taskbar", "Content": "Task View Button in Taskbar",
"Description": "If enabled, Task View Button in Taskbar will be shown.", "Description": "If enabled, Task View Button in Taskbar will be shown.",

View File

@@ -3,7 +3,7 @@ title: "Center Taskbar Items"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2560} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2454}
"WPFToggleTaskbarAlignment": { "WPFToggleTaskbarAlignment": {
"Content": "Center Taskbar Items", "Content": "Center Taskbar Items",
"Description": "[Windows 11] If enabled, the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.", "Description": "[Windows 11] If enabled, the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.",

View File

@@ -3,7 +3,7 @@ title: "Search Button in Taskbar"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2524} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2418}
"WPFToggleTaskbarSearch": { "WPFToggleTaskbarSearch": {
"Content": "Search Button in Taskbar", "Content": "Search Button in Taskbar",
"Description": "If enabled, Search Button will be on the Taskbar.", "Description": "If enabled, Search Button will be on the Taskbar.",

View File

@@ -3,7 +3,7 @@ title: "Verbose Messages During Logon"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2276} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2170}
"WPFToggleVerboseLogon": { "WPFToggleVerboseLogon": {
"Content": "Verbose Messages During Logon", "Content": "Verbose Messages During Logon",
"Description": "Show detailed messages during the login process for troubleshooting and diagnostics.", "Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",

View File

@@ -3,7 +3,7 @@ title: "Delete Temporary Files"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2067} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1961}
"WPFTweaksDeleteTempFiles": { "WPFTweaksDeleteTempFiles": {
"Content": "Delete Temporary Files", "Content": "Delete Temporary Files",
"Description": "Erases TEMP Folders.", "Description": "Erases TEMP Folders.",

View File

@@ -3,7 +3,7 @@ title: "Disable Explorer Automatic Folder Discovery"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2663} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2557}
"WPFTweaksDisableExplorerAutoDiscovery": { "WPFTweaksDisableExplorerAutoDiscovery": {
"Content": "Disable Explorer Automatic Folder Discovery", "Content": "Disable Explorer Automatic Folder Discovery",
"Description": "Windows Explorer automatically tries to guess the type of the folder based on its contents, slowing down the browsing experience. WARNING! Will disable File Explorer grouping.", "Description": "Windows Explorer automatically tries to guess the type of the folder based on its contents, slowing down the browsing experience. WARNING! Will disable File Explorer grouping.",

View File

@@ -3,7 +3,7 @@ title: "Run Disk Cleanup"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2054} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1948}
"WPFTweaksDiskCleanup": { "WPFTweaksDiskCleanup": {
"Content": "Run Disk Cleanup", "Content": "Run Disk Cleanup",
"Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.", "Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.",

View File

@@ -3,7 +3,7 @@ title: "Enable End Task With Right Click"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1792} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1744}
"WPFTweaksEndTaskOnTaskbar": { "WPFTweaksEndTaskOnTaskbar": {
"Content": "Enable End Task With Right Click", "Content": "Enable End Task With Right Click",
"Description": "Enables option to end task when right clicking a program in the taskbar.", "Description": "Enables option to end task when right clicking a program in the taskbar.",

View File

@@ -9,6 +9,13 @@ description: ""
"Description": "Disables Location Tracking.", "Description": "Disables Location Tracking.",
"category": "Essential Tweaks", "category": "Essential Tweaks",
"panel": "1", "panel": "1",
"service": [
{
"Name": "lfsvc",
"StartupType": "Disable",
"OriginalType": "Manual"
}
],
"registry": [ "registry": [
{ {
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\CapabilityAccessManager\\ConsentStore\\location", "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\CapabilityAccessManager\\ConsentStore\\location",
@@ -24,13 +31,6 @@ description: ""
"Type": "DWord", "Type": "DWord",
"OriginalValue": "1" "OriginalValue": "1"
}, },
{
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\lfsvc\\Service\\Configuration",
"Name": "Status",
"Value": "0",
"Type": "DWord",
"OriginalValue": "1"
},
{ {
"Path": "HKLM:\\SYSTEM\\Maps", "Path": "HKLM:\\SYSTEM\\Maps",
"Name": "AutoUpdateEnabled", "Name": "AutoUpdateEnabled",

View File

@@ -3,7 +3,7 @@ title: "Disable PowerShell 7 Telemetry"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1808} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1760}
"WPFTweaksPowershell7Tele": { "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.", "Description": "Creates an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell PowerShell 7 to not send Telemetry Data.",

View File

@@ -3,7 +3,7 @@ title: "Create Restore Point"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1765} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1717}
"WPFTweaksRestorePoint": { "WPFTweaksRestorePoint": {
"Content": "Create Restore Point", "Content": "Create Restore Point",
"Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications.", "Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications.",

View File

@@ -3,7 +3,7 @@ title: "Disable Windows Platform Binary Table (WPBT)"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1921} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1816}
"WPFTweaksWPBT": { "WPFTweaksWPBT": {
"Content": "Disable Windows Platform Binary Table (WPBT)", "Content": "Disable Windows Platform Binary Table (WPBT)",
"Description": "If enabled, WPBT allows your computer vendor to execute programs at boot time, such as anti-theft software, software drivers, as well as force install software without user consent. Poses potential security risk.", "Description": "If enabled, WPBT allows your computer vendor to execute programs at boot time, such as anti-theft software, software drivers, as well as force install software without user consent. Poses potential security risk.",

View File

@@ -4,88 +4,39 @@ description: ""
--- ---
```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1} ```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1}
Function Invoke-WPFUltimatePerformance { function Invoke-WPFUltimatePerformance {
<#
.SYNOPSIS
Enables or disables the Ultimate Performance power scheme based on its GUID.
.PARAMETER State
Specifies whether to "Enable" or "Disable" the Ultimate Performance power scheme.
#>
param( param(
[Parameter(Mandatory = $true)] [switch]$Do
[ValidateSet("Enable", "Disable")]
[string]$State
) )
try { if ($Do) {
# GUID of the Ultimate Performance power plan if (-not (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan")) {
$ultimateGUID = "e9a42b02-d5df-448d-aa00-03f14749eb61" if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
powercfg /restoredefaultschemes
switch ($State) { if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
"Enable" { Write-Host "Failed to restore High Performance plan. Default plans do not include high performance. If you are on a laptop, do NOT use High Performance or Ultimate Performance plans." -ForegroundColor Red
# Duplicate the Ultimate Performance power plan using its GUID return
$duplicateOutput = powercfg /duplicatescheme $ultimateGUID
$guid = $null
$nameFromFile = "ChrisTitus - Ultimate Power Plan"
$description = "Ultimate Power Plan, added via WinUtils"
# Extract the new GUID from the duplicateOutput
foreach ($line in $duplicateOutput) {
if ($line -match "\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b") {
$guid = $matches[0] # $matches[0] will contain the first match, which is the GUID
Write-Output "GUID: $guid has been extracted and stored in the variable."
break
}
}
if (-not $guid) {
Write-Output "No GUID found in the duplicateOutput. Check the output format."
exit 1
}
# Change the name of the power plan and set its description
$changeNameOutput = powercfg /changename $guid "$nameFromFile" "$description"
Write-Output "The power plan name and description have been changed. Output:"
Write-Output $changeNameOutput
# Set the duplicated Ultimate Performance plan as active
$setActiveOutput = powercfg /setactive $guid
Write-Output "The power plan has been set as active. Output:"
Write-Output $setActiveOutput
Write-Host "> Ultimate Performance plan installed and set as active."
}
"Disable" {
# Check if the Ultimate Performance plan is installed by GUID
$installedPlan = powercfg -list | Select-String -Pattern "ChrisTitus - Ultimate Power Plan"
if ($installedPlan) {
# Extract the GUID of the installed Ultimate Performance plan
$ultimatePlanGUID = $installedPlan.Line.Split()[3]
# Set a different power plan as active before deleting the Ultimate Performance plan
$balancedPlanGUID = "381b4222-f694-41f0-9685-ff5bb260df2e"
powercfg -setactive $balancedPlanGUID
# Delete the Ultimate Performance plan by GUID
powercfg -delete $ultimatePlanGUID
Write-Host "Ultimate Performance plan has been uninstalled."
Write-Host "> Balanced plan is now active."
} else {
Write-Host "Ultimate Performance plan is not installed."
} }
} }
default { $guid = ((powercfg /duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c) -split '\s+')[3]
Write-Host "Invalid state. Please use 'Enable' or 'Disable'." powercfg /changename $guid "ChrisTitus - Ultimate Power Plan"
} powercfg /setacvalueindex $guid SUB_PROCESSOR IDLEDISABLE 1
powercfg /setacvalueindex $guid 54533251-82be-4824-96c1-47b60b740d00 4d2b0152-7d5c-498b-88e2-34345392a2c5 1
powercfg /setacvalueindex $guid SUB_PROCESSOR PROCTHROTTLEMIN 100
powercfg /setactive $guid
Write-Host "ChrisTitus - Ultimate Power Plan plan installed and activated." -ForegroundColor Green
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is already installed." -ForegroundColor Red
return
}
} else {
if (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan") {
powercfg /setactive SCHEME_BALANCED
powercfg /delete ((powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan").ToString().Split()[3])
Write-Host "ChrisTitus - Ultimate Power Plan plan was removed." -ForegroundColor Red
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is not installed." -ForegroundColor Yellow
} }
} catch {
Write-Error "Error occurred: $_"
} }
} }
``` ```

View File

@@ -4,88 +4,39 @@ description: ""
--- ---
```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1} ```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1}
Function Invoke-WPFUltimatePerformance { function Invoke-WPFUltimatePerformance {
<#
.SYNOPSIS
Enables or disables the Ultimate Performance power scheme based on its GUID.
.PARAMETER State
Specifies whether to "Enable" or "Disable" the Ultimate Performance power scheme.
#>
param( param(
[Parameter(Mandatory = $true)] [switch]$Do
[ValidateSet("Enable", "Disable")]
[string]$State
) )
try { if ($Do) {
# GUID of the Ultimate Performance power plan if (-not (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan")) {
$ultimateGUID = "e9a42b02-d5df-448d-aa00-03f14749eb61" if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
powercfg /restoredefaultschemes
switch ($State) { if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
"Enable" { Write-Host "Failed to restore High Performance plan. Default plans do not include high performance. If you are on a laptop, do NOT use High Performance or Ultimate Performance plans." -ForegroundColor Red
# Duplicate the Ultimate Performance power plan using its GUID return
$duplicateOutput = powercfg /duplicatescheme $ultimateGUID
$guid = $null
$nameFromFile = "ChrisTitus - Ultimate Power Plan"
$description = "Ultimate Power Plan, added via WinUtils"
# Extract the new GUID from the duplicateOutput
foreach ($line in $duplicateOutput) {
if ($line -match "\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b") {
$guid = $matches[0] # $matches[0] will contain the first match, which is the GUID
Write-Output "GUID: $guid has been extracted and stored in the variable."
break
}
}
if (-not $guid) {
Write-Output "No GUID found in the duplicateOutput. Check the output format."
exit 1
}
# Change the name of the power plan and set its description
$changeNameOutput = powercfg /changename $guid "$nameFromFile" "$description"
Write-Output "The power plan name and description have been changed. Output:"
Write-Output $changeNameOutput
# Set the duplicated Ultimate Performance plan as active
$setActiveOutput = powercfg /setactive $guid
Write-Output "The power plan has been set as active. Output:"
Write-Output $setActiveOutput
Write-Host "> Ultimate Performance plan installed and set as active."
}
"Disable" {
# Check if the Ultimate Performance plan is installed by GUID
$installedPlan = powercfg -list | Select-String -Pattern "ChrisTitus - Ultimate Power Plan"
if ($installedPlan) {
# Extract the GUID of the installed Ultimate Performance plan
$ultimatePlanGUID = $installedPlan.Line.Split()[3]
# Set a different power plan as active before deleting the Ultimate Performance plan
$balancedPlanGUID = "381b4222-f694-41f0-9685-ff5bb260df2e"
powercfg -setactive $balancedPlanGUID
# Delete the Ultimate Performance plan by GUID
powercfg -delete $ultimatePlanGUID
Write-Host "Ultimate Performance plan has been uninstalled."
Write-Host "> Balanced plan is now active."
} else {
Write-Host "Ultimate Performance plan is not installed."
} }
} }
default { $guid = ((powercfg /duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c) -split '\s+')[3]
Write-Host "Invalid state. Please use 'Enable' or 'Disable'." powercfg /changename $guid "ChrisTitus - Ultimate Power Plan"
} powercfg /setacvalueindex $guid SUB_PROCESSOR IDLEDISABLE 1
powercfg /setacvalueindex $guid 54533251-82be-4824-96c1-47b60b740d00 4d2b0152-7d5c-498b-88e2-34345392a2c5 1
powercfg /setacvalueindex $guid SUB_PROCESSOR PROCTHROTTLEMIN 100
powercfg /setactive $guid
Write-Host "ChrisTitus - Ultimate Power Plan plan installed and activated." -ForegroundColor Green
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is already installed." -ForegroundColor Red
return
}
} else {
if (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan") {
powercfg /setactive SCHEME_BALANCED
powercfg /delete ((powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan").ToString().Split()[3])
Write-Host "ChrisTitus - Ultimate Power Plan plan was removed." -ForegroundColor Red
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is not installed." -ForegroundColor Yellow
} }
} catch {
Write-Error "Error occurred: $_"
} }
} }
``` ```

View File

@@ -3,7 +3,7 @@ title: "Adobe Network Block"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2002} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1896}
"WPFTweaksBlockAdobeNet": { "WPFTweaksBlockAdobeNet": {
"Content": "Adobe Network Block", "Content": "Adobe Network Block",
"Description": "Reduces user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs", "Description": "Reduces user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs",

View File

@@ -1,82 +1,34 @@
--- ---
title: "Remove all Microsoft Store apps" title: "Remove Unwanted Pre-Installed Apps"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1676} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1676}
"WPFTweaksDeBloat": { "WPFTweaksDeBloat": {
"Content": "Remove all Microsoft Store apps", "Content": "Remove Unwanted Pre-Installed Apps",
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.", "Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.",
"category": "z__Advanced Tweaks - CAUTION", "category": "z__Advanced Tweaks - CAUTION",
"panel": "1", "panel": "1",
"appx": [ "appx": [
"Microsoft.Microsoft3DViewer", "Microsoft.WindowsFeedbackHub",
"Microsoft.AppConnector",
"Microsoft.BingFinance",
"Microsoft.BingNews", "Microsoft.BingNews",
"Microsoft.BingSports", "Microsoft.BingSearch",
"Microsoft.BingTranslator",
"Microsoft.BingWeather", "Microsoft.BingWeather",
"Microsoft.BingFoodAndDrink",
"Microsoft.BingHealthAndFitness",
"Microsoft.BingTravel",
"Clipchamp.Clipchamp", "Clipchamp.Clipchamp",
"Microsoft.Todos", "Microsoft.Todos",
"MicrosoftCorporationII.QuickAssist", "Microsoft.PowerAutomateDesktop",
"Microsoft.MicrosoftStickyNotes",
"Microsoft.GetHelp",
"Microsoft.GetStarted",
"Microsoft.Messaging",
"Microsoft.MicrosoftSolitaireCollection", "Microsoft.MicrosoftSolitaireCollection",
"Microsoft.NetworkSpeedTest",
"Microsoft.News",
"Microsoft.Office.Lens",
"Microsoft.Office.Sway",
"Microsoft.Office.OneNote",
"Microsoft.OneConnect",
"Microsoft.People",
"Microsoft.Print3D",
"Microsoft.SkypeApp",
"Microsoft.Wallet",
"Microsoft.Whiteboard",
"Microsoft.WindowsAlarms",
"Microsoft.WindowsCommunicationsApps",
"Microsoft.WindowsFeedbackHub",
"Microsoft.WindowsMaps",
"Microsoft.WindowsSoundRecorder", "Microsoft.WindowsSoundRecorder",
"Microsoft.ConnectivityStore", "Microsoft.MicrosoftStickyNotes",
"Microsoft.ScreenSketch", "Microsoft.Windows.DevHome",
"Microsoft.MixedReality.Portal", "Microsoft.Paint",
"Microsoft.OutlookForWindows",
"Microsoft.WindowsAlarms",
"Microsoft.StartExperiencesApp",
"Microsoft.GetHelp",
"Microsoft.ZuneMusic", "Microsoft.ZuneMusic",
"Microsoft.ZuneVideo", "MicrosoftCorporationII.QuickAssist",
"Microsoft.MicrosoftOfficeHub", "MSTeams"
"MsTeams",
"*EclipseManager*",
"*ActiproSoftwareLLC*",
"*AdobeSystemsIncorporated.AdobePhotoshopExpress*",
"*Duolingo-LearnLanguagesforFree*",
"*PandoraMediaInc*",
"*CandyCrush*",
"*BubbleWitch3Saga*",
"*Wunderlist*",
"*Flipboard*",
"*Twitter*",
"*Facebook*",
"*Royal Revolt*",
"*Sway*",
"*Speed Test*",
"*Dolby*",
"*Viber*",
"*ACGMediaPlayer*",
"*Netflix*",
"*OneCalendar*",
"*LinkedInForWindows*",
"*HiddenCityMysteryofShadows*",
"*Hulu*",
"*HiddenCity*",
"*AdobePhotoshopExpress*",
"*HotspotShieldFreeVPN*",
"*Microsoft.Advertising.Xaml*"
], ],
"InvokeScript": [ "InvokeScript": [
" "

View File

@@ -3,7 +3,7 @@ title: "Disable Background Apps"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2140} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2034}
"WPFTweaksDisableBGapps": { "WPFTweaksDisableBGapps": {
"Content": "Disable Background Apps", "Content": "Disable Background Apps",
"Description": "Disables all Microsoft Store apps from running in the background, which has to be done individually since Windows 11.", "Description": "Disables all Microsoft Store apps from running in the background, which has to be done individually since Windows 11.",

View File

@@ -3,7 +3,7 @@ title: "Disable Fullscreen Optimizations"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2156} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2050}
"WPFTweaksDisableFSO": { "WPFTweaksDisableFSO": {
"Content": "Disable Fullscreen Optimizations", "Content": "Disable Fullscreen Optimizations",
"Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen.", "Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen.",

View File

@@ -3,7 +3,7 @@ title: "Disable IPv6"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2118} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2012}
"WPFTweaksDisableIPv6": { "WPFTweaksDisableIPv6": {
"Content": "Disable IPv6", "Content": "Disable IPv6",
"Description": "Disables IPv6.", "Description": "Disables IPv6.",

View File

@@ -3,7 +3,7 @@ title: "Disable Notification Tray/Calendar"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1979} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1873}
"WPFTweaksDisableNotifications": { "WPFTweaksDisableNotifications": {
"Content": "Disable Notification Tray/Calendar", "Content": "Disable Notification Tray/Calendar",
"Description": "Disables all Notifications INCLUDING Calendar.", "Description": "Disables all Notifications INCLUDING Calendar.",

View File

@@ -3,7 +3,7 @@ title: "Prefer IPv4 over IPv6"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2080} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1974}
"WPFTweaksIPv46": { "WPFTweaksIPv46": {
"Content": "Prefer IPv4 over IPv6", "Content": "Prefer IPv4 over IPv6",
"Description": "Setting the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.", "Description": "Setting the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",

View File

@@ -3,7 +3,7 @@ title: "Block Razer Software Installs"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1937} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1832}
"WPFTweaksRazerBlock": { "WPFTweaksRazerBlock": {
"Content": "Block Razer Software Installs", "Content": "Block Razer Software Installs",
"Description": "Blocks ALL Razer Software installations. The hardware works fine without any software.", "Description": "Blocks ALL Razer Software installations. The hardware works fine without any software.",
@@ -31,8 +31,7 @@ description: ""
if (Test-Path $RazerPath) { if (Test-Path $RazerPath) {
Remove-Item $RazerPath\\* -Recurse -Force Remove-Item $RazerPath\\* -Recurse -Force
} } else {
else {
New-Item -Path $RazerPath -ItemType Directory New-Item -Path $RazerPath -ItemType Directory
} }

View File

@@ -1,95 +1,32 @@
--- ---
title: "Disable Microsoft Copilot" title: "Remove Microsoft Copilot"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1837} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1789}
"WPFTweaksRemoveCopilot": { "WPFTweaksRemoveCopilot": {
"Content": "Disable Microsoft Copilot", "Content": "Remove Microsoft Copilot",
"Description": "Disables MS Copilot AI built into Windows since 23H2.", "Description": "Removes Copilot AppXPackages and related ai packages",
"category": "z__Advanced Tweaks - CAUTION", "category": "z__Advanced Tweaks - CAUTION",
"panel": "1", "panel": "1",
"registry": [
{
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsCopilot",
"Name": "TurnOffWindowsCopilot",
"Value": "1",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\Software\\Policies\\Microsoft\\Windows\\WindowsCopilot",
"Name": "TurnOffWindowsCopilot",
"Value": "1",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
"Name": "ShowCopilotButton",
"Value": "0",
"Type": "DWord",
"OriginalValue": "1"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot",
"Name": "IsCopilotAvailable",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot",
"Name": "CopilotDisabledReason",
"Value": "IsEnabledForGeographicRegionFailed",
"Type": "String",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsCopilot",
"Name": "AllowCopilotRuntime",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Blocked",
"Name": "{CB3B0003-8088-4EDE-8769-8B354AB2FF8C}",
"Value": "",
"Type": "String",
"OriginalValue": "<RemoveEntry>"
},
{
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Shell\\Copilot\\BingChat",
"Name": "IsUserEligible",
"Value": "0",
"Type": "DWord",
"OriginalValue": "<RemoveEntry>"
}
],
"InvokeScript": [ "InvokeScript": [
" "
Write-Host \"Remove Copilot\"
Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers
Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers
$Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName $Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName
$Sid = (Get-LocalUser $Env:UserName).Sid.Value $Sid = (Get-LocalUser $Env:UserName).Sid.Value
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force
Remove-AppxPackage $Appx Remove-AppxPackage $Appx
Write-Host \"Copilot Removed\"
" "
], ],
"UndoScript": [ "UndoScript": [
" "
Write-Host \"Install Copilot\" Write-Host \"Installing Copilot...\"
winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent
" "
], ],
``` ```
## 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://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).

View File

@@ -3,7 +3,7 @@ title: "Set Classic Right-Click Menu"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2032} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1926}
"WPFTweaksRightClickMenu": { "WPFTweaksRightClickMenu": {
"Content": "Set Classic Right-Click Menu", "Content": "Set Classic Right-Click Menu",
"Description": "Restores the classic context menu when right-clicking in File Explorer, replacing the simplified Windows 11 version.", "Description": "Restores the classic context menu when right-clicking in File Explorer, replacing the simplified Windows 11 version.",

View File

@@ -3,7 +3,7 @@ title: "Disable Storage Sense"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=1821} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1773}
"WPFTweaksStorage": { "WPFTweaksStorage": {
"Content": "Disable Storage Sense", "Content": "Disable Storage Sense",
"Description": "Storage Sense deletes temp files automatically.", "Description": "Storage Sense deletes temp files automatically.",

View File

@@ -3,7 +3,7 @@ title: "Disable Teredo"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2096} ```json {filename="config/tweaks.json",linenos=inline,linenostart=1990}
"WPFTweaksTeredo": { "WPFTweaksTeredo": {
"Content": "Disable Teredo", "Content": "Disable Teredo",
"Description": "Teredo network tunneling is an 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.",

View File

@@ -3,7 +3,7 @@ title: "DNS"
description: "" description: ""
--- ---
```json {filename="config/tweaks.json",linenos=inline,linenostart=2639} ```json {filename="config/tweaks.json",linenos=inline,linenostart=2533}
"WPFchangedns": { "WPFchangedns": {
"Content": "DNS", "Content": "DNS",
"category": "z__Advanced Tweaks - CAUTION", "category": "z__Advanced Tweaks - CAUTION",

View File

@@ -1,6 +1,12 @@
--- ---
title: User Guide title: User Guide
weight: 2 weight: 2
breadcrumbs: false
cascade:
type: docs
params:
reversePagination: false
breadcrumbs: false
--- ---
Welcome to the official User Guide for **Winutil**, your all-in-one Windows toolkit. Welcome to the official User Guide for **Winutil**, your all-in-one Windows toolkit.
@@ -31,13 +37,15 @@ Winutil is designed for:
## Getting Started ## Getting Started
New to Winutil? Start here: New to Winutil? Follow the guides below in order to get up and running quickly:
1. **[Getting Started Guide](getting-started/)** - Installation and first steps 1. **[Getting Started](getting-started/)** - Learn how to launch Winutil and understand the basics.
2. **[Applications Guide](application/)** - Learn to install, upgrade, and uninstall software 2. **[Applications](application/)** - Install, update, and remove apps with ease.
3. **[Tweaks Guide](tweaks/)** - Optimize your system 3. **[Tweaks](tweaks/)** - Apply performance, privacy, and usability improvements.
4. **[Features & Fixes](features/)** - Troubleshoot common issues 4. **[Features](features/)** - Explore built-in tools and common Windows fixes.
5. **[Win11 Creator](win11creator/)** - Build a custom debloated Windows 11 ISO 5. **[Updates](updates/)** - Configure how Windows Update behaves on your system.
6. **[Automation](automation/)** - Automate setups and reuse configurations across PCs.
7. **[Win11 Creator](win11creator/)** - Build a custom debloated Windows 11 ISO.
## Main Features ## Main Features
@@ -87,19 +95,7 @@ Automate Winutil configurations for:
Build a custom Windows 11 ISO with bloatware removed, telemetry disabled, and hardware requirement checks bypassed. You can then export it as an ISO file or write it directly to a USB drive. Build a custom Windows 11 ISO with bloatware removed, telemetry disabled, and hardware requirement checks bypassed. You can then export it as an ISO file or write it directly to a USB drive.
**[Read the Win11 Creator Guide →](win11Creator/)** **[Read the Win11 Creator Guide →](win11creator/)**
## Quick Links
| I want to... | Go to... |
|--------------|----------|
| Install Winutil for the first time | [Getting Started](getting-started/) |
| Install, upgrade, or uninstall apps | [Applications Guide](application/) |
| Speed up my computer | [Tweaks Guide](tweaks/) |
| Fix Windows Update problems | [Features - Fixes](features/) |
| Automate setup for multiple PCs | [Automation](automation/) |
| Understand what tweaks do | [Tweaks Guide](tweaks/) |
| Build a custom Windows 11 ISO | [Win11 Creator](win11Creator/) |
## Safety and Best Practices ## Safety and Best Practices
@@ -149,18 +145,6 @@ Want to help improve Winutil?
**[Read Contributing Guide →](../contributing/)** **[Read Contributing Guide →](../contributing/)**
## What's in This Guide?
This User Guide covers everything you need to know:
1. **[Getting Started](getting-started/)** - Installation, first run, basic usage
2. **[Applications](application/)** - Installing, upgrading, and uninstalling software
3. **[Tweaks](tweaks/)** - System optimizations and customizations
4. **[Features & Fixes](features/)** - Troubleshooting tools and utilities
5. **[Win11 Creator](win11Creator/)** - Build a custom debloated Windows 11 ISO
6. **[Updates](updates/)** - Managing Windows Update behavior
7. **[Automation](automation/)** - Scripting and batch deployments
## Video Tutorial ## Video Tutorial
Watch the complete Winutil overview: Watch the complete Winutil overview:
@@ -168,3 +152,11 @@ Watch the complete Winutil overview:
{{< youtube id=6UQZ5oQg8XA loading=lazy >}} {{< youtube id=6UQZ5oQg8XA loading=lazy >}}
Ready to get started? Head to the **[Getting Started Guide](getting-started/)**. Ready to get started? Head to the **[Getting Started Guide](getting-started/)**.
## Next
Dive right into the following section to get started:
{{< cards >}}
{{< card link="getting-started" title="Getting Started" icon="document-text" subtitle="Learn how to use winutil." >}}
{{< /cards >}}

View File

@@ -1,6 +1,8 @@
--- ---
title: Applications title: Applications
weight: 3 weight: 3
prev: /userguide/getting-started/
next: /userguide/tweaks/
--- ---
{{< tabs >}} {{< tabs >}}

View File

@@ -1,6 +1,8 @@
--- ---
title: Automation title: Automation
weight: 7 weight: 7
prev: /userguide/updates/
next: /userguide/win11Creator/
--- ---
Use Automation to run Winutil from an exported configuration file. Use Automation to run Winutil from an exported configuration file.

View File

@@ -1,6 +1,8 @@
--- ---
title: Features title: Features
weight: 5 weight: 5
prev: /userguide/tweaks/
next: /userguide/updates/
--- ---
Use the **Features** and **Fixes** sections to install optional Windows components and run common repair tasks. Use the **Features** and **Fixes** sections to install optional Windows components and run common repair tasks.

View File

@@ -1,6 +1,8 @@
--- ---
title: Getting Started title: Getting Started
weight: 2 weight: 2
prev: /userguide/
next: /userguide/application/
--- ---
## Welcome to Winutil! ## Welcome to Winutil!

View File

@@ -1,6 +1,8 @@
--- ---
title: Tweaks title: Tweaks
weight: 4 weight: 4
prev: /userguide/application/
next: /userguide/features/
--- ---
{{< image src="images/Tweaks-Tab" alt="Image of Tweaks Tab" >}} {{< image src="images/Tweaks-Tab" alt="Image of Tweaks Tab" >}}

View File

@@ -1,6 +1,8 @@
--- ---
title: Updates title: Updates
weight: 6 weight: 6
prev: /userguide/features/
next: /userguide/automation/
--- ---
Winutil provides three update modes so you can choose how aggressively Windows Update is managed on your system: Winutil provides three update modes so you can choose how aggressively Windows Update is managed on your system:

View File

@@ -1,6 +1,7 @@
--- ---
title: Win11 Creator title: Win11 Creator
weight: 8 weight: 8
prev: /userguide/automation/
--- ---
## Using Winutil's Win11 Creator ## Using Winutil's Win11 Creator

View File

@@ -12,10 +12,8 @@ function Install-WinUtilWinget {
} }
Write-Host "WinGet is not installed. Installing now..." -ForegroundColor Red Write-Host "WinGet is not installed. Installing now..." -ForegroundColor Red
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
Install-PackageProvider -Name NuGet -Force Install-PackageProvider -Name NuGet -Force
Install-Module Microsoft.WinGet.Client -Force Install-Module -Name Microsoft.WinGet.Client -Force
Import-Module Microsoft.WinGet.Client Repair-WinGetPackageManager -AllUsers
Repair-WinGetPackageManager
} }

View File

@@ -540,6 +540,9 @@ function Invoke-WinUtilISOExport {
if (-not $oscdimg) { if (-not $oscdimg) {
Write-Win11ISOLog "oscdimg.exe not found. Attempting to install via winget..." Write-Win11ISOLog "oscdimg.exe not found. Attempting to install via winget..."
try { try {
# First ensure winget is installed and operational
Install-WinUtilWinget
$winget = Get-Command winget -ErrorAction Stop $winget = Get-Command winget -ErrorAction Stop
$result = & $winget install -e --id Microsoft.OSCDIMG --accept-package-agreements --accept-source-agreements 2>&1 $result = & $winget install -e --id Microsoft.OSCDIMG --accept-package-agreements --accept-source-agreements 2>&1
Write-Win11ISOLog "winget output: $result" Write-Win11ISOLog "winget output: $result"

View File

@@ -50,7 +50,6 @@ function Invoke-WinUtilISOScript {
.NOTES .NOTES
Author : Chris Titus @christitustech Author : Chris Titus @christitustech
GitHub : https://github.com/ChrisTitusTech GitHub : https://github.com/ChrisTitusTech
Version : 26.03.02
#> #>
param ( param (
[Parameter(Mandatory)][string]$ScratchDir, [Parameter(Mandatory)][string]$ScratchDir,
@@ -116,48 +115,25 @@ function Invoke-WinUtilISOScript {
ForEach-Object { if ($_ -match 'PackageName : (.*)') { $matches[1] } } ForEach-Object { if ($_ -match 'PackageName : (.*)') { $matches[1] } }
$packagePrefixes = @( $packagePrefixes = @(
'AppUp.IntelManagementandSecurityStatus',
'Clipchamp.Clipchamp', 'Clipchamp.Clipchamp',
'DolbyLaboratories.DolbyAccess',
'DolbyLaboratories.DolbyDigitalPlusDecoderOEM',
'Microsoft.BingNews', 'Microsoft.BingNews',
'Microsoft.BingSearch', 'Microsoft.BingSearch',
'Microsoft.BingWeather', 'Microsoft.BingWeather',
'Microsoft.Copilot',
'Microsoft.Windows.CrossDevice',
'Microsoft.GetHelp', 'Microsoft.GetHelp',
'Microsoft.Getstarted',
'Microsoft.Microsoft3DViewer',
'Microsoft.MicrosoftOfficeHub', 'Microsoft.MicrosoftOfficeHub',
'Microsoft.MicrosoftSolitaireCollection', 'Microsoft.MicrosoftSolitaireCollection',
'Microsoft.MicrosoftStickyNotes', 'Microsoft.MicrosoftStickyNotes',
'Microsoft.MixedReality.Portal',
'Microsoft.MSPaint',
'Microsoft.Office.OneNote',
'Microsoft.OfficePushNotificationUtility',
'Microsoft.OutlookForWindows', 'Microsoft.OutlookForWindows',
'Microsoft.Paint', 'Microsoft.Paint',
'Microsoft.People',
'Microsoft.PowerAutomateDesktop', 'Microsoft.PowerAutomateDesktop',
'Microsoft.SkypeApp',
'Microsoft.StartExperiencesApp', 'Microsoft.StartExperiencesApp',
'Microsoft.Todos', 'Microsoft.Todos',
'Microsoft.Wallet',
'Microsoft.Windows.DevHome', 'Microsoft.Windows.DevHome',
'Microsoft.Windows.Copilot',
'Microsoft.Windows.Teams',
'Microsoft.WindowsAlarms',
'Microsoft.WindowsCamera',
'microsoft.windowscommunicationsapps',
'Microsoft.WindowsFeedbackHub', 'Microsoft.WindowsFeedbackHub',
'Microsoft.WindowsMaps',
'Microsoft.WindowsSoundRecorder', 'Microsoft.WindowsSoundRecorder',
'Microsoft.ZuneMusic', 'Microsoft.ZuneMusic',
'Microsoft.ZuneVideo',
'MicrosoftCorporationII.MicrosoftFamily',
'MicrosoftCorporationII.QuickAssist', 'MicrosoftCorporationII.QuickAssist',
'MSTeams', 'MSTeams'
'MicrosoftTeams'
) )
$packages | Where-Object { $pkg = $_; $packagePrefixes | Where-Object { $pkg -like "*$_*" } } | $packages | Where-Object { $pkg = $_; $packagePrefixes | Where-Object { $pkg -like "*$_*" } } |
@@ -199,9 +175,6 @@ function Invoke-WinUtilISOScript {
& icacls "$ScratchDir\Windows\System32\OneDriveSetup.exe" /grant "$($adminGroup.Value):(F)" /T /C | Out-Null & icacls "$ScratchDir\Windows\System32\OneDriveSetup.exe" /grant "$($adminGroup.Value):(F)" /T /C | Out-Null
Remove-Item -Path "$ScratchDir\Windows\System32\OneDriveSetup.exe" -Force -ErrorAction SilentlyContinue Remove-Item -Path "$ScratchDir\Windows\System32\OneDriveSetup.exe" -Force -ErrorAction SilentlyContinue
# Remove OneDrive from startup registry
Remove-ISOScriptReg 'HKLM\zNTUSER\Software\Microsoft\Windows\CurrentVersion\Run\OneDrive'
# ── 4. Registry tweaks ──────────────────────────────────────────────────── # ── 4. Registry tweaks ────────────────────────────────────────────────────
& $Log "Loading offline registry hives..." & $Log "Loading offline registry hives..."
reg load HKLM\zCOMPONENTS "$ScratchDir\Windows\System32\config\COMPONENTS" reg load HKLM\zCOMPONENTS "$ScratchDir\Windows\System32\config\COMPONENTS"

View File

@@ -56,14 +56,12 @@ function Invoke-WPFButton {
"WPFClearInstallSelection" {Invoke-WPFPresets -imported $true -checkboxfilterpattern "WPFInstall*"} "WPFClearInstallSelection" {Invoke-WPFPresets -imported $true -checkboxfilterpattern "WPFInstall*"}
"WPFtweaksbutton" {Invoke-WPFtweaksbutton} "WPFtweaksbutton" {Invoke-WPFtweaksbutton}
"WPFOOSUbutton" {Invoke-WPFOOSU} "WPFOOSUbutton" {Invoke-WPFOOSU}
"WPFAddUltPerf" {Invoke-WPFUltimatePerformance -State "Enable"} "WPFAddUltPerf" {Invoke-WPFUltimatePerformance -Do}
"WPFRemoveUltPerf" {Invoke-WPFUltimatePerformance -State "Disable"} "WPFRemoveUltPerf" {Invoke-WPFUltimatePerformance}
"WPFundoall" {Invoke-WPFundoall} "WPFundoall" {Invoke-WPFundoall}
"WPFUpdatesdefault" {Invoke-WPFUpdatesdefault} "WPFUpdatesdefault" {Invoke-WPFUpdatesdefault}
"WPFRunAdobeCCCleanerTool" {Invoke-WPFRunAdobeCCCleanerTool}
"WPFUpdatesdisable" {Invoke-WPFUpdatesdisable} "WPFUpdatesdisable" {Invoke-WPFUpdatesdisable}
"WPFUpdatessecurity" {Invoke-WPFUpdatessecurity} "WPFUpdatessecurity" {Invoke-WPFUpdatessecurity}
"WPFWinUtilShortcut" {Invoke-WPFShortcut -ShortcutToAdd "WinUtil" -RunAsAdmin $true}
"WPFGetInstalled" {Invoke-WPFGetInstalled -CheckBox "winget"} "WPFGetInstalled" {Invoke-WPFGetInstalled -CheckBox "winget"}
"WPFGetInstalledTweaks" {Invoke-WPFGetInstalled -CheckBox "tweaks"} "WPFGetInstalledTweaks" {Invoke-WPFGetInstalled -CheckBox "tweaks"}
"WPFCloseButton" {$sync.Form.Close(); Write-Host "Bye bye!"} "WPFCloseButton" {$sync.Form.Close(); Write-Host "Bye bye!"}

View File

@@ -1,84 +1,35 @@
Function Invoke-WPFUltimatePerformance { function Invoke-WPFUltimatePerformance {
<#
.SYNOPSIS
Enables or disables the Ultimate Performance power scheme based on its GUID.
.PARAMETER State
Specifies whether to "Enable" or "Disable" the Ultimate Performance power scheme.
#>
param( param(
[Parameter(Mandatory = $true)] [switch]$Do
[ValidateSet("Enable", "Disable")]
[string]$State
) )
try { if ($Do) {
# GUID of the Ultimate Performance power plan if (-not (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan")) {
$ultimateGUID = "e9a42b02-d5df-448d-aa00-03f14749eb61" if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
powercfg /restoredefaultschemes
switch ($State) { if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
"Enable" { Write-Host "Failed to restore High Performance plan. Default plans do not include high performance. If you are on a laptop, do NOT use High Performance or Ultimate Performance plans." -ForegroundColor Red
# Duplicate the Ultimate Performance power plan using its GUID return
$duplicateOutput = powercfg /duplicatescheme $ultimateGUID
$guid = $null
$nameFromFile = "ChrisTitus - Ultimate Power Plan"
$description = "Ultimate Power Plan, added via WinUtils"
# Extract the new GUID from the duplicateOutput
foreach ($line in $duplicateOutput) {
if ($line -match "\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b") {
$guid = $matches[0] # $matches[0] will contain the first match, which is the GUID
Write-Output "GUID: $guid has been extracted and stored in the variable."
break
}
}
if (-not $guid) {
Write-Output "No GUID found in the duplicateOutput. Check the output format."
exit 1
}
# Change the name of the power plan and set its description
$changeNameOutput = powercfg /changename $guid "$nameFromFile" "$description"
Write-Output "The power plan name and description have been changed. Output:"
Write-Output $changeNameOutput
# Set the duplicated Ultimate Performance plan as active
$setActiveOutput = powercfg /setactive $guid
Write-Output "The power plan has been set as active. Output:"
Write-Output $setActiveOutput
Write-Host "> Ultimate Performance plan installed and set as active."
}
"Disable" {
# Check if the Ultimate Performance plan is installed by GUID
$installedPlan = powercfg -list | Select-String -Pattern "ChrisTitus - Ultimate Power Plan"
if ($installedPlan) {
# Extract the GUID of the installed Ultimate Performance plan
$ultimatePlanGUID = $installedPlan.Line.Split()[3]
# Set a different power plan as active before deleting the Ultimate Performance plan
$balancedPlanGUID = "381b4222-f694-41f0-9685-ff5bb260df2e"
powercfg -setactive $balancedPlanGUID
# Delete the Ultimate Performance plan by GUID
powercfg -delete $ultimatePlanGUID
Write-Host "Ultimate Performance plan has been uninstalled."
Write-Host "> Balanced plan is now active."
} else {
Write-Host "Ultimate Performance plan is not installed."
} }
} }
default { $guid = ((powercfg /duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c) -split '\s+')[3]
Write-Host "Invalid state. Please use 'Enable' or 'Disable'." powercfg /changename $guid "ChrisTitus - Ultimate Power Plan"
} powercfg /setacvalueindex $guid SUB_PROCESSOR IDLEDISABLE 1
powercfg /setacvalueindex $guid 54533251-82be-4824-96c1-47b60b740d00 4d2b0152-7d5c-498b-88e2-34345392a2c5 1
powercfg /setacvalueindex $guid SUB_PROCESSOR PROCTHROTTLEMIN 100
powercfg /setactive $guid
Write-Host "ChrisTitus - Ultimate Power Plan plan installed and activated." -ForegroundColor Green
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is already installed." -ForegroundColor Red
return
}
} else {
if (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan") {
powercfg /setactive SCHEME_BALANCED
powercfg /delete ((powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan").ToString().Split()[3])
Write-Host "ChrisTitus - Ultimate Power Plan plan was removed." -ForegroundColor Red
} else {
Write-Host "ChrisTitus - Ultimate Power Plan plan is not installed." -ForegroundColor Yellow
} }
} catch {
Write-Error "Error occurred: $_"
} }
} }

View File

@@ -423,16 +423,17 @@ $scripts = @(
) -Recurse -Force -ErrorAction 'SilentlyContinue'; ) -Recurse -Force -ErrorAction 'SilentlyContinue';
}; };
{ {
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /f; reg.exe delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v OneDriveSetup /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v AUOptions /f; reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v UseWUServer /f; reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v AUOptions /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v DisableWindowsUpdateAccess /f; reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v UseWUServer /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUServer /f; reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v DisableWindowsUpdateAccess /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUStatusServer /f; reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUServer /f;
reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUStatusServer /f;
reg.exe delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" /v DODownloadMode /f; reg.exe delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" /v DODownloadMode /f;
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\BITS" /v Start /t REG_DWORD /d 3 /f; reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\BITS" /v Start /t REG_DWORD /d 3 /f;
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\wuauserv" /v Start /t REG_DWORD /d 3 /f; reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\wuauserv" /v Start /t REG_DWORD /d 3 /f;
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\UsoSvc" /v Start /t REG_DWORD /d 2 /f; reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\UsoSvc" /v Start /t REG_DWORD /d 2 /f;
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc" /v Start /t REG_DWORD /d 3 /f; reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc" /v Start /t REG_DWORD /d 3 /f;
}; };
{ {