From a8af90a112782fcff775c3565972a0e7de205afe Mon Sep 17 00:00:00 2001 From: Chris Titus Date: Tue, 4 Jun 2024 20:27:27 -0700 Subject: [PATCH] Test 2024 04 20 2 (#2030) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Several Additions to 'applications.json' File (#1865) * Add 'ditto' App to 'applications.json' File * Add 'rdcman' App to 'applications.json' File * Add 'mp3tag' App to 'applications.json' File * Add 'fan control' App to 'applications.json' File * Compile Winutil * Add 'betterbird' App to 'applications.json' File (#1876) * Compile Winutil * Added fnm to the install menu (#1879) * Compile Winutil * Update applications.json (#1883) * Compile Winutil * Simple improvement: make WinUtil's Shortcut Function Do Less (Lazier) (#1903) * Add Extra Comments to 'Invoke-WPFShortcut' to make the Logic a Bit Clearer * Make The 'Invoke-WPFShortcut' Function Lazier for Added Efficiency and to not Display False Info whenever the User Cancels the 'Save As' Operation * Compile Winutil * Update applications.jsonremove Whatsapp because it is not being maintained and is named "outdated" when installed * Update applications.json remove Whatsapp because it is not being maintained and is named "outdated" when installed * Compile Winutil * Add option to remove Microsoft Copilot AI * Add option to remove MS Copilot * Update tweaks.json * fix bugs - remove appx caused a lockup - also it looks like copilot will be the dependency for some built-in windows searches Due to this I am changing it from a removal to a disable. * Compile Winutil * remove authy authy reached EOLhttps://help.twilio.com/articles/22771146070299-User-guide-End-of-Life-EOL-for-Twilio-Authy-Desktop-app * remove authy authy reached EOL https://help.twilio.com/articles/22771146070299-User-guide-End-of-Life-EOL-for-Twilio-Authy-Desktop-app * Compile Winutil * Update applications.jsonWindhawkThe customization marketplace for Windows programshttps://www.youtube.com/watch?v=ijG0nXnO2gQ * Update applications.json Windhawk The customization marketplace for Windows programs https://www.youtube.com/watch?v=ijG0nXnO2gQ * add MSEdgeRedirect to applications.jsonperhaps a good "tweak" that could be added to Tweaks section down the road. project is foss... could be a good resource for someone with enough skills.in the meantime, does what it says it will, and does it well. * add MSEdgeRedirect to applications.json perhaps a good "tweak" that could be added to Tweaks section down the road. project is foss... could be a good resource for someone with enough skills. in the meantime, does what it says it will, and does it well. * Fix Winget Detection by doing Proper Error Handling using a Try-Catch * Fix Winget Detection by doing Proper Error Handling using a Try-Catch * Remove unnecessary Variable Initialization of 'wingetFullVersion' Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com> * Add Comments to be make The Logic a Lot More Clear to Follow and Understand * Add Another Catch Statement with some 'Write-Warning' for Extra Information * Remove StartAllBack + Adobe Debloater Tweak + Add Netbird * remove StartAllBack * Added Adobe Service Debloater Sets Adobe Services to manual for people that sadly need to work with their apps. * Add Netbird https://netbird.io * Compile Winutil * Update applications.json * Compile Winutil * Added ability to import drivers * Added ability to import drivers Added the ability to import drivers from the active installation to the MicroWin image. * Merge branch 'test-2024-04-20-2' into CW-MicroWin-240420 * Update inputXML.xaml Removed warning because of a fluke * Update Invoke-WPFMicrowin.ps1 Use the driver injection directory if it is specified and if the directory exists * Merge branch 'test-2024-04-20-2' into CW-MicroWin-240420 * Merge branch 'test-2024-04-20-2' into CW-MicroWin-240420 * Compile Winutil * Test 2024 04 20 2 | 7 additions to applications.json * 7 additions to applications.json Adds: NetLimiter - https://www.netlimiter.com OneCommander - https://www.onecommander.com Borderless Gaming - https://github.com/Codeusa/Borderless-Gaming Equalizer APO - https://sourceforge.net/projects/equalizerapo FreeFileSync - https://freefilesync.org Elgato Stream Deck - https://www.elgato.com/uk/en/s/downloads Stardock Curtains - https://www.stardock.com/products/curtains * Added Compact GUI support Link: https://github.com/IridiumIO/CompactGUI Since I wasn't sure what category to put it in, I chose Utilities. * Added ExifCleaner support Link: https://github.com/szTheory/exifcleaner * Removed trial ware additions Removed: Net Limiter One Commander Elgato: Stream Deck Stardock Curtains * Compile Winutil * add GlazeWM to applications.js (#1891) Co-authored-by: Chris Titus * Compile Winutil * Remove old Win7 game tweak * Compile Winutil * Test 1715290913 fix ugly ifs (#1957) * fix nested ifs * Compile Winutil * fix syntax * Compile Winutil * Add Spotify and Choco Fallback * Compile Winutil --------- Co-authored-by: ty802 Co-authored-by: Chris Titus Co-authored-by: ChrisTitusTech * Compile Winutil * Fix incorrect url for jellyfin-media-player (#1912) * Compile Winutil * Update name and description for Element (#1930) - Fixed the name and description for Element to reflect the name of the client, rather than the underlying technology-Matrix. * Compile Winutil * Optimize winget download speed (#1931) * Optimize Winget Download Speed * Add Downloading Message * Compile Winutil * Include OOSU Config in winutil.ps1 (#1932) * Compile Winutil * Only install choco if needed (#1943) * Compile Winutil * Install Choco if needed * Compile Winutil * Added ForceAutoHDR application to applications.json (#1951) * Added ForceAutoHDR application to applications.json Entry added on line 2642 * Update config/applications.json Yep my bad I though games related tools should be under "Games" Co-authored-by: Mr.k --------- Co-authored-by: Mr.k * Compile Winutil * add Godot Engine to applications.json (#1933) Added Godot Engine (https://godotengine.org/). Godot Engine is a free, open-source 2D and 3D game engine with a focus on usability and flexibility. * Compile Winutil * Add GitKraken Client (#1927) Adds development utility client for git repository management * Compile Winutil * Simplified Admin Check and Added Code Comments (#1938) - Simplified the admin check by filtering the "WindowsIdentity" class for owner value and comparing against admin value - Removed the need for an if admin check by moving its commands under the if not admin check. - Added code comments * Compile Winutil * Main window handle (#1941) Condition is comparing $proc.Id with [System.IntPtr]::Zero. The Id property is an integer, representing the process ID, and it's not directly related to window handles. Instead, you should compare the MainWindowHandle property against [System.IntPtr]::Zero * Compile Winutil * Add SMPlayer to `applications.json` (#1948) * Add SMPlayer to `applications.json` * Fix formatting --------- Co-authored-by: Chris Titus * Compile Winutil * Adobe Network Blocking / Adobe Debloater / Tweak Fixes & more (#1954) * Added Applications AFFiNE: Open source Notion alternative with selfhostable option for syncing. Wazuh Agent: Adgent for open-source security monitoring platform * Change layout of toggles Change the layout of the toggles to first show toggles and then the content (text). - testet, works * added snap related toggles - disable snapping entirely (requires relogin of windows user) - disable suggestion to snap other windows next to the snapped window -tested * Layouted Checkboxes, redesigned Toggles & renamed RDCMan - Removed text inside toggle as it can be confusing because it sais "enable" while enabled and "disable" if disabled. The coloring should be enough to know in what state that setting is. - without the text i could make it a little bit smaller while still letting it look good. - Renamed "Remote Desktop Connection Manager (RDCMan)" to "RDCMan" because that name is shorter and also mostly used by the linked site. - layouted checkboxes so they are not more left than the title and look tidy. - tested * Disable Acrobat auto-updates - added script & undoscript to disable automatic downloads & installation of acrobat reader. The user gets a notified if there is an update available. I put some info to that inside the code * edited AFFiNE description * Tweak Adobe Debloater -disable Adobe Desktop Service by getting ownership and renaming it. - added AGMService service - disable AGMService and AGSService entirely * Block Adobe Network, Debloat Adobe & Compile - fixes order of tweaks to always run "WPFTweaksRestorePoint" first. Before it was only the case because if was one of the first letter0s of the alphabet - Fixed some stuff at Debloat Adobe & added Adobe Reader update stopper & "deactivated" Adobe Desktop Service. - Added Blocking of Adobe Servers (as of your suggestion) to it's own Tweak. - ran compile for testing & showing * undo compilation * added Note to AcrobatUpdates Management in Tweak "Debloat Adobe" * Fix Right Click Method to use accurate names * fixed my mistake in README --------- Co-authored-by: Chris Titus * Compile Winutil * Install flow rework (#1961) * Install flow rework Sperated Winget and Chocolatey setps when installing software add skip them when not needed * fix uninstall --------- Co-authored-by: Chris Titus * Compile Winutil * Made disabling Fullscreen optimizations its own tweak (#1934) * Removed "GameDVR_DXGIHonorFSEWindowsCompatible" modification from "Disable GameDVR" tweak * Created advanced tweak "Disable fullscreen optimizations" Disables fullscreen optimizations in all applications. (Which can cause problems with Color Management in Exclusive Fullscreen) * Compile Winutil * fix glaze * Compile Winutil * Fix Typo in the App Entry 'GlazeWM' in 'applications.json' File (#1958) * Reorder Tweaks * Fix ordering of Advanced Tweaks * Compile Winutil * Preset Update * Organize Tweaks * Compile Winutil * Add the pixi package manager * Add the pixi package manager * Compile Winutil * Add Arc Browser to the application list. * Add Arc Browser to the application list. * Compile Winutil * Update applications.json - Added NDI toolsNDI, or Network Device Interface, is developed by Newtek. It enables the encoding, transmission, and reception of high-quality, low latency, video and audio over IP.https://ndi.video/Apologies if I'm not doing this right. I have zero experience using Github. * Update applications.json - Added NDI tools NDI, or Network Device Interface, is developed by Newtek. It enables the encoding, transmission, and reception of high-quality, low latency, video and audio over IP. https://ndi.video/ Apologies if I'm not doing this right. I have zero experience using Github. * Compile Winutil * docs: minor spellchecking * docs: minor spellchecking * Fix scratch textbox bug * Fix scratch textbox bug * Fixing Microwin, no more errors and it creats image now without issues * Compile Winutil * Tweaks page overhaul: * Toggle page overhaul: * Modern toggles + Tweak: Disable Copilot + Tweak: Set hibernation to default (fix issue https://github.com/ChrisTitusTech/winutil/issues/1399) * Merge branch 'test-2024-04-20-2' into TweaksToggles * Compile Winutil * Able to set the Default Terminal to Powershell 7 in Windows Terminal * Run winget in open powershell window if possible and handle update * add return code reference * Seperated Logic for PS7 Profile change * Add tweak * Revert changes to last commit in Christitus Repo * Merge pull request #1 from Marterich/PS7profile Split Logic in different Script, Re-Add files with to reflect Chris's Repo * Compile Winutil * Update tweaks.json * Compile Winutil * Update tweaks.json * Compile Winutil * disables to disable * Compile Winutil * Update applications.json - Files, ditto, spotube, sagethumbs added & file converter choco variable fixed (#1996) Added Files, ditto, spotube and sagethumbs. Fixed File Converted by Adrien Allard with proper Choco variable. "files">"file-conveter" "WPFInstallfileconverter": { "category": "Utilities", "choco": "file-converter", "content": "File-Converter", "description": "File Converter is a very simple tool which allows you to convert and compress one or several file(s) using the context menu in windows explorer.", "link": "https://file-converter.io/", "winget": "AdrienAllard.FileConverter" * Compile Winutil * Winget install return code handling & Window management (#1992) * Run winget in open powershell window if possible and handle update * add return code reference * Compile Winutil * Fix typo (#1965) Co-authored-by: Chris Titus * Change voicemeeter URL to their newer site (#1967) * Compile Winutil * Change voicemeeter URL to newest site * Compile Winutil --------- Co-authored-by: Yuuh15 Co-authored-by: Chris Titus * Removed broken winget from applications.json (#1968) The winget does not work for vencord. The installer downloads and then fails. (#1515) * Compile Winutil * Optimize Display Behaviour of Category Labels (#1979) * Hide Category title if empty * Changed labels to a hashtable for faster access * Extract WPFNamecreation to function, fix hide all if none match * Compile Winutil * ps1 ext add * Update oosu10 config files and ad missing fileextension (#1980) Co-authored-by: Chris Titus * Compile Winutil * Fix fallback bug and merge choco uninstall rework (#1962) * Implement Uninstall Command for Chocolatey, and Made a Starting Point on the Automatic Upgrade when a Package is Already Installed, similar to WinGet Install Command * Add Extra Guards/Checks in 'Install-WinUtilProgramChoco' Private Function * Fix fallback bug and merge choco uninstall rework - fixed return from wrong return from winget install Install-WinUtilProgramWinget - syntax/wording cleenup in Install-WinUtilProgramWinget - fix bugs in ty802/winutil#1 after merge --------- Co-authored-by: Mr.k Co-authored-by: Chris Titus * Compile Winutil * Update applications.json (#1976) added qgis in right format Co-authored-by: Chris Titus * Compile Winutil * fix sagethumbs error * Compile Winutil --------- Co-authored-by: Mr.k Co-authored-by: ChrisTitusTech Co-authored-by: Melloni <66322451+MelloniDev@users.noreply.github.com> Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com> Co-authored-by: MyDrift Co-authored-by: ModernTTY <165050080+ModernTTY@users.noreply.github.com> Co-authored-by: Kasim Co-authored-by: trenton4k Co-authored-by: Evan Galvin Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com> Co-authored-by: misspent <78914154+misspent@users.noreply.github.com> Co-authored-by: Federico Pulcino <78621373+FedeP14@users.noreply.github.com> Co-authored-by: kian yamamoto Co-authored-by: ty802 Co-authored-by: Callum Carmicheal Co-authored-by: Rux Co-authored-by: Martin Wiethan <47688561+Marterich@users.noreply.github.com> Co-authored-by: Andrew <121936658+7gxycn08@users.noreply.github.com> Co-authored-by: Jelle <89023848+mrjbongo@users.noreply.github.com> Co-authored-by: Marc Brooks Co-authored-by: Hayden Plumley Co-authored-by: Berrick Werkman <105836264+BKlaasWerkman@users.noreply.github.com> Co-authored-by: o-iu <168581616+o-iu@users.noreply.github.com> Co-authored-by: Luadih <50816896+Luadih@users.noreply.github.com> Co-authored-by: Morten Enemark Lund Co-authored-by: Pleș Alexandru <34649178+plesalex100@users.noreply.github.com> Co-authored-by: tvrepairguy <170785918+tvrepairguy@users.noreply.github.com> Co-authored-by: LazyStability Co-authored-by: KonTy <9524513+KonTy@users.noreply.github.com> Co-authored-by: drabspirit <39843622+drabspirit@users.noreply.github.com> Co-authored-by: Yuri Gabriel <97139700+Yuuh15@users.noreply.github.com> Co-authored-by: Yuuh15 Co-authored-by: Owen <78411938+Owen-3456@users.noreply.github.com> Co-authored-by: Snoep <128747388+SnoepNFTs@users.noreply.github.com> --- .gitignore | 1 + Compile.ps1 | 3 + README.md | 2 +- config/applications.json | 284 +- config/ooshutup10_factory.cfg | 17 - config/ooshutup10_recommended.cfg | 37 +- config/preset.json | 21 +- config/themes.json | 3 + config/tweaks.json | 473 +++- functions/private/Get-TabXaml.ps1 | 12 +- functions/private/Get-WPFObjectName.ps1 | 27 + functions/private/Get-WinUtilCheckBoxes.ps1 | 30 +- functions/private/Get-WinUtilToggleStatus.ps1 | 18 + functions/private/Get-WinUtilWingetLatest.ps1 | 10 +- .../private/Install-WinUtilProgramChoco.ps1 | 91 + .../private/Install-WinUtilProgramWinget.ps1 | 108 +- functions/private/Install-WinUtilWinget.ps1 | 2 + .../private/Invoke-WinUtilSnapSuggestion.ps1 | 34 + .../private/Invoke-WinUtilSnapWindow.ps1 | 31 + .../private/Test-WinUtilPackageManager.ps1 | 21 +- functions/public/Invoke-WPFButton.ps1 | 5 +- functions/public/Invoke-WPFFixesWinget.ps1 | 3 +- functions/public/Invoke-WPFGetIso.ps1 | 8 +- functions/public/Invoke-WPFInstall.ps1 | 38 +- functions/public/Invoke-WPFMicrowin.ps1 | 83 +- .../{Invoke-WPFOOSU => Invoke-WPFOOSU.ps1} | 0 functions/public/Invoke-WPFShortcut.ps1 | 36 +- functions/public/Invoke-WPFToggle.ps1 | 2 + functions/public/Invoke-WPFTweakPS7.ps1 | 46 + functions/public/Invoke-WPFUnInstall.ps1 | 34 +- scripts/main.ps1 | 40 +- scripts/start.ps1 | 19 +- wiki/Battery.md | 4 +- ...n-Winutil-MicroWin-during-ISO-mounting.md} | 8 +- winutil.ps1 | 2349 ++++++++++++++--- xaml/inputApp.xaml | 161 +- xaml/inputFeatures.xaml | 6 +- xaml/inputTweaks.xaml | 126 +- xaml/inputXML.xaml | 139 +- 39 files changed, 3465 insertions(+), 867 deletions(-) create mode 100644 functions/private/Get-WPFObjectName.ps1 create mode 100644 functions/private/Install-WinUtilProgramChoco.ps1 create mode 100644 functions/private/Invoke-WinUtilSnapSuggestion.ps1 create mode 100644 functions/private/Invoke-WinUtilSnapWindow.ps1 rename functions/public/{Invoke-WPFOOSU => Invoke-WPFOOSU.ps1} (100%) create mode 100644 functions/public/Invoke-WPFTweakPS7.ps1 rename wiki/{Error-in-Winutil-MicroWin-during-ISO-mounting,md => Error-in-Winutil-MicroWin-during-ISO-mounting.md} (77%) diff --git a/.gitignore b/.gitignore index 215d85ed..4d77e17c 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,4 @@ Microsoft.PowerShell.ConsoleHost.dll microwin.log True test.ps1 +winutil.ps1 diff --git a/Compile.ps1 b/Compile.ps1 index 330c226a..2f568499 100644 --- a/Compile.ps1 +++ b/Compile.ps1 @@ -55,6 +55,9 @@ Get-ChildItem .\config | Where-Object {$psitem.extension -eq ".json"} | ForEach- $sync.configs.$($psitem.BaseName) = $json | convertfrom-json Write-output "`$sync.configs.$($psitem.BaseName) = '$json' `| convertfrom-json" | Out-File ./$scriptname -Append -Encoding ascii } +Get-ChildItem .\config | Where-Object {$PSItem.Extension -eq ".cfg"} | ForEach-Object { + Write-output "`$sync.configs.$($psitem.BaseName) = '$(Get-Content $PSItem.FullName)'" | Out-File ./$scriptname -Append -Encoding ascii +} $xaml = (Get-Content .\xaml\inputXML.xaml).replace("'","''") diff --git a/README.md b/README.md index 60c4fec2..a921ad79 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Winutil must be run in Admin mode because it performs system-wide tweaks. To ach 1. **Right-Click Method:** - Right-click on the start menu. - - Choose "PowerShell As Admin" (for Windows 10) or "Windows Terminal As Admin" (for Windows 11). + - Choose "Windows PowerShell (Admin)" (for Windows 10) or "Terminal (Admin)" (for Windows 11). 2. **Search and Launch Method:** - Press the Windows key. diff --git a/config/applications.json b/config/applications.json index c65f1906..65a3e10d 100644 --- a/config/applications.json +++ b/config/applications.json @@ -31,6 +31,14 @@ "link": "https://www.advanced-ip-scanner.com/", "winget": "Famatech.AdvancedIPScanner" }, + "WPFInstallaffine": { + "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.", + "link": "https://affine.pro/", + "winget": "AFFiNE.stable" + }, "WPFInstallaimp": { "category": "Multimedia Tools", "choco": "aimp", @@ -95,14 +103,6 @@ "link": "https://www.audacityteam.org/", "winget": "Audacity.Audacity" }, - "WPFInstallauthy": { - "category": "Utilities", - "choco": "authy-desktop", - "content": "Authy", - "description": "Simple and cross-platform 2FA app", - "link": "https://authy.com/", - "winget": "Twilio.Authy" - }, "WPFInstallautoruns": { "category": "Microsoft Tools", "choco": "autoruns", @@ -111,6 +111,14 @@ "link": "https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns", "winget": "Microsoft.Sysinternals.Autoruns" }, + "WPFInstallrdcman": { + "category": "Microsoft Tools", + "choco": "rdcman", + "content": "RDCMan", + "description": "RDCMan manages multiple remote desktop connections. It is useful for managing server labs where you need regular access to each machine such as automated checkin systems and data centers.", + "link": "https://learn.microsoft.com/en-us/sysinternals/downloads/rdcman", + "winget": "Microsoft.Sysinternals.RDCMan" + }, "WPFInstallautohotkey": { "category": "Utilities", "choco": "autohotkey", @@ -255,6 +263,14 @@ "link": "https://github.com/Hibbiki/chromium-win64", "winget": "Hibbiki.Chromium" }, + "WPFInstallarc": { + "category": "Browsers", + "choco": "na", + "content": "Arc", + "description": "Arc is a Chromium based browser, known for it's clean and modern design.", + "link": "https://arc.net/", + "winget": "TheBrowserCompany.Arc" + }, "WPFInstallclementine": { "category": "Multimedia Tools", "choco": "clementine", @@ -295,6 +311,14 @@ "link": "https://copyq.readthedocs.io/", "winget": "hluk.CopyQ" }, + "WPFInstallditto": { + "category": "Utilities", + "choco": "ditto", + "content": "Ditto (Clipboard Manager)", + "description": "Ditto is an extension to the Windows Clipboard. You copy something to the Clipboard and Ditto takes what you copied and stores it in a database to retrieve at a later time.", + "link": "https://github.com/sabrogden/Ditto", + "winget": "Ditto.Ditto" + }, "WPFInstallcpuz": { "category": "Utilities", "choco": "cpu-z", @@ -382,6 +406,14 @@ "description": "Discord is a popular communication platform with voice, video, and text chat, designed for gamers but used by a wide range of communities.", "link": "https://discord.com/", "winget": "Discord.Discord" + }, + "WPFInstallditto": { + "category": "Utilities", + "choco": "ditto", + "content": "Ditto", + "description": "Ditto is an extension to the standard windows clipboard.", + "link": "https://ditto-cp.sourceforge.io/", + "winget": "Ditto.Ditto" }, "WPFInstalldockerdesktop": { "category": "Development", @@ -553,11 +585,19 @@ }, "WPFInstallfileconverter": { "category": "Utilities", - "choco": "files", + "choco": "file-converter", "content": "File-Converter", "description": "File Converter is a very simple tool which allows you to convert and compress one or several file(s) using the context menu in windows explorer.", "link": "https://file-converter.io/", "winget": "AdrienAllard.FileConverter" + }, + "WPFInstallfiles": { + "category": "Utilities", + "choco": "files", + "content": "Files", + "description": "Alternative file explorer.", + "link": "https://github.com/files-community/Files", + "winget": "na" }, "WPFInstallfirealpaca": { "category": "Multimedia Tools", @@ -727,6 +767,14 @@ "link": "https://desktop.github.com/", "winget": "Git.Git;GitHub.GitHubDesktop" }, + "WPFInstallgitkrakenclient": { + "category": "Development", + "choco": "gitkraken", + "content": "GitKraken Client", + "description": "GitKraken Client is a powerful visual Git client from Axosoft that works with ALL git repositories on any hosting environment.", + "link": "https://www.gitkraken.com/git-client", + "winget": "Axosoft.GitKraken" + }, "WPFInstallglaryutilities": { "category": "Utilities", "choco": "glaryutilities-free", @@ -735,6 +783,14 @@ "link": "https://www.glarysoft.com/glary-utilities/", "winget": "Glarysoft.GlaryUtilities" }, + "WPFInstallgodotengine": { + "category": "Development", + "choco": "godot", + "content": "Godot Engine", + "description": "Godot Engine is a free, open-source 2D and 3D game engine with a focus on usability and flexibility.", + "link": "https://godotengine.org/", + "winget": "GodotEngine.GodotEngine" + }, "WPFInstallgog": { "category": "Games", "choco": "goggalaxy", @@ -988,7 +1044,7 @@ "choco": "jellyfin-media-player", "content": "Jellyfin Media Player", "description": "Jellyfin Media Player is a client application for the Jellyfin media server, providing access to your media library.", - "link": "https://github.com/jellyfin/jellyfin-media-playerf", + "link": "https://github.com/jellyfin/jellyfin-media-player", "winget": "Jellyfin.JellyfinMediaPlayer" }, "WPFInstalljellyfinserver": { @@ -1162,8 +1218,8 @@ "WPFInstallmatrix": { "category": "Communications", "choco": "element-desktop", - "content": "Matrix", - "description": "Matrix is an open network for secure, decentralized communication with features like chat, VoIP, and collaboration tools.", + "content": "Element", + "description": "Element is a client for Matrix—an open network for secure, decentralized communication.", "link": "https://element.io/", "winget": "Element.Element" }, @@ -1215,6 +1271,14 @@ "link": "https://mremoteng.org/", "winget": "mRemoteNG.mRemoteNG" }, + "WPFInstallmsedgeredirect": { + "category": "Utilities", + "choco": "msedgeredirect", + "content": "MSEdgeRedirect", + "description": "A Tool to Redirect News, Search, Widgets, Weather, and More to Your Default Browser.", + "link": "https://github.com/rcmaehl/MSEdgeRedirect", + "winget": "rcmaehl.MSEdgeRedirect" + }, "WPFInstallmsiafterburner": { "category": "Utilities", "choco": "msiafterburner", @@ -1223,6 +1287,46 @@ "link": "https://www.msi.com/Landing/afterburner", "winget": "Guru3D.Afterburner" }, + "WPFInstallBorderlessGaming": { + "category": "Utilities", + "choco": "na", + "content": "Borderless Gaming", + "description": "Play your favorite games in a borderless window; no more time consuming alt-tabs.", + "link": "https://github.com/Codeusa/Borderless-Gaming", + "winget": "Codeusa.BorderlessGaming" + }, + "WPFInstallEqualizerAPO": { + "category": "Multimedia Tools", + "choco": "equalizerapo", + "content": "Equalizer APO", + "description": "Equalizer APO is a parametric / graphic equalizer for Windows.", + "link": "https://sourceforge.net/projects/equalizerapo", + "winget": "na" + }, + "WPFInstallFreeFileSync": { + "category": "Utilities", + "choco": "freefilesync", + "content": "FreeFileSync", + "description": "Synchronize Files and Folders", + "link": "https://freefilesync.org", + "winget": "na" + }, + "WPFInstallCompactGUI": { + "category": "Utilities", + "choco": "compactgui", + "content": "Compact GUI", + "description": "Transparently compress active games and programs using Windows 10/11 APIs", + "link": "https://github.com/IridiumIO/CompactGUI", + "winget": "IridiumIO.CompactGUI" + }, + "WPFInstallExifCleaner": { + "category": "Utilities", + "choco": "na", + "content": "ExifCleaner", + "description": "Desktop app to clean metadata from images, videos, PDFs, and other files.", + "link": "https://github.com/szTheory/exifcleaner", + "winget": "szTheory.exifcleaner" + }, "WPFInstallmullvadbrowser": { "category": "Browsers", "choco": "na", @@ -1247,6 +1351,14 @@ "link": "https://getmusicbee.com/", "winget": "MusicBee.MusicBee" }, + "WPFInstallmp3tag": { + "category": "Multimedia Tools", + "choco": "mp3tag", + "content": "Mp3tag (Metadata Audio Editor)", + "description": "Mp3tag is a powerful and yet easy-to-use tool to edit metadata of common audio formats.", + "link": "https://www.mp3tag.de/en/", + "winget": "Mp3tag.Mp3tag" + }, "WPFInstallnanazip": { "category": "Utilities", "choco": "nanazip", @@ -1255,6 +1367,14 @@ "link": "https://github.com/M2Team/NanaZip", "winget": "M2Team.NanaZip" }, + "WPFInstallnetbird": { + "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.", + "link": "https://netbird.io/", + "winget": "netbird" + }, "WPFInstallnaps2": { "category": "Document", "choco": "naps2", @@ -1615,6 +1735,14 @@ "link": "https://bitsum.com/", "winget": "BitSum.ProcessLasso" }, + "WPFInstallspotify": { + "category": "Multimedia Tools", + "choco": "spotify", + "content": "Spotify", + "description": "Spotify is a digital music service that gives you access to millions of songs, podcasts, and videos from artists all over the world.", + "link": "https://www.spotify.com/", + "winget": "Spotify.Spotify" + }, "WPFInstallprocessmonitor": { "category": "Microsoft Tools", "choco": "procexp", @@ -1742,6 +1870,14 @@ "description": "Rust is a programming language designed for safety and performance, particularly focused on systems programming.", "link": "https://www.rust-lang.org/", "winget": "Rustlang.Rust.MSVC" + }, + "WPFInstallsagethumbs": { + "category": "Utilities", + "choco": "sagethumbs", + "content": "SageThumbs", + "description": "Provides support for thumbnails in Explorer with more formats.", + "link": "https://sagethumbs.en.lo4d.com/windows", + "winget": "CherubicSoftware.SageThumbs" }, "WPFInstallsamsungmagician": { "category": "Utilities", @@ -1862,6 +1998,14 @@ "description": "A tool application that lets you understand how folders and files are structured on your disks", "link": "http://www.uderzo.it/main_products/space_sniffer/", "winget": "UderzoSoftware.SpaceSniffer" + }, + "WPFInstallspotube": { + "category": "Multimedia Tools", + "choco": "spotube", + "content": "Spotube", + "description": "Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile! ", + "link": "https://github.com/KRTirtho/spotube", + "winget": "KRTirtho.Spotube" }, "WPFInstallstarship": { "category": "Development", @@ -1871,14 +2015,6 @@ "link": "https://starship.rs/", "winget": "starship" }, - "WPFInstallstartallback": { - "category": "Utilities", - "choco": "na", - "content": "StartAllBack", - "description": "StartAllBack is a Tool that can be used to edit the Windows appearance by your liking (Taskbar, Start Menu, File Explorer, Control Panel, Context Menu ...)", - "link": "https://www.startallback.com/", - "winget": "startallback" - }, "WPFInstallsteam": { "category": "Games", "choco": "steam-client", @@ -2071,6 +2207,14 @@ "link": "https://www.thunderbird.net/", "winget": "Mozilla.Thunderbird" }, + "WPFInstallbetterbird": { + "category": "Communications", + "choco": "betterbird", + "content": "Betterbird", + "description": "Betterbird is a fork of Mozilla Thunderbird with additional features and bugfixes.", + "link": "https://www.betterbird.eu/", + "winget": "Betterbird.Betterbird" + }, "WPFInstalltidal": { "category": "Multimedia Tools", "choco": "na", @@ -2167,14 +2311,6 @@ "link": "https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads", "winget": "Microsoft.VCRedist.2015+.x64" }, - "WPFInstallvencord": { - "category": "Communications", - "choco": "na", - "content": "Vencord", - "description": "Vencord is a modification for Discord that adds plugins, custom styles, and more!", - "link": "https://vencord.dev/", - "winget": "Vendicated.Vencord" - }, "WPFInstallventoy": { "category": "Pro Tools", "choco": "ventoy", @@ -2221,7 +2357,7 @@ "content": "Vivaldi", "description": "Vivaldi is a highly customizable web browser with a focus on user personalization and productivity features.", "link": "https://vivaldi.com/", - "winget": "VivaldiTechnologies.Vivaldi" + "winget": "Vivaldi.Vivaldi" }, "WPFInstallvlc": { "category": "Multimedia Tools", @@ -2236,7 +2372,7 @@ "choco": "voicemeeter", "content": "Voicemeeter (Audio)", "description": "Voicemeeter is a virtual audio mixer that allows you to manage and enhance audio streams on your computer. It is commonly used for audio recording and streaming purposes.", - "link": "https://www.vb-audio.com/Voicemeeter/", + "link": "https://voicemeeter.com/", "winget": "VB-Audio.Voicemeeter" }, "WPFInstallvrdesktopstreamer": { @@ -2271,6 +2407,14 @@ "link": "https://www.waterfox.net/", "winget": "Waterfox.Waterfox" }, + "WPFInstallwazuh": { + "category": "Utilities", + "choco": "wazuh-agent", + "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" + }, "WPFInstallwezterm": { "category": "Development", "choco": "wezterm", @@ -2279,14 +2423,6 @@ "link": "https://wezfurlong.org/wezterm/index.html", "winget": "wez.wezterm" }, - "WPFInstallwhatsapp": { - "category": "Communications", - "choco": "whatsapp", - "content": "Whatsapp", - "description": "WhatsApp Desktop is a desktop version of the popular messaging app, allowing users to send and receive messages, share files, and connect with contacts from their computer.", - "link": "https://www.whatsapp.com/", - "winget": "WhatsApp.WhatsApp" - }, "WPFInstallwindirstat": { "category": "Utilities", "choco": "windirstat", @@ -2519,6 +2655,14 @@ "link": "https://docs.conda.io/projects/miniconda", "winget": "Anaconda.Miniconda3" }, + "WPFInstallpixi": { + "category": "Development", + "choco": "pixi", + "content": "Pixi", + "description": "Pixi is a fast software package manager built on top of the existing conda ecosystem. Spins up development environments quickly on Windows, macOS and Linux. Pixi supports Python, R, C/C++, Rust, Ruby, and many other languages.", + "link": "https://pixi.sh", + "winget": "prefix-dev.pixi" + }, "WPFInstalltemurin": { "category": "Development", "choco": "temurin", @@ -2590,5 +2734,69 @@ "description": "get things from one computer to another, safely", "link": "https://github.com/magic-wormhole/magic-wormhole", "winget": "magic-wormhole.magic-wormhole" + }, + "WPFInstallqgis": { + "category": "Multimedia Tools", + "choco": "qgis", + "content": "QGIS", + "description": "QGIS (Quantum GIS) is an open-source Geographic Information System (GIS) software that enables users to create, edit, visualize, analyze, and publish geospatial information on Windows, Mac, and Linux platforms.", + "link": "https://qgis.org/en/site/", + "winget": "OSGeo.QGIS" + }, + "WPFInstallsmplayer": { + "category": "Multimedia Tools", + "choco": "smplayer", + "content": "SMPlayer", + "description": "SMPlayer is a free media player for Windows and Linux with built-in codecs that can play virtually all video and audio formats.", + "link": "https://www.smplayer.info", + "winget": "SMPlayer.SMPlayer" + }, + "WPFInstallglazewm": { + "category": "Utilities", + "choco": "na", + "content": "GlazeWM", + "description": "GlazeWM is a tiling window manager for Windows inspired by i3 and Polybar", + "link": "https://github.com/glzr-io/glazewm", + "winget": "glzr-io.glazewm" + }, + "WPFInstallfancontrol": { + "category": "Utilities", + "choco": "na", + "content": "FanControl", + "description": "Fan Control is a free and open-source software that allows the user to control his CPU, GPU and case fans using temperatures.", + "link": "https://getfancontrol.com/", + "winget": "Rem0o.FanControl" + }, + "WPFInstallfnm": { + "category": "Development", + "choco": "fnm", + "content": "Fast Node Manager", + "description": "Fast Node Manager (fnm) allows you to switch your Node version by using the Terminal", + "link": "https://github.com/Schniz/fnm", + "winget": "Schniz.fnm" + }, + "WPFInstallWindhawk": { + "category": "Utilities", + "choco": "windhawk", + "content": "Windhawk", + "description": "The customization marketplace for Windows programs", + "link": "https://windhawk.net", + "winget": "RamenSoftware.Windhawk" + }, + "WPFInstallForceAutoHDR": { + "category": "Utilities", + "choco": "na", + "content": "GUI That Forces Auto HDR In Unsupported Games", + "description": "ForceAutoHDR simplifies the process of adding games to the AutoHDR list in the Windows Registry", + "link": "https://github.com/7gxycn08/ForceAutoHDR", + "winget": "ForceAutoHDR.7gxycn08" + }, + "WPFInstallnditools": { + "category": "Multimedia Tools", + "choco": "na", + "content": "NDI Tools", + "description":"NDI, or Network Device Interface, is a video connectivity standard that enables multimedia systems to identify and communicate with one another over IP and to encode, transmit, and receive high-quality, low latency, frame-accurate video and audio, and exchange metadata in real-time.", + "link": "https://ndi.video/", + "winget": "NDI.NDITools" } } diff --git a/config/ooshutup10_factory.cfg b/config/ooshutup10_factory.cfg index aba3cbe0..1ae2ecab 100644 --- a/config/ooshutup10_factory.cfg +++ b/config/ooshutup10_factory.cfg @@ -159,22 +159,6 @@ E005 - E013 - E014 - E006 - -F002 - -F014 - -F015 - -F016 - -F001 - -F003 - -F004 - -F005 - -F007 - -F008 - -F009 - -F006 - -F010 - -F011 - -F012 - -F013 - Y001 - Y002 - Y003 - @@ -224,7 +208,6 @@ S014 - K001 - K002 - K005 - -M025 - M003 - M015 - M016 - diff --git a/config/ooshutup10_recommended.cfg b/config/ooshutup10_recommended.cfg index 0993f4d9..0149c649 100644 --- a/config/ooshutup10_recommended.cfg +++ b/config/ooshutup10_recommended.cfg @@ -34,8 +34,8 @@ P067 + P070 + P069 + P009 - -P010 - -P015 - +P010 + +P015 + P068 - P016 - A001 + @@ -49,7 +49,7 @@ P036 + P025 + P033 + P023 + -P056 - +P056 + P057 - P012 - P034 - @@ -102,7 +102,7 @@ P077 - P078 - P079 - P080 - -P024 - +P024 + S001 + S002 + S003 + @@ -159,22 +159,6 @@ E005 - E013 - E014 - E006 - -F002 + -F014 + -F015 + -F016 + -F001 + -F003 + -F004 + -F005 + -F007 + -F008 + -F009 + -F006 - -F010 - -F011 - -F012 - -F013 - Y001 + Y002 + Y003 + @@ -210,12 +194,12 @@ W004 - W005 - W010 - W009 - -P017 - +P017 + W006 - W008 - M006 + M011 - -M010 - +M010 + O003 - O001 - S012 - @@ -224,15 +208,14 @@ S014 - K001 + K002 + K005 + -M025 + M003 - -M015 - +M015 + M016 - M017 - -M018 - +M018 + M019 - -M020 - -M021 - +M020 + +M021 + M022 + M001 + M004 + diff --git a/config/preset.json b/config/preset.json index 807f76a3..cabe8037 100644 --- a/config/preset.json +++ b/config/preset.json @@ -1,5 +1,5 @@ { - "desktop": [ + "Standard": [ "WPFTweaksAH", "WPFTweaksDVR", "WPFTweaksHiber", @@ -9,21 +9,14 @@ "WPFTweaksServices", "WPFTweaksStorage", "WPFTweaksTele", - "WPFTweaksWifi" - ], - "laptop": [ - "WPFTweaksAH", - "WPFTweaksDVR", - "WPFTweaksHome", - "WPFTweaksLoc", - "WPFTweaksOO", - "WPFTweaksServices", - "WPFTweaksStorage", - "WPFTweaksTele", "WPFTweaksWifi", - "WPFMiscTweaksLapPower" + "WPFTweaksDiskCleanup", + "WPFTweaksDeleteTempFiles", + "WPFTweaksEndTaskOnTaskbar", + "WPFTweaksRestorePoint", + "WPFTweaksTeredo" ], - "minimal": [ + "Minimal": [ "WPFTweaksHome", "WPFTweaksOO", "WPFTweaksServices", diff --git a/config/themes.json b/config/themes.json index fb23ca95..f61c09ef 100644 --- a/config/themes.json +++ b/config/themes.json @@ -23,6 +23,7 @@ "ButtonBackgroundMouseoverColor": "#C2C2C2", "ButtonBackgroundSelectedColor": "#F0F0F0", "ButtonForegroundColor": "#000000", + "ToggleButtonOnColor": "#2e77ff", "ButtonBorderThickness": "1", "ButtonMargin": "1", "ButtonCornerRadius": "2", @@ -53,6 +54,7 @@ "ButtonBackgroundMouseoverColor": "#A55A64", "ButtonBackgroundSelectedColor": "#FF5733", "ButtonForegroundColor": "#9CCC65", + "ToggleButtonOnColor": "#2e77ff", "ButtonBorderThickness": "1", "ButtonMargin": "1", "ButtonCornerRadius": "2", @@ -83,6 +85,7 @@ "ButtonBackgroundMouseoverColor": "#FF5733", "ButtonBackgroundSelectedColor": "#FF5733", "ButtonForegroundColor": "#9CCC65", + "ToggleButtonOnColor": "#2e77ff", "ButtonBorderThickness": "1", "ButtonMargin": "1", "ButtonCornerRadius": "2", diff --git a/config/tweaks.json b/config/tweaks.json index d1de827d..775f0f1b 100644 --- a/config/tweaks.json +++ b/config/tweaks.json @@ -34,7 +34,7 @@ "Description": "Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.", "category": "Essential Tweaks", "panel": "1", - "Order": "a011_", + "Order": "a005_", "registry": [ { "Path": "HKLM:\\System\\CurrentControlSet\\Control\\Session Manager\\Power", @@ -58,12 +58,59 @@ "powercfg.exe /hibernate on" ] }, + "WPFToggleTweaksLaptopHybernation": { + "Content": "Set Hibernation as default (good for laptops)", + "Description": "Most modern laptops have connected stadby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399", + "category": "Essential Tweaks", + "panel": "1", + "Order": "a014_", + "registry": [ + { + "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Power\\PowerSettings\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0", + "OriginalValue": "1", + "Name": "Attributes", + "Value": "2", + "Type": "DWord" + }, + { + "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Power\\PowerSettings\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\94ac6d29-73ce-41a6-809f-6363ba21b47e", + "OriginalValue": "0", + "Name": "Attributes ", + "Value": "2", + "Type": "DWord" + } + ], + "InvokeScript": [ + " + Write-Host \"Turn on Hibernation\" + Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait + + # Set hibernation as the default action + Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait + " + ], + "UndoScript": [ + " + Write-Host \"Turn off Hibernation\" + Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait + + # Set standby to detault values + Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait + Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait + " + ] + }, "WPFTweaksHome": { "Content": "Disable Homegroup", "Description": "Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.", "category": "Essential Tweaks", "panel": "1", - "Order": "a009_", + "Order": "a005_", "service": [ { "Name": "HomeGroupListener", @@ -82,7 +129,7 @@ "Description": "Disables Location Tracking...DUH!", "category": "Essential Tweaks", "panel": "1", - "Order": "a008_", + "Order": "a005_", "registry": [ { "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\CapabilityAccessManager\\ConsentStore\\location", @@ -1872,27 +1919,6 @@ "Value": "1", "Type": "DWord" }, - { - "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Multimedia\\SystemProfile\\Tasks\\Games", - "OriginalValue": "1", - "Name": "GPU Priority", - "Value": "8", - "Type": "DWord" - }, - { - "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Multimedia\\SystemProfile\\Tasks\\Games", - "OriginalValue": "1", - "Name": "Priority", - "Value": "6", - "Type": "DWord" - }, - { - "Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Multimedia\\SystemProfile\\Tasks\\Games", - "OriginalValue": "High", - "Name": "Scheduling Category", - "Value": "High", - "Type": "String" - }, { "Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\UserProfileEngagement", "OriginalValue": "1", @@ -1942,7 +1968,7 @@ "Description": "Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.", "category": "Essential Tweaks", "panel": "1", - "Order": "a004_", + "Order": "a005_", "registry": [ { "Path": "HKLM:\\Software\\Microsoft\\PolicyManager\\default\\WiFi\\AllowWiFiHotSpotReporting", @@ -1965,7 +1991,7 @@ "Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a022_", + "Order": "a027_", "registry": [ { "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\TimeZoneInformation", @@ -1981,7 +2007,7 @@ "Description": "Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a021_", + "Order": "a027_", "registry": [ { "Path": "HKCU:\\Control Panel\\Desktop", @@ -2087,7 +2113,7 @@ "Description": "USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a025_", + "Order": "a028_", "appx": [ "Microsoft.Microsoft3DViewer", "Microsoft.AppConnector", @@ -2262,7 +2288,7 @@ "Description": "Enables option to end task when right clicking a program in the taskbar", "category": "Essential Tweaks", "panel": "1", - "Order": "a002_", + "Order": "a006_", "InvokeScript": [ " Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\" -Name \"TaskbarEndTask\" -Type \"DWord\" -Value \"1\" @@ -2274,12 +2300,25 @@ " ] }, + "WPFTweaksPowershell7": { + "Content": "Replace Default Powershell 5 to Powershell 7", + "Description": "This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary", + "category": "Essential Tweaks", + "panel": "1", + "Order": "a009_", + "InvokeScript": [ + "Invoke-WPFTweakPS7 -action \"PS7\"" + ], + "UndoScript": [ + "Invoke-WPFTweakPS7 -action \"PS5\"" + ] + }, "WPFTweaksOO": { "Content": "Run OO Shutup", "Description": "Runs OO Shutup and applies the recommended Tweaks. https://www.oo-software.com/en/shutup10", "category": "Essential Tweaks", "panel": "1", - "Order": "a002_", + "Order": "a009_", "ToolTip": "Runs OO Shutup and applies the recommended Tweaks https://www.oo-software.com/en/shutup10", "InvokeScript": [ "Invoke-WPFOOSU -action \"recommended\"" @@ -2293,7 +2332,7 @@ "Description": "Storage Sense deletes temp files automatically.", "category": "Essential Tweaks", "panel": "1", - "Order": "a010_", + "Order": "a005_", "InvokeScript": [ "Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force" ], @@ -2306,7 +2345,7 @@ "Description": "Removes MS Edge when it gets reinstalled by updates.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a026_", + "Order": "a029_", "InvokeScript": [ " #:: Standalone script by AveYo Source: https://raw.githubusercontent.com/AveYo/fox/main/Edge_Removal.bat @@ -2323,12 +2362,55 @@ " ] }, + "WPFTweaksRemoveCopilot": { + "Content": "Disable Microsoft Copilot", + "Description": "Disables MS Copilot AI built into Windows since 23H2.", + "category": "z__Advanced Tweaks - CAUTION", + "panel": "1", + "Order": "a025_", + "registry": [ + { + + "Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsCopilot", + "Name": "TurnOffWindowsCopilot", + "Type": "DWord", + "Value": "1", + "OriginalValue": "0" + }, + { + "Path": "HKCU:\\Software\\Policies\\Microsoft\\Windows\\WindowsCopilot", + "Name": "TurnOffWindowsCopilot", + "Type": "DWord", + "Value": "1", + "OriginalValue": "0" + }, + { + "Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced", + "Name": "ShowCopilotButton", + "Type": "DWord", + "Value": "0", + "OriginalValue": "1" + } + ], + "InvokeScript": [ + " + Write-Host \"Remove Popilot\" + dism /online /remove-package /package-name:Microsoft.Windows.Copilot + " + ], + "UndoScript": [ + " + Write-Host \"Install Copilot\" + dism /online /add-package /package-name:Microsoft.Windows.Copilot + " + ] + }, "WPFTweaksRemoveOnedrive": { "Content": "Remove OneDrive", "Description": "Copies OneDrive files to Default Home Folders and Uninstalls it.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a027_", + "Order": "a030_", "InvokeScript": [ " @@ -2411,7 +2493,7 @@ "Description": "Disables all Notifications INCLUDING Calendar", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a024_", + "Order": "a026_", "registry": [ { "Path": "HKCU:\\Software\\Policies\\Microsoft\\Windows\\Explorer", @@ -2429,12 +2511,273 @@ } ] }, + "WPFTweaksDebloatAdobe": { + "Content": "Adobe Debloat", + "Description": "Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates", + "category": "z__Advanced Tweaks - CAUTION", + "panel": "1", + "Order": "a021_", + "InvokeScript": [ + " + function CCStopper { + $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\" + + # Test if the path exists before proceeding + if (Test-Path $path) { + Takeown /f $path + $acl = Get-Acl $path + $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\") + $acl | Set-Acl $path + + Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force + } else { + Write-Host \"Adobe Desktop Service is not in the default location.\" + } + } + + + function AcrobatUpdates { + # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script. + # Possible Values for the edited key: + # 0 = Do not download or install updates automatically + # 2 = Automatically download updates but let the user choose when to install them + # 3 = Automatically download and install updates (default value) + # 4 = Notify the user when an update is available but don't download or install it automatically + # = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing. + + $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\" + + # Get all subkeys under the specified root path + $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" } + + # Loop through each subkey + foreach ($subKey in $subKeys) { + # Get the full registry path + $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName + try { + Set-ItemProperty -Path $fullPath -Name Mode -Value 0 + Write-Host \"Acrobat Updates have been disabled.\" + } catch { + Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\" + } + } + } + + CCStopper + AcrobatUpdates + " + ], + "UndoScript": [ + " + function RestoreCCService { + $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\" + $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\" + + if (Test-Path -Path $originalPath) { + Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force + Write-Host \"Adobe Desktop Service has been restored.\" + } else { + Write-Host \"Backup file does not exist. No changes were made.\" + } + } + + function AcrobatUpdates { + # Default Value: + # 3 = Automatically download and install updates + + $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\" + + # Get all subkeys under the specified root path + $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" } + + # Loop through each subkey + foreach ($subKey in $subKeys) { + # Get the full registry path + $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName + try { + Set-ItemProperty -Path $fullPath -Name Mode -Value 3 + } catch { + Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\" + } + } + } + + RestoreCCService + AcrobatUpdates + " + ], + "service": [ + { + "Name": "AGSService", + "StartupType": "Disabled", + "OriginalType": "Automatic" + }, + { + "Name": "AGMService", + "StartupType": "Disabled", + "OriginalType": "Automatic" + }, + { + "Name": "AdobeUpdateService", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "Adobe Acrobat Update", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "Adobe Genuine Monitor Service", + "StartupType": "Disabled", + "OriginalType": "Automatic" + }, + { + "Name": "AdobeARMservice", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "Adobe Licensing Console", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "CCXProcess", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "AdobeIPCBroker", + "StartupType": "Manual", + "OriginalType": "Automatic" + }, + { + "Name": "CoreSync", + "StartupType": "Manual", + "OriginalType": "Automatic" + } + ] + }, + "WPFTweaksBlockAdobeNet": { + "Content": "Adobe Network Block", + "Description": "Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. ", + "category": "z__Advanced Tweaks - CAUTION", + "panel": "1", + "Order": "a021_", + "InvokeScript": [ + " + # Define the URL of the remote HOSTS file and the local paths + $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\" + $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\" + $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\" + + # Download the remote HOSTS file to a temporary location + try { + Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath + Write-Output \"Downloaded the remote HOSTS file to a temporary location.\" + } + catch { + Write-Error \"Failed to download the HOSTS file. Error: $_\" + } + + # Check if the AdobeNetBlock has already been started + try { + $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop + + # Check if AdobeNetBlock markers exist + $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\" + if ($blockStartExists) { + Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\" + } else { + # Load the new block from the downloaded file + $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop + $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments + $newBlockHeader = \"#AdobeNetBlock-start\" + $newBlockFooter = \"#AdobeNetBlock-end\" + + # Combine the contents, ensuring new block is properly formatted + $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String + + # Write the combined content back to the original HOSTS file + $combinedContent | Set-Content $localHostsPath -Encoding ASCII + Write-Output \"Successfully added the AdobeNetBlock.\" + } + } + catch { + Write-Error \"Error during processing: $_\" + } + + # Clean up temporary file + Remove-Item $tempHostsPath -ErrorAction Ignore + + # Flush the DNS resolver cache + try { + Invoke-Expression \"ipconfig /flushdns\" + Write-Output \"DNS cache flushed successfully.\" + } + catch { + Write-Error \"Failed to flush DNS cache. Error: $_\" + } + " + ], + "UndoScript": [ + " + # Define the local path of the HOSTS file + $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\" + + # Load the content of the HOSTS file + try { + $hostsContent = Get-Content $localHostsPath -ErrorAction Stop + } + catch { + Write-Error \"Failed to load the HOSTS file. Error: $_\" + return + } + + # Initialize flags and buffer for new content + $recording = $true + $newContent = @() + + # Iterate over each line of the HOSTS file + foreach ($line in $hostsContent) { + if ($line -match \"#AdobeNetBlock-start\") { + $recording = $false + } + if ($recording) { + $newContent += $line + } + if ($line -match \"#AdobeNetBlock-end\") { + $recording = $true + } + } + + # Write the filtered content back to the HOSTS file + try { + $newContent | Set-Content $localHostsPath -Encoding ASCII + Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\" + } + catch { + Write-Error \"Failed to write back to the HOSTS file. Error: $_\" + } + + # Flush the DNS resolver cache + try { + Invoke-Expression \"ipconfig /flushdns\" + Write-Output \"DNS cache flushed successfully.\" + } + catch { + Write-Error \"Failed to flush DNS cache. Error: $_\" + } + " + ] + }, "WPFTweaksRightClickMenu": { "Content": "Set Classic Right-Click Menu ", "Description": "Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a028_", + "Order": "a027_", "InvokeScript": [ " New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\" @@ -2458,7 +2801,7 @@ "Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.", "category": "Essential Tweaks", "panel": "1", - "Order": "a007_", + "Order": "a009_", "InvokeScript": [ " cleanmgr.exe /d C: /VERYLOWDISK @@ -2471,7 +2814,7 @@ "Description": "Erases TEMP Folders", "category": "Essential Tweaks", "panel": "1", - "Order": "a006_", + "Order": "a002_", "InvokeScript": [ "Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse" @@ -2482,7 +2825,7 @@ "Description": "GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.", "category": "Essential Tweaks", "panel": "1", - "Order": "a012_", + "Order": "a005_", "registry": [ { "Path": "HKCU:\\System\\GameConfigStore", @@ -2498,13 +2841,6 @@ "OriginalValue": "1", "Type": "DWord" }, - { - "Path": "HKCU:\\System\\GameConfigStore", - "Name": "GameDVR_DXGIHonorFSEWindowsCompatible", - "Value": "1", - "OriginalValue": "0", - "Type": "DWord" - }, { "Path": "HKCU:\\System\\GameConfigStore", "Name": "GameDVR_HonorUserFSEBehaviorMode", @@ -2533,8 +2869,7 @@ "Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency.", "category": "Essential Tweaks", "panel": "1", - "Order": "a029_", - "Order": "a013_", + "Order": "a005_", "registry": [ { "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters", @@ -2556,7 +2891,7 @@ "Description": "Disables IPv6.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a031_", + "Order": "a023_", "registry": [ { "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters", @@ -2573,12 +2908,28 @@ "Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6" ] }, + "WPFTweaksDisableFSO": { + "Content": "Disable Fullscreen Optimizations", + "Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen", + "category": "z__Advanced Tweaks - CAUTION", + "panel": "1", + "Order": "a024_", + "registry": [ + { + "Path": "HKCU:\\System\\GameConfigStore", + "Name": "GameDVR_DXGIHonorFSEWindowsCompatible", + "Value": "1", + "OriginalValue": "0", + "Type": "DWord" + } + ] + }, "WPFTweaksEnableipsix": { "Content": "Enable IPv6", "Description": "Enables IPv6.", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a030_", + "Order": "a023_", "registry": [ { "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters", @@ -2635,12 +2986,28 @@ "Order": "a064_", "Type": "Toggle" }, + "WPFToggleSnapWindow": { + "Content": "Snap Window", + "Description": "If enabled you can align windows by dragging them. | Relogin Required", + "category": "Customize Preferences", + "panel": "2", + "Order": "a065_", + "Type": "Toggle" + }, "WPFToggleSnapFlyout": { "Content": "Snap Assist Flyout", "Description": "If enabled then Snap preview is disabled when maximize button is hovered.", "category": "Customize Preferences", "panel": "2", - "Order": "a065_", + "Order": "a066_", + "Type": "Toggle" + }, + "WPFToggleSnapSuggestion": { + "Content": "Snap Assist Suggestion", + "Description": "If enabled then you will get suggestions to snap other applications in the left over spaces.", + "category": "Customize Preferences", + "panel": "2", + "Order": "a067_", "Type": "Toggle" }, "WPFToggleMouseAcceleration": { @@ -2648,7 +3015,7 @@ "Description": "If Enabled then Cursor movement is affected by the speed of your physical mouse movements.", "category": "Customize Preferences", "panel": "2", - "Order": "a066_", + "Order": "a068_", "Type": "Toggle" }, "WPFToggleStickyKeys": { @@ -2656,7 +3023,7 @@ "Description": "If Enabled then 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.", "category": "Customize Preferences", "panel": "2", - "Order": "a067_", + "Order": "a069_", "Type": "Toggle" }, "WPFOOSUbutton": { @@ -2717,4 +3084,4 @@ "Order": "a082_", "Type": "300" } -} +} \ No newline at end of file diff --git a/functions/private/Get-TabXaml.ps1 b/functions/private/Get-TabXaml.ps1 index a420e344..9caf2e9b 100644 --- a/functions/private/Get-TabXaml.ps1 +++ b/functions/private/Get-TabXaml.ps1 @@ -77,7 +77,13 @@ function Get-TabXaml { $panelcount++ } } - $blockXml += "