diff --git a/Appslist.txt b/Appslist.txt index cea43db..af06fff 100644 --- a/Appslist.txt +++ b/Appslist.txt @@ -97,8 +97,6 @@ #*Microsoft.GetHelp* # Required for some Windows 11 Troubleshooters #*Microsoft.MSPaint* # Paint 3D #*Microsoft.Paint* # Classic Paint -#*Microsoft.PowerAutomateDesktop* -#*Microsoft.RemoteDesktop* #*Microsoft.ScreenSketch* # Snipping Tool #*Microsoft.Whiteboard* # Only preinstalled on devices with touchscreen and/or pen support #*Microsoft.Windows.Photos* @@ -118,6 +116,9 @@ #*Microsoft.GamingApp* # Modern Xbox Gaming App, required for installing some PC games #*Microsoft.OutlookForWindows* # New mail app: Outlook for Windows #*Microsoft.People* # Required for & included with Mail & Calendar +#*Microsoft.PowerAutomateDesktop* +#*Microsoft.RemoteDesktop* #*Microsoft.windowscommunicationsapps* # Mail & Calendar #*Microsoft.XboxGameOverlay* # Game overlay, required/useful for some games -#*Microsoft.XboxGamingOverlay* # Game overlay, required/useful for some games \ No newline at end of file +#*Microsoft.XboxGamingOverlay* # Game overlay, required/useful for some games +#*Windows.DevHome* \ No newline at end of file diff --git a/README.md b/README.md index 298b8c3..41b1d6e 100644 --- a/README.md +++ b/README.md @@ -154,9 +154,10 @@ You can pick and choose exactly which modifications you want the script to make, - Microsoft.GetHelp (Required for some Windows 11 Troubleshooters) - Microsoft.MSPaint (Paint 3D) - Microsoft.OutlookForWindows*** (New mail app) + - Microsoft.PowerAutomateDesktop**** - Microsoft.Paint (Classic Paint) - Microsoft.People** (Required for & included with Mail & Calendar) - - Microsoft.RemoteDesktop + - Microsoft.RemoteDesktop**** - Microsoft.ScreenSketch (Snipping Tool) - Microsoft.Whiteboard (Only preinstalled on devices with touchscreen and/or pen support) - Microsoft.Windows.Photos @@ -168,6 +169,7 @@ You can pick and choose exactly which modifications you want the script to make, - Microsoft.YourPhone (Phone Link) - Microsoft.Xbox.TCUI (UI framework, removing this may break MS store, photos and certain games) - Microsoft.ZuneMusic (Modern Media Player) + - Windows.DevHome**** Apps that are required or useful for gaming: - Microsoft.GamingApp* (Modern Xbox Gaming App, required for installing some games) @@ -179,6 +181,7 @@ You can pick and choose exactly which modifications you want the script to make, * Can be removed in custom mode or by running the script with the '-RemoveGamingApps' parameter. ** Can be removed in custom mode or by running the script with the '-RemoveCommApps' parameter. *** Can be removed in custom mode or by running the script with the '-RemoveW11Outlook' parameter. + **** Can be removed in custom mode or by running the script with the '-RemoveDevApps' parameter. @@ -216,13 +219,14 @@ To run the script without any user input, simply add parameters at the end, exam | -Silent | Suppresses all interactive prompts, so the script will run without requiring any user input. | | -RunDefaults | Run the script with the default settings. | | -RemoveApps | Remove all bloatware apps from [this list](#apps-that-are-removed). | -| -RemoveGamingApps | Remove the Xbox App and Xbox Gamebar. | | -RemoveCommApps | Remove the Mail, Calender, and People apps. | | -RemoveW11Outlook | Remove the new Outlook for Windows app. | +| -RemoveDevApps | Remove developer-related apps such as Remote Desktop, DevHome and Power Automate. | +| -RemoveGamingApps | Remove the Xbox App and Xbox Gamebar. | | -ClearStart | Remove all pinned apps from the start menu. NOTE: This applies to all existing and new users. (Windows 11 update 22H2 or later only) | | -DisableTelemetry | Disable telemetry, diagnostic data & targeted ads. | | -DisableBing | Disable bing search, bing AI & cortana in windows search. | -| -DisableLockscreenTips | Disable tips & tricks on the lockscreen. | +| -DisableLockscrTips | Disable tips & tricks on the lockscreen. | | -DisableSuggestions | Disable tips, tricks, suggestions and ads in start, settings, notifications and windows explorer. | | -RevertContextMenu | Restore the old Windows 10 style context menu. (Windows 11 only) | | -ShowHiddenFolders | Show hidden files, folders and drives. | diff --git a/Win11Debloat.ps1 b/Win11Debloat.ps1 index 503d92f..a20354a 100644 --- a/Win11Debloat.ps1 +++ b/Win11Debloat.ps1 @@ -9,6 +9,7 @@ param [Parameter(ValueFromPipeline = $true)][switch]$RemoveApps, [Parameter(ValueFromPipeline = $true)][switch]$RemoveGamingApps, [Parameter(ValueFromPipeline = $true)][switch]$RemoveCommApps, + [Parameter(ValueFromPipeline = $true)][switch]$RemoveDevApps, [Parameter(ValueFromPipeline = $true)][switch]$RemoveW11Outlook, [Parameter(ValueFromPipeline = $true)][switch]$DisableTelemetry, [Parameter(ValueFromPipeline = $true)][switch]$DisableBingSearches, @@ -357,40 +358,74 @@ if ((-not $PSBoundParameters.Count) -or $RunDefaults -or $RunWin11Defaults -or ( PrintHeader 'Custom Configuration' - if ($( Read-Host -Prompt "Remove pre-installed bloatware apps? (y/n)" ) -eq 'y') { - AddParameter 'RemoveApps' 'Remove bloatware apps' + # Show options for removing apps, only continue on valid input + Do { + Write-Host "Options:" -ForegroundColor Yellow + Write-Host " (n) Don't remove any apps" -ForegroundColor Yellow + Write-Host " (1) Only remove the default selection of bloatware apps from 'Appslist.txt'" -ForegroundColor Yellow + Write-Host " (2) Remove full selection of bloatware apps including the mail & calendar apps, developer apps and gaming apps" -ForegroundColor Yellow + Write-Host " (3) Specify which appcategories to remove" -ForegroundColor Yellow + $RemoveCommAppInput = Read-Host "Remove any pre-installed apps? (n/1/2/3)" + } + while ($RemoveCommAppInput -ne 'n' -and $RemoveCommAppInput -ne '0' -and $RemoveCommAppInput -ne '1' -and $RemoveCommAppInput -ne '2' -and $RemoveCommAppInput -ne '3') - # Show options for removing communication-related apps, only continue on valid input - Do { - Write-Output "" - Write-Output " Options:" - Write-Output " (n) Don't remove communication-related apps" - Write-Output " (1) Remove Mail, Calender, People and Outlook for Windows apps" - Write-Output " (2) Only remove Mail, Calender and People apps" - Write-Output " (3) Only remove Outlook for Windows app" - $RemoveCommAppInput = Read-Host " Also remove communication-related apps? (n/1/2/3)" + # Select correct option based on user input + switch ($RemoveCommAppInput) { + '1' { + AddParameter 'RemoveApps' 'Remove default selection of bloatware apps' } - while ($RemoveCommAppInput -ne 'n' -and $RemoveCommAppInput -ne '0' -and $RemoveCommAppInput -ne '1' -and $RemoveCommAppInput -ne '2' -and $RemoveCommAppInput -ne '3') - - # Select correct taskbar search option based on user input - switch ($RemoveCommAppInput) { - '1' { - AddParameter 'RemoveCommApps' 'Remove the Mail, Calender, and People apps' - AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' - } - '2' { - AddParameter 'RemoveCommApps' 'Remove the Mail, Calender, and People apps' - } - '3' { - AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' - } - } - - Write-Output "" - - if ($( Read-Host -Prompt " Also remove gaming-related apps such as the Xbox App and Xbox Gamebar? (y/n)" ) -eq 'y') { + '2' { + AddParameter 'RemoveApps' 'Remove default selection of bloatware apps' + AddParameter 'RemoveCommApps' 'Remove the Mail, Calender, and People apps' + AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' + AddParameter 'RemoveDevApps' 'Remove developer-related apps' AddParameter 'RemoveGamingApps' 'Remove the Xbox App and Xbox Gamebar' } + '3' { + Write-Output "" + + if ($( Read-Host -Prompt " Remove default selection of bloatware apps from 'Appslist.txt'? (y/n)" ) -eq 'y') { + AddParameter 'RemoveApps' 'Remove default selection of bloatware apps' + } + + # Show options for removing communication-related apps, only continue on valid input + Do { + Write-Output "" + Write-Host " Options:" -ForegroundColor Yellow + Write-Host " (n) Don't remove communication-related apps" -ForegroundColor Yellow + Write-Host " (1) Remove Mail, Calender, People and Outlook for Windows apps" -ForegroundColor Yellow + Write-Host " (2) Only remove Mail, Calender and People apps" -ForegroundColor Yellow + Write-Host " (3) Only remove Outlook for Windows app" -ForegroundColor Yellow + $RemoveCommAppInput = Read-Host " Remove communication-related apps? (n/1/2/3)" + } + while ($RemoveCommAppInput -ne 'n' -and $RemoveCommAppInput -ne '0' -and $RemoveCommAppInput -ne '1' -and $RemoveCommAppInput -ne '2' -and $RemoveCommAppInput -ne '3') + + # Select correct option based on user input + switch ($RemoveCommAppInput) { + '1' { + AddParameter 'RemoveCommApps' 'Remove the Mail, Calender, and People apps' + AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' + } + '2' { + AddParameter 'RemoveCommApps' 'Remove the Mail, Calender, and People apps' + } + '3' { + AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' + } + } + + Write-Output "" + + if ($( Read-Host -Prompt " Remove developer-related apps such as Remote Desktop, DevHome and Power Automate? (y/n)" ) -eq 'y') { + AddParameter 'RemoveDevApps' 'Remove developer-related apps' + } + + Write-Output "" + + if ($( Read-Host -Prompt " Remove gaming-related apps such as the Xbox App and Xbox Gamebar? (y/n)" ) -eq 'y') { + AddParameter 'RemoveGamingApps' 'Remove the Xbox App and Xbox Gamebar' + } + } } # Only show this option for windows 11 users running build 22621 or later @@ -453,12 +488,12 @@ if ((-not $PSBoundParameters.Count) -or $RunDefaults -or $RunWin11Defaults -or ( # Show options for search icon on taskbar, only continue on valid input Do { Write-Output "" - Write-Output " Options:" - Write-Output " (n) No change" - Write-Output " (1) Hide search icon from the taskbar" - Write-Output " (2) Show search icon on the taskbar" - Write-Output " (3) Show search icon with label on the taskbar" - Write-Output " (4) Show search box on the taskbar" + Write-Host " Options:" -ForegroundColor Yellow + Write-Host " (n) No change" -ForegroundColor Yellow + Write-Host " (1) Hide search icon from the taskbar" -ForegroundColor Yellow + Write-Host " (2) Show search icon on the taskbar" -ForegroundColor Yellow + Write-Host " (3) Show search icon with label on the taskbar" -ForegroundColor Yellow + Write-Host " (4) Show search box on the taskbar" -ForegroundColor Yellow $TbSearchInput = Read-Host " Hide or change the search icon on the taskbar? (n/1/2/3/4)" } while ($TbSearchInput -ne 'n' -and $TbSearchInput -ne '0' -and $TbSearchInput -ne '1' -and $TbSearchInput -ne '2' -and $TbSearchInput -ne '3' -and $TbSearchInput -ne '4') @@ -632,6 +667,16 @@ else { Write-Output "" continue } + 'RemoveDevApps' { + Write-Output "> Removing developer-related related apps..." + + $AppsList = '*Microsoft.PowerAutomateDesktop*', '*Microsoft.RemoteDesktop*', '*Windows.DevHome*' + RemoveSpecificApps $AppsList + + Write-Output "" + + continue + } 'RemoveGamingApps' { Write-Output "> Removing gaming related apps..." @@ -654,7 +699,7 @@ else { RegImport "> Disabling bing search, bing AI & cortana in windows search..." $PSScriptRoot\Regfiles\Disable_Bing_Cortana_In_Search.reg continue } - 'DisableLockscreenTips' { + {$_ -in "DisableLockscrTips", "DisableLockscreenTips"} { RegImport "> Disabling tips & tricks on the lockscreen..." $PSScriptRoot\Regfiles\Disable_Lockscreen_Tips.reg continue }