diff --git a/config/tweaks.json b/config/tweaks.json index bf080588..39151a8e 100644 --- a/config/tweaks.json +++ b/config/tweaks.json @@ -1591,67 +1591,19 @@ ], "link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/tele" }, - "WPFTweaksDisableEdge": { - "Content": "Disable Edge", - "Description": "Prevent msedge.exe from running with explorer policies.", + "WPFTweaksRemoveEdge": { + "Content": "Remove Microsoft Edge", + "Description": "Unblocks Microsoft Edge uninstaller restrictions than uses that uninstaller to remove Microsoft Edge", "category": "z__Advanced Tweaks - CAUTION", "panel": "1", - "Order": "a023_", - "registry": [ - { - "Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\DisallowRun", - "Name": "DisableEdge", - "Type": "String", - "Value": "msedge.exe", - "OriginalValue": "" - }, - { - "Path": "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer", - "Name": "DisallowRun", - "Type": "DWord", - "Value": "1", - "OriginalValue": "" - } - ], - "link": "" - }, - "WPFTweaksMakeEdgeUninstallable": { - "Content": "Make Edge Uninstallable via settings", - "Description": "Makes it so you can uninstall edge via settings > installed apps", - "category": "z__Advanced Tweaks - CAUTION", - "panel": "1", - "Order": "a026_", - "registry": [ - { - "Path": "HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge", - "Name": "NoRemove", - "Type": "Dword", - "Value": "0", - "OriginalValue": "1" - } - ], + "Order": "a028_", "InvokeScript": [ - " - $File = \"C:\\Windows\\System32\\IntegratedServicesRegionPolicySet.json\" - - takeown /f $File - icacls $File /grant \"Administrators:(F)\" - - $FileContent = Get-Content $File - $FileContent[7] = $FileContent[7] -replace \"disabled\", \"enabled\" - Set-Content $File $FileContent - " + "Invoke-WinUtilRemoveEdge" ], "UndoScript": [ " - $File = \"C:\\Windows\\System32\\IntegratedServicesRegionPolicySet.json\" - - takeown /f $File - icacls $File /grant \"Administrators:(F)\" - - $FileContent = Get-Content $File - $FileContent[7] = $FileContent[7] -replace \"enabled\", \"disabled\" - Set-Content $File $FileContent + Write-Host 'Installing Microsoft Edge...' + winget install Microsoft.Edge --source winget " ], "link": "" diff --git a/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/EdgeUninstall.md b/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/EdgeUninstall.md deleted file mode 100644 index a8ffcdf2..00000000 --- a/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/EdgeUninstall.md +++ /dev/null @@ -1,48 +0,0 @@ -# Remove Microsoft Edge - -```json -"WPFTweaksMakeEdgeUninstallable": { - "Content": "Make Edge Uninstallable via settings", - "Description": "Makes it so you can uninstall edge via settings > installed apps", - "category": "z__Advanced Tweaks - CAUTION", - "panel": "1", - "Order": "a026_", - "registry": [ - { - "Path": "HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge", - "Name": "NoRemove", - "Type": "Dword", - "Value": "0", - "OriginalValue": "1" - } - ], - "InvokeScript": [ - " - $File = \"C:\\Windows\\System32\\IntegratedServicesRegionPolicySet.json\" - - takeown /f $File - icacls $File /grant \"Administrators:(F)\" - - $FileContent = Get-Content $File - $FileContent[7] = $FileContent[7] -replace \"disabled\", \"enabled\" - Set-Content $File $FileContent - " - ], - "UndoScript": [ - " - $File = \"C:\\Windows\\System32\\IntegratedServicesRegionPolicySet.json\" - - takeown /f $File - icacls $File /grant \"Administrators:(F)\" - - $FileContent = Get-Content $File - $FileContent[7] = $FileContent[7] -replace \"enabled\", \"disabled\" - Set-Content $File $FileContent - " - ], -``` - -## 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). diff --git a/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge.md b/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge.md new file mode 100644 index 00000000..0bef13b3 --- /dev/null +++ b/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge.md @@ -0,0 +1,30 @@ +# Remove Microsoft Edge + +# Json File +```json + "WPFTweaksRemoveEdge": { + "Content": "Remove Microsoft Edge", + "Description": "Unblocks Microsoft Edge uninstaller restrictions than uses that uninstaller to remove Microsoft Edge", + "category": "z__Advanced Tweaks - CAUTION", + "panel": "1", + "Order": "a028_", + "InvokeScript": [ + "Invoke-WinUtilRemoveEdge" + ], + "UndoScript": [ + " + Write-Host 'Installing Microsoft Edge...' + winget install Microsoft.Edge --source winget + " + ], +``` +# Function +```json +function Invoke-WinUtilRemoveEdge { + Write-Host "Unlocking The Offical Edge Uninstaller And Removing Microsoft Edge..." + + $Path = (Get-ChildItem "C:\Program Files (x86)\Microsoft\Edge\Application\*\Installer\setup.exe")[0].FullName + New-Item "C:\Windows\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\MicrosoftEdge.exe" -Force + Start-Process $Path -ArgumentList '--uninstall --system-level --force-uninstall --delete-profile' +} +``` diff --git a/functions/public/Invoke-WinUtilRemoveEdge.ps1 b/functions/public/Invoke-WinUtilRemoveEdge.ps1 new file mode 100644 index 00000000..a153730a --- /dev/null +++ b/functions/public/Invoke-WinUtilRemoveEdge.ps1 @@ -0,0 +1,7 @@ +function Invoke-WinUtilRemoveEdge { + Write-Host "Unlocking The Offical Edge Uninstaller And Removing Microsoft Edge..." + + $Path = (Get-ChildItem "C:\Program Files (x86)\Microsoft\Edge\Application\*\Installer\setup.exe")[0].FullName + New-Item "C:\Windows\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\MicrosoftEdge.exe" -Force + Start-Process $Path -ArgumentList '--uninstall --system-level --force-uninstall --delete-profile' +}