56 Commits

Author SHA1 Message Date
Raphire
75ef30e6fb Update Get.ps1 to new release 2025-10-06 23:43:19 +02:00
Raphire
c1a48120d3 Fix wording 2025-10-06 23:42:02 +02:00
Andrea Boero
dc30664001 Added options to change multi-monitor taskbar behaviour (#346)
Co-authored-by: Raphire <9938813+Raphire@users.noreply.github.com>
2025-10-06 23:33:04 +02:00
Raphire
5ae374dff3 Add extra disclaimer to default mode app removal. 2025-10-06 22:56:00 +02:00
Raphire
6c97bbead0 Added Dev Home and Power Automate to default app selection.
With this, the option to specifically remove developer related apps (RemoveDevApps) was also removed.
2025-10-06 21:51:19 +02:00
Raphire
f46618dfe2 Update README.md 2025-09-28 23:38:17 +02:00
Raphire
cf1a58b0d0 Add missing sysprep registry keys for the combine taskbar buttons feature. 2025-09-28 23:28:54 +02:00
Raphire
86a2555454 Fix issue where clearing/replacing the start menu pinned apps would fail and crash under certain circumstances, part 2 2025-09-28 20:45:39 +02:00
Raphire
070e692b90 Update wording in README and Info screen 2025-09-28 19:12:43 +02:00
Raphire
44aa34ab9f Update Get.ps1 to new release 2025-09-28 18:59:56 +02:00
Raphire
60a1b3eb6b Update wording in README and Info screen 2025-09-28 18:59:20 +02:00
Raphire
3f8caf86ee Fix issue where clearing/replacing the start menu pinned apps would fail and crash under certain circumstances
Thanks @staman81, see #263
2025-09-28 18:48:06 +02:00
Raphire
f1595cd91e Fix displayed app count in script output when removing apps 2025-09-28 18:21:14 +02:00
Raphire
c52338648d Update Get.ps1 to new release 2025-09-27 14:41:45 +02:00
Raphire
d8e86a43f5 Merge branch 'master' of https://github.com/Raphire/Win11Debloat 2025-09-27 14:36:38 +02:00
Raphire
cf982af87c Change order of Default Mode parameters 2025-09-27 14:36:37 +02:00
Andrea Boero
a368b4a8ba Added an option to choose combine mode for Taskbar buttons (#329) 2025-09-27 14:34:01 +02:00
Raphire
7c9e25d891 Default Mode Improvements
- Added Click to Do to default
- Default mode now shows a list of apps that are slated to be removed
- Default mode changes summary now only shows the changes it will actually apply
2025-09-27 14:19:41 +02:00
Raphire
58d47c77cc Remove prompts after system restore creation errors 2025-09-22 21:41:24 +02:00
Raphire
7004fa3b31 Add option to disable Click to Do (AI image/text analysis feature) 2025-09-17 23:33:52 +02:00
tylerhekman
899edfc9c6 Removed escaped double quotes that caused incorrect parsing for paths with spaces (#322) 2025-09-14 12:18:58 +02:00
Raphire
f9f7ba828c Update README.md 2025-09-14 00:02:29 +02:00
Raphire
02cb390ac6 Create restore point before removing apps in Default mode 2025-09-13 23:41:25 +02:00
Raphire
4e4bf0d553 Added option to not remove any apps, or remove your custom selection of apps in Default mode 2025-09-13 23:36:38 +02:00
Raphire
bdf55ed6ba Only include Recall in defaults for Windows 11 2025-09-12 22:24:38 +02:00
Raphire
b0fed2afaf Only include Recall in defaults for Windows 11 2025-09-12 22:23:24 +02:00
Raphire
b9594f2671 Include Disable Recall with default mode 2025-09-12 21:03:14 +02:00
Raphire
4719d80dd9 Update appslist in README.md 2025-09-12 19:20:11 +02:00
Raphire
83f7fc7398 Update appslist in README.md 2025-09-12 19:19:35 +02:00
Raphire
cf1b43dd3f Update appslist in README.md 2025-09-12 19:09:08 +02:00
Raphire
15a520e219 Add Undo file for MS Edge telemetry policies 2025-09-12 00:34:55 +02:00
Raphire
a38c78824e Add description of new policy keys 2025-09-12 00:18:58 +02:00
Raphire
0ba9d1d7c3 Added extra policies to disable telemetry and diagnostic data in Microsoft Edge 2025-09-12 00:17:09 +02:00
Raphire
9b502a49c4 Added extra policies to disable more suggested content in Microsoft Edge 2025-09-12 00:08:15 +02:00
Raphire
260895618d Update Get.ps1 to new release 2025-09-08 20:38:39 +02:00
Raphire
a662273414 Fix issue with clearing/replacing start for default user when directory doesn't exist yet #314 2025-09-08 19:54:13 +02:00
Raphire
6c4b401a21 Update Get.ps1 to new release 2025-09-07 19:26:51 +02:00
Raphire
75f71972b3 Update wording around DisableWidgets feature #302
To clarify this feature also disables widgets on the lockscreen.
2025-09-07 19:13:51 +02:00
Raphire
c3de7803ae Fix dark mode not applying correctly in Sysprep mode 2025-09-07 17:51:25 +02:00
Raphire
8ce501511f Fix script not using correct user directory paths when run as system account #310 2025-09-07 15:04:29 +02:00
Jeffrey
a65548b9b7 Properly check if Modern Standby is supported (#298)
Using `powercfg /a` output instead of checking for battery
2025-08-22 17:50:47 +02:00
Sashank
98b9348b70 Add DisableBackupNotifications parameter (#297) 2025-08-20 20:15:50 +02:00
Sashank
b100cf15f2 Add Disable Modern Standby networking to prevent battery drain (#288) 2025-08-19 19:54:28 +02:00
Raphire
b6dc5c0147 Update README.md 2025-08-16 02:17:47 +02:00
Raphire
a68c0a53fb Fix system restore actions not being printed 2025-08-16 02:03:53 +02:00
Raphire
31b13bf861 Update Get.ps1 to new release 2025-08-16 01:52:04 +02:00
Raphire
62e95376a6 Add time-out to System Restore Point creation #289 2025-08-16 01:37:43 +02:00
Raphire
c881858f32 Add option to disable ads, newsfeed and AI in MS Edge 2025-08-16 01:36:00 +02:00
Raphire
cc3fc90592 Add missing key from Disable Paint AI Sysprep/Undo files 2025-08-16 00:04:53 +02:00
Raphire
70ebe29f70 Update Get.ps1 to new release 2025-08-01 21:54:26 +02:00
Raphire
74ffa9618c Update README.md 2025-08-01 21:46:21 +02:00
Raphire
1cf461940d Add option to disable AI features in Paint & Notepad 2025-08-01 21:21:38 +02:00
Connor Shugg
9c92f30160 Add "Last Active Click" Taskbar Behaviour Option (#280) 2025-07-30 21:30:51 +02:00
Raphire
49233234fa Update README.md and script info screens 2025-06-17 23:08:36 +02:00
Jeffrey
f5057625d8 Update README.md 2025-06-17 23:03:11 +02:00
Alex
41b0006430 Updated app descriptions (#260)
Updated the app descriptions that were not already included in the `Appslist.txt` file.
2025-06-16 23:52:48 +02:00
52 changed files with 972 additions and 462 deletions

View File

@@ -2,94 +2,96 @@
# The apps below this line WILL be uninstalled by default. Add a # character in front of any app you want to # # The apps below this line WILL be uninstalled by default. Add a # character in front of any app you want to #
# KEEP installed by default. # # KEEP installed by default. #
# -------------------------------------------------------------------------------------------------------------- # # -------------------------------------------------------------------------------------------------------------- #
Clipchamp.Clipchamp Clipchamp.Clipchamp # Video editor from Microsoft
Microsoft.3DBuilder Microsoft.3DBuilder # Basic 3D modeling software
Microsoft.549981C3F5F10 #Cortana app Microsoft.549981C3F5F10 # Cortana app (Voice assistant)
Microsoft.BingFinance Microsoft.BingFinance # Finance news and tracking via Bing (Discontinued)
Microsoft.BingFoodAndDrink Microsoft.BingFoodAndDrink # Recipes and food news via Bing (Discontinued)
Microsoft.BingHealthAndFitness Microsoft.BingHealthAndFitness # Health and fitness tracking/news via Bing (Discontinued)
Microsoft.BingNews Microsoft.BingNews # News aggregator via Bing (Replaced by Microsoft News/Start)
Microsoft.BingSports Microsoft.BingSports # Sports news and scores via Bing (Discontinued)
Microsoft.BingTranslator Microsoft.BingTranslator # Translation service via Bing
Microsoft.BingTravel Microsoft.BingTravel # Travel planning and news via Bing (Discontinued)
Microsoft.BingWeather Microsoft.BingWeather # Weather forecast via Bing
Microsoft.Copilot Microsoft.Copilot # AI assistant integrated into Windows
Microsoft.Getstarted # Cannot be uninstalled in Windows 11 Microsoft.Getstarted # Tips and introductory guide for Windows (Cannot be uninstalled in Windows 11)
Microsoft.Messaging Microsoft.Messaging # Messaging app, often integrates with Skype (Largely deprecated)
Microsoft.Microsoft3DViewer Microsoft.Microsoft3DViewer # Viewer for 3D models
Microsoft.MicrosoftJournal Microsoft.MicrosoftJournal # Digital note-taking app optimized for pen input
Microsoft.MicrosoftOfficeHub Microsoft.MicrosoftOfficeHub # Hub to access Microsoft Office apps and documents (Precursor to Microsoft 365 app)
Microsoft.MicrosoftPowerBIForWindows Microsoft.MicrosoftPowerBIForWindows # Business analytics service client
Microsoft.MicrosoftSolitaireCollection Microsoft.MicrosoftSolitaireCollection # Collection of solitaire card games
Microsoft.MicrosoftStickyNotes Microsoft.MicrosoftStickyNotes # Digital sticky notes app (Deprecated & replaced by OneNote)
Microsoft.MixedReality.Portal Microsoft.MixedReality.Portal # Portal for Windows Mixed Reality headsets
Microsoft.NetworkSpeedTest Microsoft.NetworkSpeedTest # Internet connection speed test utility
Microsoft.News Microsoft.News # News aggregator (Replaced Bing News, now part of Microsoft Start)
Microsoft.Office.OneNote Microsoft.Office.OneNote # Digital note-taking app (Universal Windows Platform version)
Microsoft.Office.Sway Microsoft.Office.Sway # Presentation and storytelling app
Microsoft.OneConnect Microsoft.OneConnect # Mobile Operator management app (Replaced by Mobile Plans)
Microsoft.Print3D Microsoft.Print3D # 3D printing preparation software
Microsoft.SkypeApp Microsoft.PowerAutomateDesktop # Desktop automation tool (RPA)
Microsoft.Todos Microsoft.SkypeApp # Skype communication app (Universal Windows Platform version)
Microsoft.WindowsAlarms Microsoft.Todos # To-do list and task management app
Microsoft.WindowsFeedbackHub Microsoft.Windows.DevHome # Developer dashboard and tool configuration utility, no longer supported
Microsoft.WindowsMaps Microsoft.WindowsAlarms # Alarms & Clock app
Microsoft.WindowsSoundRecorder Microsoft.WindowsFeedbackHub # App for providing feedback to Microsoft on Windows
Microsoft.XboxApp # Old Xbox Console Companion App, no longer supported Microsoft.WindowsMaps # Mapping and navigation app
Microsoft.ZuneVideo Microsoft.WindowsSoundRecorder # Basic audio recording app
MicrosoftCorporationII.MicrosoftFamily # Family Safety App Microsoft.XboxApp # Old Xbox Console Companion App, no longer supported
MicrosoftCorporationII.QuickAssist Microsoft.ZuneVideo # Movies & TV app for renting/buying/playing video content (Rebranded as "Films & TV")
MicrosoftTeams # Old MS Teams personal (MS Store) MicrosoftCorporationII.MicrosoftFamily # Family Safety App for managing family accounts and settings
MSTeams # New MS Teams app MicrosoftCorporationII.QuickAssist # Remote assistance tool
MicrosoftTeams # Old MS Teams personal (MS Store version)
MSTeams # New MS Teams app (Work/School or Personal)
ACGMediaPlayer ACGMediaPlayer # Media player app
ActiproSoftwareLLC ActiproSoftwareLLC # Potentially UI controls or software components, often bundled by OEMs
AdobeSystemsIncorporated.AdobePhotoshopExpress AdobeSystemsIncorporated.AdobePhotoshopExpress # Basic photo editing app from Adobe
Amazon.com.Amazon Amazon.com.Amazon # Amazon shopping app
AmazonVideo.PrimeVideo AmazonVideo.PrimeVideo # Amazon Prime Video streaming service app
Asphalt8Airborne Asphalt8Airborne # Racing game
AutodeskSketchBook AutodeskSketchBook # Digital drawing and sketching app
CaesarsSlotsFreeCasino CaesarsSlotsFreeCasino # Casino slot machine game
COOKINGFEVER COOKINGFEVER # Restaurant simulation game
CyberLinkMediaSuiteEssentials CyberLinkMediaSuiteEssentials # Multimedia software suite (often preinstalled by OEMs)
DisneyMagicKingdoms DisneyMagicKingdoms # Disney theme park building game
Disney Disney # General Disney content app (may vary by region/OEM, often Disney+)
DrawboardPDF DrawboardPDF # PDF viewing and annotation app, often focused on pen input
Duolingo-LearnLanguagesforFree Duolingo-LearnLanguagesforFree # Language learning app
EclipseManager EclipseManager # Often related to specific OEM software or utilities (e.g., for managing screen settings)
Facebook Facebook # Facebook social media app
FarmVille2CountryEscape FarmVille2CountryEscape # Farming simulation game
fitbit fitbit # Fitbit activity tracker companion app
Flipboard Flipboard # News and social network aggregator styled as a magazine
HiddenCity HiddenCity # Hidden object puzzle adventure game
HULULLC.HULUPLUS HULULLC.HULUPLUS # Hulu streaming service app
iHeartRadio iHeartRadio # Internet radio streaming app
Instagram Instagram # Instagram social media app
king.com.BubbleWitch3Saga king.com.BubbleWitch3Saga # Puzzle game from King
king.com.CandyCrushSaga king.com.CandyCrushSaga # Puzzle game from King
king.com.CandyCrushSodaSaga king.com.CandyCrushSodaSaga # Puzzle game from King
LinkedInforWindows LinkedInforWindows # LinkedIn professional networking app
MarchofEmpires MarchofEmpires # Strategy game
Netflix Netflix # Netflix streaming service app
NYTCrossword NYTCrossword # New York Times crossword puzzle app
OneCalendar OneCalendar # Calendar aggregation app
PandoraMediaInc PandoraMediaInc # Pandora music streaming app
PhototasticCollage PhototasticCollage # Photo collage creation app
PicsArt-PhotoStudio PicsArt-PhotoStudio # Photo editing and creative app
Plex Plex # Media server and player app
PolarrPhotoEditorAcademicEdition PolarrPhotoEditorAcademicEdition # Photo editing app (Academic Edition)
Royal Revolt Royal Revolt # Tower defense / strategy game
Shazam Shazam # Music identification app
Sidia.LiveWallpaper Sidia.LiveWallpaper # Live wallpaper app
SlingTV SlingTV # Live TV streaming service app
Spotify Spotify # Spotify music streaming app
TikTok TikTok # TikTok short-form video app
TuneInRadio TuneInRadio # Internet radio streaming app
Twitter Twitter # Twitter (now X) social media app
Viber Viber # Messaging and calling app
WinZipUniversal WinZipUniversal # File compression and extraction utility (Universal Windows Platform version)
Wunderlist Wunderlist # To-do list app (Acquired by Microsoft, functionality moved to Microsoft To Do)
XING XING # Professional networking platform popular in German-speaking countries
@@ -98,54 +100,52 @@ XING
# The apps below this line will NOT be uninstalled by default. Remove the # character in front of any app you # # The apps below this line will NOT be uninstalled by default. Remove the # character in front of any app you #
# want to UNINSTALL by default. # # want to UNINSTALL by default. #
# ------------------------------------------------------------------------------------------------------------- # # ------------------------------------------------------------------------------------------------------------- #
#Microsoft.BingSearch # Web Search from Microsoft Bing (Integrates into Windows Search) #Microsoft.BingSearch # Web Search from Microsoft Bing (Integrates into Windows Search)
#Microsoft.Copilot # New Microsoft Copilot app #Microsoft.Copilot # New Microsoft Copilot app (AI assistant)
#Microsoft.Edge # Edge browser (Can only be uninstalled in European Economic Area) #Microsoft.Edge # Edge browser (Can only be uninstalled in European Economic Area)
#Microsoft.GamingApp # Modern Xbox Gaming App, required for installing some PC games #Microsoft.GamingApp # Modern Xbox Gaming App, required for installing some PC games
#Microsoft.GetHelp # Required for some Windows 11 Troubleshooters #Microsoft.GetHelp # Required for some Windows 11 Troubleshooters and support interactions
#Microsoft.MSPaint # Paint 3D #Microsoft.MSPaint # Paint 3D (Modern paint application with 3D features)
#Microsoft.OneDrive # OneDrive consumer #Microsoft.OneDrive # OneDrive consumer cloud storage client
#Microsoft.OutlookForWindows # New mail app: Outlook for Windows #Microsoft.OutlookForWindows # New mail app: Outlook for Windows
#Microsoft.Paint # Classic Paint #Microsoft.Paint # Classic Paint (Traditional 2D paint application)
#Microsoft.People # Required for & included with Mail & Calendar #Microsoft.People # Required for & included with Mail & Calendar (Contacts management)
#Microsoft.PowerAutomateDesktop #Microsoft.RemoteDesktop # Remote Desktop client app
#Microsoft.RemoteDesktop #Microsoft.ScreenSketch # Snipping Tool (Screenshot and annotation tool)
#Microsoft.ScreenSketch # Snipping Tool #Microsoft.StartExperiencesApp # This app powers Windows Widgets My Feed
#Microsoft.StartExperiencesApp # This app powers Windows Widgets My Feed #Microsoft.Whiteboard # Digital collaborative whiteboard app
#Microsoft.Whiteboard # Only preinstalled on devices with touchscreen and/or pen support #Microsoft.Windows.Photos # Default photo viewing and basic editing app
#Microsoft.Windows.DevHome #Microsoft.WindowsCalculator # Calculator app
#Microsoft.Windows.Photos #Microsoft.WindowsCamera # Camera app for using built-in or connected cameras
#Microsoft.WindowsCalculator #Microsoft.windowscommunicationsapps # Mail & Calendar app suite
#Microsoft.WindowsCamera #Microsoft.WindowsNotepad # Notepad text editor app
#Microsoft.windowscommunicationsapps # Mail & Calendar #Microsoft.WindowsStore # Microsoft Store, WARNING: This app cannot be reinstalled easily if removed!
#Microsoft.WindowsNotepad #Microsoft.WindowsTerminal # New default terminal app in windows 11 (Command Prompt, PowerShell, WSL)
#Microsoft.WindowsStore # Microsoft Store, WARNING: This app cannot be reinstalled! #Microsoft.Xbox.TCUI # UI framework, seems to be required for MS store, photos and certain games
#Microsoft.WindowsTerminal # New default terminal app in windows 11 #Microsoft.XboxGameOverlay # Game overlay, required/useful for some games (Part of Xbox Game Bar)
#Microsoft.Xbox.TCUI # UI framework, seems to be required for MS store, photos and certain games #Microsoft.XboxGamingOverlay # Game overlay, required/useful for some games (Part of Xbox Game Bar)
#Microsoft.XboxGameOverlay # Game overlay, required/useful for some games #Microsoft.XboxIdentityProvider # Xbox sign-in framework, required for some games and Xbox services
#Microsoft.XboxGamingOverlay # Game overlay, required/useful for some games #Microsoft.XboxSpeechToTextOverlay # Might be required for some games, WARNING: This app cannot be reinstalled easily! (Accessibility feature)
#Microsoft.XboxIdentityProvider # Xbox sign-in framework, required for some games #Microsoft.YourPhone # Phone link (Connects Android/iOS phone to PC)
#Microsoft.XboxSpeechToTextOverlay # Might be required for some games, WARNING: This app cannot be reinstalled! #Microsoft.ZuneMusic # Modern Media Player (Replaced Groove Music, plays local audio/video)
#Microsoft.YourPhone # Phone link #MicrosoftWindows.CrossDevice # Phone integration within File Explorer, Camera and more (Part of Phone Link features)
#Microsoft.ZuneMusic # Modern Media Player #AD2F1837.HPAIExperienceCenter # HP OEM software, AI-enhanced features and support
#MicrosoftWindows.CrossDevice # Phone integration within File Explorer, Camera and more #AD2F1837.HPConnectedMusic # HP OEM software for music (Potentially discontinued)
#AD2F1837.HPAIExperienceCenter #AD2F1837.HPConnectedPhotopoweredbySnapfish # HP OEM software for photos, integrated with Snapfish (Potentially discontinued)
#AD2F1837.HPConnectedMusic #AD2F1837.HPDesktopSupportUtilities # HP OEM software providing desktop support tools
#AD2F1837.HPConnectedPhotopoweredbySnapfish #AD2F1837.HPEasyClean # HP OEM software for system cleaning or optimization
#AD2F1837.HPDesktopSupportUtilities #AD2F1837.HPFileViewer # HP OEM software for viewing specific file types
#AD2F1837.HPEasyClean #AD2F1837.HPJumpStarts # HP OEM software for tutorials, app discovery, or quick access to HP features
#AD2F1837.HPFileViewer #AD2F1837.HPPCHardwareDiagnosticsWindows # HP OEM software for PC hardware diagnostics
#AD2F1837.HPJumpStarts #AD2F1837.HPPowerManager # HP OEM software for managing power settings and battery
#AD2F1837.HPPCHardwareDiagnosticsWindows #AD2F1837.HPPrinterControl # HP OEM software for managing HP printers
#AD2F1837.HPPowerManager #AD2F1837.HPPrivacySettings # HP OEM software for managing privacy settings
#AD2F1837.HPPrinterControl #AD2F1837.HPQuickDrop # HP OEM software for quick file transfer between devices
#AD2F1837.HPPrivacySettings #AD2F1837.HPQuickTouch # HP OEM software, possibly for touch-specific shortcuts or controls
#AD2F1837.HPQuickDrop #AD2F1837.HPRegistration # HP OEM software for product registration
#AD2F1837.HPQuickTouch #AD2F1837.HPSupportAssistant # HP OEM software for support, updates, and troubleshooting
#AD2F1837.HPRegistration #AD2F1837.HPSureShieldAI # HP OEM security software, likely AI-based threat protection
#AD2F1837.HPSupportAssistant #AD2F1837.HPSystemInformation # HP OEM software for displaying system information
#AD2F1837.HPSureShieldAI #AD2F1837.HPWelcome # HP OEM software providing a welcome experience or initial setup help
#AD2F1837.HPSystemInformation #AD2F1837.HPWorkWell # HP OEM software focused on well-being, possibly with break reminders or ergonomic tips
#AD2F1837.HPWelcome #AD2F1837.myHP # HP OEM central hub app for device info, support, and services
#AD2F1837.HPWorkWell
#AD2F1837.myHP

View File

@@ -1,14 +1,11 @@
Win11Debloat will make the following changes: - Disable & remove Microsoft Copilot
- Remove the default selection of apps, the list can be found in the 'Appslist.txt' file. - Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads
- Disable telemetry, diagnostic data, app-launch tracking & targeted ads. - Disable tips, tricks, suggestions and ads in start, settings, notifications and File Explorer
- Disable tips, tricks, suggestions and ads in start, settings, notifications and more. - Disable ads, suggestions and the MSN news feed in Microsoft Edge
- Disable tips & tricks on the lockscreen. (This may change your lockscreen wallpaper) - Disable tips & tricks on the lockscreen (This may change your lockscreen wallpaper)
- Disable & remove Bing web search, Bing AI and Cortana from Windows search. - Disable & remove Bing web search, Bing AI and Cortana from Windows search
- Disable Microsoft Copilot. (Windows 11 build 22621+) - Show file extensions for known file types
- Disable Fast Start-up to ensure a full shutdown. - Disable widgets on the taskbar & lockscreen
- Show file extensions for known file types. - Disable Fast Start-up
- Hide the 3D objects folder in Windows Explorer. (Windows 10 only)
- Disable the widget service & hide the icon from the taskbar.
- Hide the Chat (meet now) icon from the taskbar.

46
Assets/Menus/Info Normal file → Executable file
View File

@@ -6,18 +6,23 @@ disable telemetry, remove intrusive interface elements and much more.
All Features All Features
------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------
App Removal App Removal
- Remove a wide variety of bloatware apps. - Remove a wide variety of preinstalled apps.
- Remove or replace all pinned apps from start for the current user, or for all existing & new users. (W11 only) - Remove or replace all pinned apps from start for the current user, or for all existing & new users. (W11 only)
Telemetry, Tracking & Suggested Content Telemetry, Tracking & Suggested Content
- Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads. - Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads.
- Disable tips, tricks, suggestions & ads across Windows. - Disable tips, tricks, suggestions & ads across Windows.
- Disable ads, suggestions and the MSN news feed in Microsoft Edge.
- Disable the 'Windows Spotlight' desktop background option. - Disable the 'Windows Spotlight' desktop background option.
Bing, Copilot & More Bing Web Search, Copilot & AI Features
- Disable & remove Bing web search, Bing AI and Cortana from Windows search. - Disable & remove Bing web search, Bing AI and Cortana from Windows search.
- Disable & remove Microsoft Copilot. (W11 only) - Disable & remove Microsoft Copilot.
- Disable Windows Recall snapshots. (W11 only) - Disable Windows Recall. (W11 only)
- Disable Click to Do, AI text & image analysis tool. (W11 only)
- Disable AI Features in Edge. (W11 only)
- Disable AI Features in Paint. (W11 only)
- Disable AI Features in Notepad. (W11 only)
Personalisation Personalisation
- Enable dark mode for system and apps. - Enable dark mode for system and apps.
@@ -29,27 +34,31 @@ Personalisation
File Explorer File Explorer
- Change the default location that File Explorer opens to. - Change the default location that File Explorer opens to.
- Show hidden files, folders & drives. - Show hidden files, folders and drives.
- Show file extensions for known file types. - Show file extensions for known file types.
- Hide the Home or Gallery section from the File Explorer navigation pane. (W11 only) - Hide the Home or Gallery section from the File Explorer navigation pane. (W11 only)
- Hide the 3D objects, music or OneDrive folder from the File Explorer sidepanel. (W10 only) - Hide the 3D objects, music or OneDrive folder from the File Explorer navigation pane. (W10 only)
- Hide duplicate removable drive entries from the File Explorer sidepanel. - Hide duplicate removable drive entries from the File Explorer navigation pane.
Taskbar Taskbar
- Align taskbar icons to the left. (W11 only) - Align taskbar icons to the left. (W11 only)
- Choose combine mode for taskbar buttons and labels. (W11 only)
- Choose how app icons are shown on the taskbar when using multiple monitors. (W11 only)
- Hide or change the search icon/box on the taskbar. (W11 only) - Hide or change the search icon/box on the taskbar. (W11 only)
- Hide the taskview button from the taskbar. (W11 only) - Hide the taskview button from the taskbar. (W11 only)
- Disable the widgets service & hide icon from the taskbar. - Disable widgets on the taskbar & lockscreen.
- Hide the chat (meet now) icon from the taskbar. - Hide the chat (meet now) icon from the taskbar. (W10 only)
- Enable the 'End Task' option in the taskbar right click menu. (W11 only) - Enable the 'End Task' option in the taskbar right click menu. (W11 only)
- Enable the 'Last Active Click' behavior in the taskbar app area.
Start Start
- Disable & hide the recommended section in the start menu. (W11 only) - Disable the recommended section in the start menu. (W11 only)
- Disable the Phone Link mobile devices integration in the start menu. (W11 only) - Disable the Phone Link mobile devices integration in the start menu. (W11 only)
Other Other
- Disable Xbox game/screen recording, this also stops gaming overlay popups. - Disable Xbox game/screen recording, this also stops gaming overlay popups.
- Disable Fast Start-up to ensure a full shutdown. - Disable Fast Start-up to ensure a full shutdown.
- Disable network connectivity during Modern Standby to reduce battery drain. (W11 only)
- Option to apply changes to a different user, instead of the currently logged in user. - Option to apply changes to a different user, instead of the currently logged in user.
- Sysprep mode to apply changes to the Windows Default user profile. - Sysprep mode to apply changes to the Windows Default user profile.
@@ -57,16 +66,19 @@ Other
Default mode Default mode
------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------
The default mode applies the changes that are recommended for most users. This includes: The default mode applies the changes that are recommended for most users. This includes:
- Remove the default selection of apps, the list can be found in the 'Appslist.txt' file. - Remove the default selection or your custom selection of apps.
- Disable telemetry, diagnostic data, app-launch tracking & targeted ads. - Disable telemetry, diagnostic data, app-launch tracking & targeted ads.
- Disable tips, tricks, suggestions and ads in start, settings, notifications and more. - Disable tips, tricks, suggestions & ads across Windows.
- Disable tips & tricks on the lockscreen. (This may change your lockscreen wallpaper) - Disable ads, suggestions and the MSN news feed in Microsoft Edge.
- Disable & remove Bing web search, Bing AI and Cortana from Windows search. - Disable & remove Bing web search, Bing AI and Cortana from Windows search.
- Disable Microsoft Copilot. (Windows 11 build 22621+) - Disable & remove Microsoft Copilot.
- Disable Windows Recall. (W11 only)
- Disable Click to Do, AI text & image analysis tool. (W11 only)
- Disable Fast Start-up to ensure a full shutdown. - Disable Fast Start-up to ensure a full shutdown.
- Disable network connectivity during Modern Standby to reduce battery drain. (W11 only)
- Show file extensions for known file types. - Show file extensions for known file types.
- Hide the 3D objects folder in Windows Explorer. (Windows 10 only) - Hide the 3D objects folder in Windows Explorer. (W10 only)
- Disable the widget service & hide the icon from the taskbar. - Disable widgets on the taskbar & lockscreen.
- Hide the Chat (meet now) icon from the taskbar. - Hide the Chat (meet now) icon from the taskbar. (W10 only)

16
Get.ps1
View File

@@ -6,23 +6,25 @@ param (
[string]$User, [string]$User,
[switch]$CreateRestorePoint, [switch]$CreateRestorePoint,
[switch]$RunAppsListGenerator, [switch]$RunAppConfigurator, [switch]$RunAppsListGenerator, [switch]$RunAppConfigurator,
[switch]$RunDefaults, [switch]$RunWin11Defaults, [switch]$RunDefaults,
[switch]$RunDefaultsLite,
[switch]$RunSavedSettings, [switch]$RunSavedSettings,
[switch]$RemoveApps, [switch]$RemoveApps,
[switch]$RemoveAppsCustom, [switch]$RemoveAppsCustom,
[switch]$RemoveGamingApps, [switch]$RemoveGamingApps,
[switch]$RemoveCommApps, [switch]$RemoveCommApps,
[switch]$RemoveDevApps,
[switch]$RemoveHPApps, [switch]$RemoveHPApps,
[switch]$RemoveW11Outlook, [switch]$RemoveW11Outlook,
[switch]$ForceRemoveEdge, [switch]$ForceRemoveEdge,
[switch]$DisableDVR, [switch]$DisableDVR,
[switch]$DisableTelemetry, [switch]$DisableTelemetry,
[switch]$DisableFastStartup, [switch]$DisableFastStartup,
[switch]$DisableModernStandbyNetworking,
[switch]$DisableBingSearches, [switch]$DisableBing, [switch]$DisableBingSearches, [switch]$DisableBing,
[switch]$DisableDesktopSpotlight, [switch]$DisableDesktopSpotlight,
[switch]$DisableLockscrTips, [switch]$DisableLockscreenTips, [switch]$DisableLockscrTips, [switch]$DisableLockscreenTips,
[switch]$DisableWindowsSuggestions, [switch]$DisableSuggestions, [switch]$DisableWindowsSuggestions, [switch]$DisableSuggestions,
[switch]$DisableEdgeAds,
[switch]$DisableSettings365Ads, [switch]$DisableSettings365Ads,
[switch]$DisableSettingsHome, [switch]$DisableSettingsHome,
[switch]$ShowHiddenFolders, [switch]$ShowHiddenFolders,
@@ -32,15 +34,23 @@ param (
[switch]$DisableTransparency, [switch]$DisableTransparency,
[switch]$DisableAnimations, [switch]$DisableAnimations,
[switch]$TaskbarAlignLeft, [switch]$TaskbarAlignLeft,
[switch]$CombineTaskbarAlways, [switch]$CombineTaskbarWhenFull, [switch]$CombineTaskbarNever,
[switch]$CombineMMTaskbarAlways, [switch]$CombineMMTaskbarWhenFull, [switch]$CombineMMTaskbarNever,
[switch]$MMTaskbarModeAll, [switch]$MMTaskbarModeMainActive, [switch]$MMTaskbarModeActive,
[switch]$HideSearchTb, [switch]$ShowSearchIconTb, [switch]$ShowSearchLabelTb, [switch]$ShowSearchBoxTb, [switch]$HideSearchTb, [switch]$ShowSearchIconTb, [switch]$ShowSearchLabelTb, [switch]$ShowSearchBoxTb,
[switch]$HideTaskview, [switch]$HideTaskview,
[switch]$DisableStartRecommended, [switch]$DisableStartRecommended,
[switch]$DisableStartPhoneLink, [switch]$DisableStartPhoneLink,
[switch]$DisableCopilot, [switch]$DisableCopilot,
[switch]$DisableRecall, [switch]$DisableRecall,
[switch]$DisableClickToDo,
[switch]$DisablePaintAI,
[switch]$DisableNotepadAI,
[switch]$DisableEdgeAI,
[switch]$DisableWidgets, [switch]$HideWidgets, [switch]$DisableWidgets, [switch]$HideWidgets,
[switch]$DisableChat, [switch]$HideChat, [switch]$DisableChat, [switch]$HideChat,
[switch]$EnableEndTask, [switch]$EnableEndTask,
[switch]$EnableLastActiveClick,
[switch]$ClearStart, [switch]$ClearStart,
[string]$ReplaceStart, [string]$ReplaceStart,
[switch]$ClearStartAllUsers, [switch]$ClearStartAllUsers,
@@ -79,7 +89,7 @@ Write-Output "------------------------------------------------------------------
Write-Output "> Downloading Win11Debloat..." Write-Output "> Downloading Win11Debloat..."
# Download latest version of Win11Debloat from github as zip archive # Download latest version of Win11Debloat from github as zip archive
Invoke-RestMethod https://api.github.com/repos/Raphire/Win11Debloat/zipball/2025.06.12 -OutFile "$env:TEMP/win11debloat.zip" Invoke-RestMethod https://api.github.com/repos/Raphire/Win11Debloat/zipball/2025.10.06 -OutFile "$env:TEMP/win11debloat.zip"
# Remove old script folder if it exists, except for CustomAppsList and SavedSettings files # Remove old script folder if it exists, except for CustomAppsList and SavedSettings files
if (Test-Path "$env:TEMP/Win11Debloat") { if (Test-Path "$env:TEMP/Win11Debloat") {

381
README.md Normal file → Executable file
View File

@@ -47,7 +47,7 @@ Download & run the script automatically via PowerShell.
3. Wait for the script to automatically download Win11Debloat. 3. Wait for the script to automatically download Win11Debloat.
4. Carefully read through and follow the on-screen instructions. 4. Carefully read through and follow the on-screen instructions.
This method supports parameters to customize the behaviour of the script. Please click [here](https://github.com/Raphire/Win11Debloat/wiki/How-To-Use#parameters) for more information. This method supports command-line parameters to customize the behaviour of the script. Please click [here](https://github.com/Raphire/Win11Debloat/wiki/How-To-Use#parameters) for more information.
### Traditional method ### Traditional method
@@ -83,12 +83,12 @@ This method supports parameters to customize the behaviour of the script. Please
6. Carefully read through and follow the on-screen instructions. 6. Carefully read through and follow the on-screen instructions.
This method supports parameters to customize the behaviour of the script. Please click [here](https://github.com/Raphire/Win11Debloat/wiki/How-To-Use#parameters) for more information. This method supports command-line parameters to customize the behaviour of the script. Please click [here](https://github.com/Raphire/Win11Debloat/wiki/How-To-Use#parameters) for more information.
</details> </details>
## Features ## Features
Below is an overview of the key features and functionality offered by Win11Debloat. For more information about which of these features are included in the default mode please click [here](#default-settings). Below is an overview of the key features and functionality offered by Win11Debloat. For more information about what features are included in the default mode please refer to [this section](#default-settings) below.
> [!Tip] > [!Tip]
> All of the changes made by Win11Debloat can easily be reverted and almost all of the apps can be reinstalled through the Microsoft Store. A full guide on how to revert changes can be found [here](https://github.com/Raphire/Win11Debloat/wiki/Reverting-Changes). > All of the changes made by Win11Debloat can easily be reverted and almost all of the apps can be reinstalled through the Microsoft Store. A full guide on how to revert changes can be found [here](https://github.com/Raphire/Win11Debloat/wiki/Reverting-Changes).
@@ -96,19 +96,24 @@ Below is an overview of the key features and functionality offered by Win11Deblo
#### App Removal #### App Removal
- Remove a wide variety of preinstalled apps. Click [here](https://github.com/Raphire/Win11Debloat/wiki/App-Removal) for more info. - Remove a wide variety of preinstalled apps. Click [here](https://github.com/Raphire/Win11Debloat/wiki/App-Removal) for more info.
- Remove or replace all pinned apps from start for the current user, or for all existing & new users. (Windows 11 only) - Remove or replace all pinned apps from start for the current user, or for all existing & new users. (W11 only)
#### Telemetry, Tracking & Suggested Content #### Telemetry, Tracking & Suggested Content
- Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads. - Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads.
- Disable tips, tricks, suggestions and ads in start, settings, notifications, File Explorer, and on the lockscreen. - Disable tips, tricks, suggestions & ads across Windows.
- Disable ads, suggestions and the MSN news feed in Microsoft Edge.
- Disable the 'Windows Spotlight' desktop background option. - Disable the 'Windows Spotlight' desktop background option.
#### Bing Web Search, Copilot & More #### Bing Web Search, Copilot & AI Features
- Disable & remove Bing web search, Bing AI and Cortana from Windows search. - Disable & remove Bing web search, Bing AI and Cortana from Windows search.
- Disable & remove Microsoft Copilot. (W11 only) - Disable & remove Microsoft Copilot.
- Disable Windows Recall snapshots. (W11 only) - Disable Windows Recall. (W11 only)
- Disable Click to Do, AI text & image analysis tool. (W11 only)
- Disable AI Features in Edge. (W11 only)
- Disable AI Features in Paint. (W11 only)
- Disable AI Features in Notepad. (W11 only)
#### Personalisation #### Personalisation
@@ -131,210 +136,216 @@ Below is an overview of the key features and functionality offered by Win11Deblo
#### Taskbar #### Taskbar
- Align taskbar icons to the left. (W11 only) - Align taskbar icons to the left. (W11 only)
- Choose combine mode for taskbar buttons and labels. (W11 only)
- Choose how app icons are shown on the taskbar when using multiple monitors. (W11 only)
- Hide or change the search icon/box on the taskbar. (W11 only) - Hide or change the search icon/box on the taskbar. (W11 only)
- Hide the taskview button from the taskbar. (W11 only) - Hide the taskview button from the taskbar. (W11 only)
- Disable the widgets service & hide icon from the taskbar. - Disable widgets on the taskbar & lockscreen.
- Hide the chat (meet now) icon from the taskbar. - Hide the chat (meet now) icon from the taskbar. (W10 only)
- Enable the 'End Task' option in the taskbar right click menu. (W11 only) - Enable the 'End Task' option in the taskbar right click menu. (W11 only)
- Enable the 'Last Active Click' behavior in the taskbar app area. This allows you to repeatedly click on an application's icon in the taskbar to switch focus between the open windows of that application.
#### Start #### Start
- Disable & hide the recommended section in the start menu. (W11 only)
- Disable the recommended section in the start menu. (W11 only)
- Disable the Phone Link mobile devices integration in the start menu. (W11 only) - Disable the Phone Link mobile devices integration in the start menu. (W11 only)
#### Other #### Other
- Disable Xbox game/screen recording, this also stops gaming overlay popups. - Disable Xbox game/screen recording, this also stops gaming overlay popups.
- Disable Fast Start-up to ensure a full shutdown. - Disable Fast Start-up to ensure a full shutdown.
- Disable network connectivity during Modern Standby to reduce battery drain. (W11 only)
- Option to [apply changes to a different user](https://github.com/Raphire/Win11Debloat/wiki/Advanced-Features#running-as-another-user), instead of the currently logged in user. - Option to [apply changes to a different user](https://github.com/Raphire/Win11Debloat/wiki/Advanced-Features#running-as-another-user), instead of the currently logged in user.
- [Sysprep mode](https://github.com/Raphire/Win11Debloat/wiki/Advanced-Features#sysprep-mode) to apply changes to the Windows Default user profile. Afterwards, all new users will have the changes automatically applied to them. - [Sysprep mode](https://github.com/Raphire/Win11Debloat/wiki/Advanced-Features#sysprep-mode) to apply changes to the Windows Default user profile. Afterwards, all new users will have the changes automatically applied to them.
### Default Settings ### Default Settings
Win11Debloat offers a 1-click default mode that allows you to quickly and easily apply the changes that are recommended for most people. This includes uninstalling apps that most would consider bloatware, removing many annoying distractions and disabling telemetry and tracking. Expand the section below for more information. Win11Debloat's default mode allows you to quickly and easily apply the changes that are recommended for most people. This includes removing many annoying distractions, disabling telemetry and tracking and optionally uninstalling the default or your custom selection of apps. To apply the default settings, launch the script as you normally would and select option `1` in the script menu.
Alternatively, you can launch the script with the `-RunDefaults` or `-RunDefaultsLite` parameters to immediately run the defaults without going through the menu or the app removal options. Using the `-RunDefaults` parameter will run the script in default mode and remove the default selection of apps. While using the `-RunDefaultsLite` parameter will run the script in default mode without removing any apps. Example:
```Powershell
& ([scriptblock]::Create((irm "https://debloat.raphi.re/"))) -RunDefaults
```
#### Changes included in the default mode
- Remove the default or your custom selection of apps. (See below for the default selection of apps)
- Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads.
- Disable tips, tricks, suggestions & ads across Windows.
- Disable ads, suggestions and the MSN news feed in Microsoft Edge.
- Disable & remove Bing web search, Bing AI and Cortana from Windows search.
- Disable & remove Microsoft Copilot.
- Disable Windows Recall. (W11 only)
- Disable Click to Do, AI text & image analysis tool. (W11 only)
- Disable Fast Start-up to ensure a full shutdown.
- Disable network connectivity during Modern Standby to reduce battery drain. (W11 only)
- Show file extensions for known file types.
- Hide the 3D objects folder under 'This pc' from File Explorer. (W10 only)
- Disable widgets on the taskbar & lockscreen.
- Hide the Chat (meet now) icon from the taskbar. (W10 only)
#### Apps that ARE removed by default
These apps are uninstalled when you opt to remove the default selection of apps.
<details> <details>
<summary>Click to expand</summary> <summary>Click to expand</summary>
<blockquote>
#### Default mode applies the following changes: Microsoft apps:
- Remove the default selection of bloatware apps. (See below for full list) - Clipchamp.Clipchamp (Video editor from Microsoft)
- Disable telemetry, diagnostic data, activity history, app-launch tracking & targeted ads. - Microsoft.3DBuilder (Basic 3D modeling software)
- Disable tips, tricks, suggestions and ads in start, settings, notifications, File Explorer, and on the lockscreen. - Microsoft.549981C3F5F10 (Cortana app, discontinued)
- Disable & remove Bing web search, Bing AI and Cortana from Windows search. - Microsoft.BingFinance (Finance news and tracking via Bing, discontinued)
- Disable Microsoft Copilot. (W11 only) - Microsoft.BingFoodAndDrink (Recipes and food news via Bing, discontinued)
- Disable Fast Start-up to ensure a full shutdown. - Microsoft.BingHealthAndFitness (Health and fitness tracking/news via Bing, discontinued)
- Show file extensions for known file types. - Microsoft.BingNews (News aggregator via Bing, replaced by Microsoft News/Start)
- Hide the 3D objects folder under 'This pc' from File Explorer. (W10 only) - Microsoft.BingSports (Sports news and scores via Bing, discontinued)
- Disable the widget service & hide the icon from the taskbar. - Microsoft.BingTranslator (Translation service via Bing)
- Hide the Chat (meet now) icon from the taskbar. - Microsoft.BingTravel (Travel planning and news via Bing, discontinued)
- Microsoft.BingWeather (Weather forecast via Bing)
- Microsoft.Copilot (AI assistant integrated into Windows)
- Microsoft.Getstarted (Tips and introductory guide for Windows, cannot be uninstalled in Windows 11)
- Microsoft.Messaging (Messaging app, often integrates with Skype, largely deprecated)
- Microsoft.Microsoft3DViewer (Viewer for 3D models)
- Microsoft.MicrosoftJournal (Digital note-taking app optimized for pen input)
- Microsoft.MicrosoftOfficeHub (Hub to access Microsoft Office apps and documents, precursor to Microsoft 365 app)
- Microsoft.MicrosoftPowerBIForWindows (Business analytics service client)
- Microsoft.MicrosoftSolitaireCollection (Collection of solitaire card games)
- Microsoft.MicrosoftStickyNotes (Digital sticky notes app, deprecated & replaced by OneNote)
- Microsoft.MixedReality.Portal (Portal for Windows Mixed Reality headsets)
- Microsoft.NetworkSpeedTest (Internet connection speed test utility)
- Microsoft.News (News aggregator. Replaced Bing News and now part of Microsoft Start)
- Microsoft.Office.OneNote (Digital note-taking app, Universal Windows Platform version)
- Microsoft.Office.Sway (Presentation and storytelling app)
- Microsoft.OneConnect (Mobile Operator management app, replaced by Mobile Plans)
- Microsoft.PowerAutomateDesktop (Desktop automation tool)
- Microsoft.Print3D (3D printing preparation software)
- Microsoft.SkypeApp (Skype communication app, Universal Windows Platform version)
- Microsoft.Todos (To-do list and task management app)
- Microsoft.Windows.DevHome (Developer dashboard and tool configuration utility, no longer supported)
- Microsoft.WindowsAlarms (Alarms & Clock app)
- Microsoft.WindowsFeedbackHub (App for providing feedback to Microsoft on Windows)
- Microsoft.WindowsMaps (Mapping and navigation app)
- Microsoft.WindowsSoundRecorder (Basic audio recording app)
- Microsoft.XboxApp (Old Xbox Console Companion App, no longer supported)
- Microsoft.ZuneVideo (Movies & TV app for renting/buying/playing video content. Rebranded as "Films & TV")
- MicrosoftCorporationII.MicrosoftFamily (Family Safety App for managing family accounts and settings)
- MicrosoftCorporationII.QuickAssist (Remote assistance tool)
- MicrosoftTeams (Old MS Teams personal, MS Store version)
- MSTeams (New MS Teams app. Work/School or Personal)
#### Apps that ARE removed as part of the default mode Third party apps:
- ACGMediaPlayer
- ActiproSoftwareLLC
- AdobeSystemsIncorporated.AdobePhotoshopExpress
- Amazon.com.Amazon
- AmazonVideo.PrimeVideo
- Asphalt8Airborne
- AutodeskSketchBook
- CaesarsSlotsFreeCasino
- COOKINGFEVER
- CyberLinkMediaSuiteEssentials
- DisneyMagicKingdoms
- Disney
- DrawboardPDF
- Duolingo-LearnLanguagesforFree
- EclipseManager
- Facebook
- FarmVille2CountryEscape
- fitbit
- Flipboard
- HiddenCity
- HULULLC.HULUPLUS
- iHeartRadio
- Instagram
- king.com.BubbleWitch3Saga
- king.com.CandyCrushSaga
- king.com.CandyCrushSodaSaga
- LinkedInforWindows
- MarchofEmpires
- Netflix
- NYTCrossword
- OneCalendar
- PandoraMediaInc
- PhototasticCollage
- PicsArt-PhotoStudio
- Plex
- PolarrPhotoEditorAcademicEdition
- Royal Revolt
- Shazam
- Sidia.LiveWallpaper
- SlingTV
- Spotify
- TikTok
- TuneInRadio
- Twitter
- Viber
- WinZipUniversal
- Wunderlist
- XING
</blockquote>
</details>
<details> #### Apps that are NOT removed by default
<summary>Click to expand</summary>
<blockquote>
Microsoft bloat: These apps will not be removed by Win11Debloat unless explicitly selected by the user.
- Clipchamp.Clipchamp
- Microsoft.3DBuilder
- Microsoft.549981C3F5F10 (Cortana app)
- Microsoft.BingFinance
- Microsoft.BingFoodAndDrink
- Microsoft.BingHealthAndFitness
- Microsoft.BingNews
- Microsoft.BingSearch* (Bing web search in Windows)
- Microsoft.BingSports
- Microsoft.BingTranslator
- Microsoft.BingTravel
- Microsoft.BingWeather
- Microsoft.Copilot
- Microsoft.Getstarted (Cannot be uninstalled in Windows 11)
- Microsoft.Messaging
- Microsoft.Microsoft3DViewer
- Microsoft.MicrosoftJournal
- Microsoft.MicrosoftOfficeHub
- Microsoft.MicrosoftPowerBIForWindows
- Microsoft.MicrosoftSolitaireCollection
- Microsoft.MicrosoftStickyNotes
- Microsoft.MixedReality.Portal
- Microsoft.NetworkSpeedTest
- Microsoft.News
- Microsoft.Office.OneNote (Discontinued UWP version only, does not remove new MS365 versions)
- Microsoft.Office.Sway
- Microsoft.OneConnect
- Microsoft.Print3D
- Microsoft.SkypeApp
- Microsoft.Todos
- Microsoft.WindowsAlarms
- Microsoft.WindowsFeedbackHub
- Microsoft.WindowsMaps
- Microsoft.WindowsSoundRecorder
- Microsoft.XboxApp (Old Xbox Console Companion App, no longer supported)
- Microsoft.ZuneVideo
- MicrosoftCorporationII.MicrosoftFamily (Microsoft Family Safety)
- MicrosoftTeams (Old personal version of MS Teams from the MS Store)
- MSTeams (New MS Teams app)
Third party bloat: <details>
- ACGMediaPlayer <summary>Click to expand</summary>
- ActiproSoftwareLLC <blockquote>
- AdobeSystemsIncorporated.AdobePhotoshopExpress
- Amazon.com.Amazon
- AmazonVideo.PrimeVideo
- Asphalt8Airborne
- AutodeskSketchBook
- CaesarsSlotsFreeCasino
- COOKINGFEVER
- CyberLinkMediaSuiteEssentials
- DisneyMagicKingdoms
- Disney
- Dolby
- DrawboardPDF
- Duolingo-LearnLanguagesforFree
- EclipseManager
- Facebook
- FarmVille2CountryEscape
- fitbit
- Flipboard
- HiddenCity
- HULULLC.HULUPLUS
- iHeartRadio
- Instagram
- king.com.BubbleWitch3Saga
- king.com.CandyCrushSaga
- king.com.CandyCrushSodaSaga
- LinkedInforWindows
- MarchofEmpires
- Netflix
- NYTCrossword
- OneCalendar
- PandoraMediaInc
- PhototasticCollage
- PicsArt-PhotoStudio
- Plex
- PolarrPhotoEditorAcademicEdition
- Royal Revolt
- Shazam
- Sidia.LiveWallpaper
- SlingTV
- Speed Test
- Spotify
- TikTok
- TuneInRadio
- Twitter
- Viber
- WinZipUniversal
- Wunderlist
- XING
* App is removed when disabling Bing in Windows search. Miscellaneous apps:
</blockquote> - Microsoft.Edge (Edge browser, only removeable in the EEA)
</details> - Microsoft.GetHelp (Required for some Windows 11 Troubleshooters)
- Microsoft.MSPaint (Paint 3D)
- Microsoft.OutlookForWindows (New mail app)
- Microsoft.OneDrive (OneDrive consumer)
- Microsoft.Paint (Classic Paint)
- Microsoft.People (Required for & included with Mail & Calendar)
- Microsoft.RemoteDesktop
- Microsoft.ScreenSketch (Snipping Tool)
- Microsoft.Whiteboard (Only preinstalled on devices with touchscreen and/or pen support)
- Microsoft.Windows.Photos
- Microsoft.WindowsCalculator
- Microsoft.WindowsCamera
- Microsoft.WindowsNotepad
- Microsoft.windowscommunicationsapps (Mail & Calendar)
- Microsoft.WindowsStore (Microsoft Store, NOTE: This app cannot be reinstalled!)
- Microsoft.WindowsTerminal (New default terminal app in Windows 11)
- Microsoft.YourPhone (Phone Link)
- Microsoft.Xbox.TCUI (UI framework, removing this may break MS store, photos and certain games)
- Microsoft.ZuneMusic (Modern Media Player)
- MicrosoftWindows.CrossDevice (Phone integration within File Explorer, Camera and more)
#### Apps that are NOT removed as part of the default mode Gaming related apps:
- Microsoft.GamingApp (Modern Xbox Gaming App, required for installing some games)
- Microsoft.XboxGameOverlay (Game overlay, required for some games)
- Microsoft.XboxGamingOverlay (Game overlay, required for some games)
- Microsoft.XboxIdentityProvider (Xbox sign-in framework, required for some games)
- Microsoft.XboxSpeechToTextOverlay (Might be required for some games, NOTE: This app cannot be reinstalled!)
<details> HP apps:
<summary>Click to expand</summary> - AD2F1837.HPAIExperienceCenter
<blockquote> - AD2F1837.HPConnectedMusic
- AD2F1837.HPConnectedPhotopoweredbySnapfish
General apps that are not removed by default: - AD2F1837.HPDesktopSupportUtilities
- Microsoft.Edge (Edge browser, only removeable in the EEA) - AD2F1837.HPEasyClean
- Microsoft.GetHelp (Required for some Windows 11 Troubleshooters) - AD2F1837.HPFileViewer
- Microsoft.MSPaint (Paint 3D) - AD2F1837.HPJumpStarts
- Microsoft.OutlookForWindows* (New mail app) - AD2F1837.HPPCHardwareDiagnosticsWindows
- Microsoft.OneDrive (OneDrive consumer) - AD2F1837.HPPowerManager
- Microsoft.Paint (Classic Paint) - AD2F1837.HPPrinterControl
- Microsoft.People* (Required for & included with Mail & Calendar) - AD2F1837.HPPrivacySettings
- Microsoft.ScreenSketch (Snipping Tool) - AD2F1837.HPQuickDrop
- Microsoft.Whiteboard (Only preinstalled on devices with touchscreen and/or pen support) - AD2F1837.HPQuickTouch
- Microsoft.Windows.Photos - AD2F1837.HPRegistration
- Microsoft.WindowsCalculator - AD2F1837.HPSupportAssistant
- Microsoft.WindowsCamera - AD2F1837.HPSureShieldAI
- Microsoft.WindowsNotepad - AD2F1837.HPSystemInformation
- Microsoft.windowscommunicationsapps* (Mail & Calendar) - AD2F1837.HPWelcome
- Microsoft.WindowsStore (Microsoft Store, NOTE: This app cannot be reinstalled!) - AD2F1837.HPWorkWell
- Microsoft.WindowsTerminal (New default terminal app in Windows 11) - AD2F1837.myHP
- Microsoft.YourPhone (Phone Link) </blockquote>
- Microsoft.Xbox.TCUI (UI framework, removing this may break MS store, photos and certain games)
- Microsoft.ZuneMusic (Modern Media Player)
- MicrosoftWindows.CrossDevice (Phone integration within File Explorer, Camera and more)
HP apps that are not removed by default:
- AD2F1837.HPAIExperienceCenter*
- AD2F1837.HPConnectedMusic*
- AD2F1837.HPConnectedPhotopoweredbySnapfish*
- AD2F1837.HPDesktopSupportUtilities*
- AD2F1837.HPEasyClean*
- AD2F1837.HPFileViewer*
- AD2F1837.HPJumpStarts*
- AD2F1837.HPPCHardwareDiagnosticsWindows*
- AD2F1837.HPPowerManager*
- AD2F1837.HPPrinterControl*
- AD2F1837.HPPrivacySettings*
- AD2F1837.HPQuickDrop*
- AD2F1837.HPQuickTouch*
- AD2F1837.HPRegistration*
- AD2F1837.HPSupportAssistant*
- AD2F1837.HPSureShieldAI*
- AD2F1837.HPSystemInformation*
- AD2F1837.HPWelcome*
- AD2F1837.HPWorkWell*
- AD2F1837.myHP*
Gaming related apps that are not removed by default:
- Microsoft.GamingApp* (Modern Xbox Gaming App, required for installing some games)
- Microsoft.XboxGameOverlay* (Game overlay, required for some games)
- Microsoft.XboxGamingOverlay* (Game overlay, required for some games)
- Microsoft.XboxIdentityProvider (Xbox sign-in framework, required for some games)
- Microsoft.XboxSpeechToTextOverlay (Might be required for some games, NOTE: This app cannot be reinstalled!)
Developer related apps that are not removed by default:
- Microsoft.PowerAutomateDesktop*
- Microsoft.RemoteDesktop*
- Windows.DevHome*
* Can be removed by running the script with the relevant parameter. (Please refer to the wiki for more details)
</blockquote>
</details>
</details> </details>
## License ## License

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -8,3 +8,6 @@ Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI] [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI]
"AllowRecallEnablement"=dword:00000000 "AllowRecallEnablement"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI]
"TurnOffSavingSnapshots"=dword:00000001

View File

@@ -0,0 +1,7 @@
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=dword:00000001

View File

@@ -0,0 +1,11 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"CopilotCDPPageContext"=dword:00000000
"CopilotPageContext"=dword:00000000
"HubsSidebarEnabled"=dword:00000000
"EdgeEntraCopilotPageContext"=dword:00000000
"EdgeHistoryAISearchEnabled"=dword:00000000
"ComposeInlineEnabled"=dword:00000000
"GenAILocalFoundationalModelSettings"=dword:00000001
"NewTabPageBingChatEnabled"=dword:00000000

Binary file not shown.

View File

@@ -0,0 +1,5 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\f15576e8-98b7-4186-b944-eafa664402d9]
"ACSettingIndex"=dword:00000000
"DCSettingIndex"=dword:00000000

View File

@@ -0,0 +1,4 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\WindowsNotepad]
"DisableAIFeatures"=dword:00000001

View File

@@ -0,0 +1,8 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Paint]
"DisableCocreator"=dword:00000001
"DisableGenerativeFill"=dword:00000001
"DisableImageCreator"=dword:00000001
"DisableGenerativeErase"=dword:00000001
"DisableRemoveBackground"=dword:00000001

Binary file not shown.

View File

@@ -0,0 +1,16 @@
Windows Registry Editor Version 5.00
; When clicking the icon of a a running application in the taskbar (that
; currently has multiple windows open), typically a pop-up will appear showing
; the multiple windows, and you'll have to click a second time to select the
; window you want to focus on.
;
; This registry hack instead turns the icon click into a "focus on the last
; active window" action. You can click it repeatedly to cycle focus through all
; the windows open for that application.
;
; With this enabled, the pop-up window display will still show if you hover
; your mouse over the taskbar icon.
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"LastActiveClick"=dword:00000001

BIN
Regfiles/MMTaskbarMode_Active.reg Executable file

Binary file not shown.

BIN
Regfiles/MMTaskbarMode_All.reg Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,7 @@
Windows Registry Editor Version 5.00
[hkey_users\default\Software\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=dword:00000001

View File

@@ -0,0 +1,11 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"CopilotCDPPageContext"=dword:00000000
"CopilotPageContext"=dword:00000000
"HubsSidebarEnabled"=dword:00000000
"EdgeEntraCopilotPageContext"=dword:00000000
"EdgeHistoryAISearchEnabled"=dword:00000000
"ComposeInlineEnabled"=dword:00000000
"GenAILocalFoundationalModelSettings"=dword:00000001
"NewTabPageBingChatEnabled"=dword:00000000

Binary file not shown.

View File

@@ -0,0 +1,5 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\f15576e8-98b7-4186-b944-eafa664402d9]
"ACSettingIndex"=dword:00000000
"DCSettingIndex"=dword:00000000

View File

@@ -0,0 +1,4 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\WindowsNotepad]
"DisableAIFeatures"=dword:00000001

View File

@@ -0,0 +1,8 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Paint]
"DisableCocreator"=dword:00000001
"DisableGenerativeFill"=dword:00000001
"DisableImageCreator"=dword:00000001
"DisableGenerativeErase"=dword:00000001
"DisableRemoveBackground"=dword:00000001

View File

@@ -3,3 +3,7 @@ Windows Registry Editor Version 5.00
[hkey_users\default\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize] [hkey_users\default\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize]
"AppsUseLightTheme"=dword:00000000 "AppsUseLightTheme"=dword:00000000
"SystemUsesLightTheme"=dword:00000000 "SystemUsesLightTheme"=dword:00000000
[hkey_users\default\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce]
"AppsUseLightTheme"="reg add HKCU\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize /v AppsUseLightTheme /t REG_DWORD /d 0 /f"
"SystemUsesLightTheme"="reg add HKCU\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize /v SystemUsesLightTheme /t REG_DWORD /d 0 /f"

View File

@@ -0,0 +1,16 @@
Windows Registry Editor Version 5.00
; When clicking the icon of a a running application in the taskbar (that
; currently has multiple windows open), typically a pop-up will appear showing
; the multiple windows, and you'll have to click a second time to select the
; window you want to focus on.
;
; This registry hack instead turns the icon click into a "focus on the last
; active window" action. You can click it repeatedly to cycle focus through all
; the windows open for that application.
;
; With this enabled, the pop-up window display will still show if you hover
; your mouse over the taskbar icon.
[HKEY_USERS\default\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"LastActiveClick"=dword:00000001

View File

@@ -0,0 +1,7 @@
Windows Registry Editor Version 5.00
; Allow personalization of ads, Microsoft Edge, search, news and other Microsoft services by sending browsing history, favorites and collections, usage and other browsing data to Microsoft
; Allow sending required and optional diagnostic data about browser usage
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"PersonalizationReportingEnabled"=-
"DiagnosticData"=-

View File

@@ -0,0 +1,8 @@
Windows Registry Editor Version 5.00
; This disables the last-active-click action for the taskbar.
; (Please see the `Enable_Last_Active_Click.reg` file for an
; explanation of what this undoes.)
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"LastActiveClick"=-

View File

@@ -0,0 +1,7 @@
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=-
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsAI]
"DisableClickToDo"=-

View File

@@ -0,0 +1,11 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"CopilotCDPPageContext"=-
"CopilotPageContext"=-
"HubsSidebarEnabled"=-
"EdgeEntraCopilotPageContext"=-
"EdgeHistoryAISearchEnabled"=-
"ComposeInlineEnabled"=-
"GenAILocalFoundationalModelSettings"=-
"NewTabPageBingChatEnabled"=-

Binary file not shown.

View File

@@ -0,0 +1,5 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\f15576e8-98b7-4186-b944-eafa664402d9]
"ACSettingIndex"=dword:00000001
"DCSettingIndex"=dword:00000001

View File

@@ -0,0 +1,4 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\WindowsNotepad]
"DisableAIFeatures"=-

View File

@@ -0,0 +1,8 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Paint]
"DisableCocreator"=-
"DisableGenerativeFill"=-
"DisableImageCreator"=-
"DisableGenerativeErase"=-
"DisableRemoveBackground"=-

Binary file not shown.

View File

@@ -5,10 +5,10 @@ set "wtScoopPath=%USERPROFILE%\scoop\apps\windows-terminal\current\wt.exe"
:: Launch the script in Windows Terminal if installed, otherwise use default PowerShell. :: Launch the script in Windows Terminal if installed, otherwise use default PowerShell.
if exist "%wtDefaultPath%" ( if exist "%wtDefaultPath%" (
PowerShell -Command "Start-Process -FilePath '%wtDefaultPath%' -ArgumentList 'PowerShell -NoProfile -ExecutionPolicy Bypass -File \"\"%~dp0Win11Debloat.ps1\"\"' -Verb RunAs" PowerShell -Command "Start-Process -FilePath '%wtDefaultPath%' -ArgumentList 'PowerShell -NoProfile -ExecutionPolicy Bypass -File ""%~dp0Win11Debloat.ps1""' -Verb RunAs"
) else if exist "%wtScoopPath%" ( ) else if exist "%wtScoopPath%" (
PowerShell -Command "Start-Process -FilePath '%wtScoopPath%' -ArgumentList 'PowerShell -NoProfile -ExecutionPolicy Bypass -File \"\"%~dp0Win11Debloat.ps1\"\"' -Verb RunAs" PowerShell -Command "Start-Process -FilePath '%wtScoopPath%' -ArgumentList 'PowerShell -NoProfile -ExecutionPolicy Bypass -File ""%~dp0Win11Debloat.ps1""' -Verb RunAs"
) else ( ) else (
echo Windows Terminal not found, using default PowerShell... echo Windows Terminal not found, using default PowerShell...
PowerShell -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File \"\"%~dp0Win11Debloat.ps1\"\"' -Verb RunAs}" PowerShell -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%~dp0Win11Debloat.ps1""' -Verb RunAs}"
) )

517
Win11Debloat.ps1 Normal file → Executable file
View File

@@ -8,23 +8,25 @@ param (
[string]$User, [string]$User,
[switch]$CreateRestorePoint, [switch]$CreateRestorePoint,
[switch]$RunAppsListGenerator, [switch]$RunAppConfigurator, [switch]$RunAppsListGenerator, [switch]$RunAppConfigurator,
[switch]$RunDefaults, [switch]$RunWin11Defaults, [switch]$RunDefaults,
[switch]$RunDefaultsLite,
[switch]$RunSavedSettings, [switch]$RunSavedSettings,
[switch]$RemoveApps, [switch]$RemoveApps,
[switch]$RemoveAppsCustom, [switch]$RemoveAppsCustom,
[switch]$RemoveGamingApps, [switch]$RemoveGamingApps,
[switch]$RemoveCommApps, [switch]$RemoveCommApps,
[switch]$RemoveDevApps,
[switch]$RemoveHPApps, [switch]$RemoveHPApps,
[switch]$RemoveW11Outlook, [switch]$RemoveW11Outlook,
[switch]$ForceRemoveEdge, [switch]$ForceRemoveEdge,
[switch]$DisableDVR, [switch]$DisableDVR,
[switch]$DisableTelemetry, [switch]$DisableTelemetry,
[switch]$DisableFastStartup, [switch]$DisableFastStartup,
[switch]$DisableModernStandbyNetworking,
[switch]$DisableBingSearches, [switch]$DisableBing, [switch]$DisableBingSearches, [switch]$DisableBing,
[switch]$DisableDesktopSpotlight, [switch]$DisableDesktopSpotlight,
[switch]$DisableLockscrTips, [switch]$DisableLockscreenTips, [switch]$DisableLockscrTips, [switch]$DisableLockscreenTips,
[switch]$DisableWindowsSuggestions, [switch]$DisableSuggestions, [switch]$DisableWindowsSuggestions, [switch]$DisableSuggestions,
[switch]$DisableEdgeAds,
[switch]$DisableSettings365Ads, [switch]$DisableSettings365Ads,
[switch]$DisableSettingsHome, [switch]$DisableSettingsHome,
[switch]$ShowHiddenFolders, [switch]$ShowHiddenFolders,
@@ -34,15 +36,23 @@ param (
[switch]$DisableTransparency, [switch]$DisableTransparency,
[switch]$DisableAnimations, [switch]$DisableAnimations,
[switch]$TaskbarAlignLeft, [switch]$TaskbarAlignLeft,
[switch]$CombineTaskbarAlways, [switch]$CombineTaskbarWhenFull, [switch]$CombineTaskbarNever,
[switch]$CombineMMTaskbarAlways, [switch]$CombineMMTaskbarWhenFull, [switch]$CombineMMTaskbarNever,
[switch]$MMTaskbarModeAll, [switch]$MMTaskbarModeMainActive, [switch]$MMTaskbarModeActive,
[switch]$HideSearchTb, [switch]$ShowSearchIconTb, [switch]$ShowSearchLabelTb, [switch]$ShowSearchBoxTb, [switch]$HideSearchTb, [switch]$ShowSearchIconTb, [switch]$ShowSearchLabelTb, [switch]$ShowSearchBoxTb,
[switch]$HideTaskview, [switch]$HideTaskview,
[switch]$DisableStartRecommended, [switch]$DisableStartRecommended,
[switch]$DisableStartPhoneLink, [switch]$DisableStartPhoneLink,
[switch]$DisableCopilot, [switch]$DisableCopilot,
[switch]$DisableRecall, [switch]$DisableRecall,
[switch]$DisableClickToDo,
[switch]$DisablePaintAI,
[switch]$DisableNotepadAI,
[switch]$DisableEdgeAI,
[switch]$DisableWidgets, [switch]$HideWidgets, [switch]$DisableWidgets, [switch]$HideWidgets,
[switch]$DisableChat, [switch]$HideChat, [switch]$DisableChat, [switch]$HideChat,
[switch]$EnableEndTask, [switch]$EnableEndTask,
[switch]$EnableLastActiveClick,
[switch]$ClearStart, [switch]$ClearStart,
[string]$ReplaceStart, [string]$ReplaceStart,
[switch]$ClearStartAllUsers, [switch]$ClearStartAllUsers,
@@ -461,7 +471,7 @@ function ForceRemoveEdge {
$hklm = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, $regView) $hklm = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, $regView)
$hklm.CreateSubKey('SOFTWARE\Microsoft\EdgeUpdateDev').SetValue('AllowUninstall', '') $hklm.CreateSubKey('SOFTWARE\Microsoft\EdgeUpdateDev').SetValue('AllowUninstall', '')
# Create stub (Creating this somehow allows uninstalling edge) # Create stub (Creating this somehow allows uninstalling Edge)
$edgeStub = "$env:SystemRoot\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe" $edgeStub = "$env:SystemRoot\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
New-Item $edgeStub -ItemType Directory | Out-Null New-Item $edgeStub -ItemType Directory | Out-Null
New-Item "$edgeStub\MicrosoftEdge.exe" | Out-Null New-Item "$edgeStub\MicrosoftEdge.exe" | Out-Null
@@ -494,7 +504,7 @@ function ForceRemoveEdge {
Write-Output "Cleaning up registry..." Write-Output "Cleaning up registry..."
# Remove ms edge from autostart # Remove MS Edge from autostart
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "MicrosoftEdgeAutoLaunch_A9F6DCE4ABADF4F51CF45CD7129E3C6C" /f *>$null reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "MicrosoftEdgeAutoLaunch_A9F6DCE4ABADF4F51CF45CD7129E3C6C" /f *>$null
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "Microsoft Edge Update" /f *>$null reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "Microsoft Edge Update" /f *>$null
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" /v "MicrosoftEdgeAutoLaunch_A9F6DCE4ABADF4F51CF45CD7129E3C6C" /f *>$null reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" /v "MicrosoftEdgeAutoLaunch_A9F6DCE4ABADF4F51CF45CD7129E3C6C" /f *>$null
@@ -536,6 +546,67 @@ function Strip-Progress {
} }
# Check if this machine supports S0 Modern Standby power state. Returns true if S0 Modern Standby is supported, false otherwise.
function CheckModernStandbySupport {
$count = 0
try {
switch -Regex (powercfg /a) {
':' {
$count += 1
}
'(.*S0.{1,}\))' {
if ($count -eq 1) {
return $true
}
}
}
}
catch {
Write-Host "Error: Unable to check for S0 Modern Standby support, powercfg command failed" -ForegroundColor Red
Write-Host ""
Write-Host "Press any key to continue..."
$null = [System.Console]::ReadKey()
return $true
}
return $false
}
# Returns the directory path of the specified user, exits script if user path can't be found
function GetUserDirectory {
param (
$userName,
$fileName = "",
$exitIfPathNotFound = $true
)
try {
$userDirectoryExists = Test-Path "$env:SystemDrive\Users\$userName"
$userPath = "$env:SystemDrive\Users\$userName\$fileName"
if ((Test-Path $userPath) -or ($userDirectoryExists -and (-not $exitIfPathNotFound))) {
return $userPath
}
$userDirectoryExists = Test-Path ($env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\$userName")
$userPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\$userName\$fileName"
if ((Test-Path $userPath) -or ($userDirectoryExists -and (-not $exitIfPathNotFound))) {
return $userPath
}
} catch {
Write-Host "Error: Something went wrong when trying to find the user directory path for user $userName. Please ensure the user exists on this system." -ForegroundColor Red
AwaitKeyToExit
}
Write-Host "Error: Unable to find user directory path for user $userName" -ForegroundColor Red
AwaitKeyToExit
}
# Import & execute regfile # Import & execute regfile
function RegImport { function RegImport {
param ( param (
@@ -546,14 +617,14 @@ function RegImport {
Write-Output $message Write-Output $message
if ($script:Params.ContainsKey("Sysprep")) { if ($script:Params.ContainsKey("Sysprep")) {
$defaultUserPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), '\Default\NTUSER.DAT' $defaultUserPath = GetUserDirectory -userName "Default" -fileName "NTUSER.DAT"
reg load "HKU\Default" $defaultUserPath | Out-Null reg load "HKU\Default" $defaultUserPath | Out-Null
reg import "$PSScriptRoot\Regfiles\Sysprep\$path" reg import "$PSScriptRoot\Regfiles\Sysprep\$path"
reg unload "HKU\Default" | Out-Null reg unload "HKU\Default" | Out-Null
} }
elseif ($script:Params.ContainsKey("User")) { elseif ($script:Params.ContainsKey("User")) {
$userPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\$($script:Params.Item("User"))\NTUSER.DAT" $userPath = GetUserDirectory -userName $script:Params.Item("User") -fileName "NTUSER.DAT"
reg load "HKU\Default" $userPath | Out-Null reg load "HKU\Default" $userPath | Out-Null
reg import "$PSScriptRoot\Regfiles\Sysprep\$path" reg import "$PSScriptRoot\Regfiles\Sysprep\$path"
@@ -616,7 +687,7 @@ function ReplaceStartMenuForAllUsers {
} }
# Get path to start menu file for all users # Get path to start menu file for all users
$userPathString = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\*\AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState" $userPathString = GetUserDirectory -userName "*" -fileName "AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState"
$usersStartMenuPaths = get-childitem -path $userPathString $usersStartMenuPaths = get-childitem -path $userPathString
# Go through all users and replace the start menu file # Go through all users and replace the start menu file
@@ -625,7 +696,7 @@ function ReplaceStartMenuForAllUsers {
} }
# Also replace the start menu file for the default user profile # Also replace the start menu file for the default user profile
$defaultStartMenuPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), '\Default\AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState' $defaultStartMenuPath = GetUserDirectory -userName "Default" -fileName "AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState" -exitIfPathNotFound $false
# Create folder if it doesn't exist # Create folder if it doesn't exist
if (-not (Test-Path $defaultStartMenuPath)) { if (-not (Test-Path $defaultStartMenuPath)) {
@@ -650,7 +721,7 @@ function ReplaceStartMenu {
# Change path to correct user if a user was specified # Change path to correct user if a user was specified
if ($script:Params.ContainsKey("User")) { if ($script:Params.ContainsKey("User")) {
$startMenuBinFile = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\$(GetUserName)\AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState\start2.bin" $startMenuBinFile = GetUserDirectory -userName "$(GetUserName)" -fileName "AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState\start2.bin" -exitIfPathNotFound $false
} }
# Check if template bin file exists, return early if it doesn't # Check if template bin file exists, return early if it doesn't
@@ -664,21 +735,22 @@ function ReplaceStartMenu {
return return
} }
# Check if bin file exists, return early if it doesn't $userName = [regex]::Match($startMenuBinFile, '(?:Users\\)([^\\]+)(?:\\AppData)').Groups[1].Value
if (-not (Test-Path $startMenuBinFile)) {
Write-Host "Error: Unable to replace start menu for user $(GetUserName), original start2.bin file not found" -ForegroundColor Red
return
}
$backupBinFile = $startMenuBinFile + ".bak" $backupBinFile = $startMenuBinFile + ".bak"
# Backup current start menu file if (Test-Path $startMenuBinFile) {
Move-Item -Path $startMenuBinFile -Destination $backupBinFile -Force # Backup current start menu file
Move-Item -Path $startMenuBinFile -Destination $backupBinFile -Force
} else {
Write-Host "Warning: Unable to find original start2.bin file for user $userName. No backup was created for this user!" -ForegroundColor Yellow
New-Item -ItemType File -Path $startMenuBinFile -Force
}
# Copy template file # Copy template file
Copy-Item -Path $startMenuTemplate -Destination $startMenuBinFile -Force Copy-Item -Path $startMenuTemplate -Destination $startMenuBinFile -Force
Write-Output "Replaced start menu for user $(GetUserName)" Write-Output "Replaced start menu for user $userName"
} }
@@ -686,7 +758,8 @@ function ReplaceStartMenu {
function AddParameter { function AddParameter {
param ( param (
$parameterName, $parameterName,
$message $message,
$addToFile = $true
) )
# Add key if it doesn't already exist # Add key if it doesn't already exist
@@ -694,6 +767,11 @@ function AddParameter {
$script:Params.Add($parameterName, $true) $script:Params.Add($parameterName, $true)
} }
if (-not $addToFile) {
Write-Output "- $message"
return
}
# Create or clear file that stores last used settings # Create or clear file that stores last used settings
if (-not (Test-Path "$PSScriptRoot/SavedSettings")) { if (-not (Test-Path "$PSScriptRoot/SavedSettings")) {
$null = New-Item "$PSScriptRoot/SavedSettings" $null = New-Item "$PSScriptRoot/SavedSettings"
@@ -734,12 +812,15 @@ function PrintHeader {
function PrintFromFile { function PrintFromFile {
param ( param (
$path, $path,
$title $title,
$printHeader = $true
) )
Clear-Host if ($printHeader) {
Clear-Host
PrintHeader $title PrintHeader $title
}
# Get & print script menu from file # Get & print script menu from file
Foreach ($line in (Get-Content -Path $path )) { Foreach ($line in (Get-Content -Path $path )) {
@@ -748,6 +829,26 @@ function PrintFromFile {
} }
function PrintAppsList {
param (
$path,
$printCount = $false
)
if (-not (Test-Path $path)) {
return
}
$appsList = ReadAppslistFromFile $path
if ($printCount) {
Write-Output "- Remove $($appsList.Count) apps:"
}
Write-Host $appsList -ForegroundColor DarkGray
}
function AwaitKeyToExit { function AwaitKeyToExit {
# Suppress prompt if Silent parameter was passed # Suppress prompt if Silent parameter was passed
if (-not $Silent) { if (-not $Silent) {
@@ -777,12 +878,22 @@ function CreateSystemRestorePoint {
if ($SysRestore.RPSessionInterval -eq 0) { if ($SysRestore.RPSessionInterval -eq 0) {
if ($Silent -or $( Read-Host -Prompt "System restore is disabled, would you like to enable it and create a restore point? (y/n)") -eq 'y') { if ($Silent -or $( Read-Host -Prompt "System restore is disabled, would you like to enable it and create a restore point? (y/n)") -eq 'y') {
try { $enableSystemRestoreJob = Start-Job {
Enable-ComputerRestore -Drive "$env:SystemDrive" try {
} catch { Enable-ComputerRestore -Drive "$env:SystemDrive"
Write-Host "Error: Failed to enable System Restore: $_" -ForegroundColor Red } catch {
Write-Output "" Write-Host "Error: Failed to enable System Restore: $_" -ForegroundColor Red
return
}
}
$enableSystemRestoreJobDone = $enableSystemRestoreJob | Wait-Job -TimeOut 20
if (-not $enableSystemRestoreJobDone) {
Write-Host "Error: Failed to enable system restore and create restore point, operation timed out" -ForegroundColor Red
return return
} else {
Receive-Job $enableSystemRestoreJob
} }
} else { } else {
Write-Output "" Write-Output ""
@@ -790,24 +901,33 @@ function CreateSystemRestorePoint {
} }
} }
# Find existing restore points that are less than 24 hours old $createRestorePointJob = Start-Job {
try { # Find existing restore points that are less than 24 hours old
$recentRestorePoints = Get-ComputerRestorePoint | Where-Object { (Get-Date) - [System.Management.ManagementDateTimeConverter]::ToDateTime($_.CreationTime) -le (New-TimeSpan -Hours 24) } try {
} catch { $recentRestorePoints = Get-ComputerRestorePoint | Where-Object { (Get-Date) - [System.Management.ManagementDateTimeConverter]::ToDateTime($_.CreationTime) -le (New-TimeSpan -Hours 24) }
Write-Host "Error: Unable to retrieve existing restore points: $_" -ForegroundColor Red } catch {
Write-Output "" Write-Host "Error: Unable to retrieve existing restore points: $_" -ForegroundColor Red
return return
}
if ($recentRestorePoints.Count -eq 0) {
try {
Checkpoint-Computer -Description "Restore point created by Win11Debloat" -RestorePointType "MODIFY_SETTINGS"
Write-Output "System restore point created successfully"
} catch {
Write-Host "Error: Unable to create restore point: $_" -ForegroundColor Red
}
} else {
Write-Host "A recent restore point already exists, no new restore point was created." -ForegroundColor Yellow
}
} }
if ($recentRestorePoints.Count -eq 0) { $createRestorePointJobDone = $createRestorePointJob | Wait-Job -TimeOut 20
try {
Checkpoint-Computer -Description "Restore point created by Win11Debloat" -RestorePointType "MODIFY_SETTINGS" if (-not $createRestorePointJobDone) {
Write-Output "System restore point created successfully" Write-Host "Error: Failed to create system restore point, operation timed out" -ForegroundColor Red
} catch {
Write-Host "Error: Unable to create restore point: $_" -ForegroundColor Red
}
} else { } else {
Write-Host "A recent restore point already exists, no new restore point was created." -ForegroundColor Yellow Receive-Job $createRestorePointJob
} }
Write-Output "" Write-Output ""
@@ -826,8 +946,8 @@ function DisplayCustomModeOptions {
Do { Do {
Write-Host "Options:" -ForegroundColor Yellow Write-Host "Options:" -ForegroundColor Yellow
Write-Host " (n) Don't remove any apps" -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 " (1) Only remove the default selection of apps" -ForegroundColor Yellow
Write-Host " (2) Remove default selection of bloatware apps, as well as mail & calendar apps, developer apps and gaming apps" -ForegroundColor Yellow Write-Host " (2) Remove the default selection of apps, as well as mail & calendar apps and gaming related apps" -ForegroundColor Yellow
Write-Host " (3) Manually select which apps to remove" -ForegroundColor Yellow Write-Host " (3) Manually select which apps to remove" -ForegroundColor Yellow
$RemoveAppsInput = Read-Host "Do you want to remove any apps? Apps will be removed for all users (n/1/2/3)" $RemoveAppsInput = Read-Host "Do you want to remove any apps? Apps will be removed for all users (n/1/2/3)"
@@ -851,13 +971,12 @@ function DisplayCustomModeOptions {
# Select correct option based on user input # Select correct option based on user input
switch ($RemoveAppsInput) { switch ($RemoveAppsInput) {
'1' { '1' {
AddParameter 'RemoveApps' 'Remove default selection of bloatware apps' AddParameter 'RemoveApps' 'Remove the default selection of apps'
} }
'2' { '2' {
AddParameter 'RemoveApps' 'Remove default selection of bloatware apps' AddParameter 'RemoveApps' 'Remove the default selection of apps'
AddParameter 'RemoveCommApps' 'Remove the Mail, Calendar, and People apps' AddParameter 'RemoveCommApps' 'Remove the Mail, Calendar, and People apps'
AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app' AddParameter 'RemoveW11Outlook' 'Remove the new Outlook for Windows app'
AddParameter 'RemoveDevApps' 'Remove developer-related apps'
AddParameter 'RemoveGamingApps' 'Remove the Xbox App and Xbox Gamebar' AddParameter 'RemoveGamingApps' 'Remove the Xbox App and Xbox Gamebar'
AddParameter 'DisableDVR' 'Disable Xbox game/screen recording' AddParameter 'DisableDVR' 'Disable Xbox game/screen recording'
} }
@@ -882,8 +1001,9 @@ function DisplayCustomModeOptions {
Write-Output "" Write-Output ""
if ($( Read-Host -Prompt "Disable tips, tricks, suggestions and ads in start, settings, notifications, explorer and lockscreen? (y/n)" ) -eq 'y') { if ($( Read-Host -Prompt "Disable tips, tricks, suggestions and ads in start, settings, notifications, explorer, lockscreen and Edge? (y/n)" ) -eq 'y') {
AddParameter 'DisableSuggestions' 'Disable tips, tricks, suggestions and ads in start, settings, notifications and File Explorer' AddParameter 'DisableSuggestions' 'Disable tips, tricks, suggestions and ads in start, settings, notifications and File Explorer'
AddParameter 'DisableEdgeAds' 'Disable ads, suggestions and the MSN news feed in Microsoft Edge'
AddParameter 'DisableSettings365Ads' 'Disable Microsoft 365 ads in Settings Home' AddParameter 'DisableSettings365Ads' 'Disable Microsoft 365 ads in Settings Home'
AddParameter 'DisableLockscreenTips' 'Disable tips & tricks on the lockscreen' AddParameter 'DisableLockscreenTips' 'Disable tips & tricks on the lockscreen'
} }
@@ -898,9 +1018,31 @@ function DisplayCustomModeOptions {
if ($WinVersion -ge 22621) { if ($WinVersion -ge 22621) {
Write-Output "" Write-Output ""
if ($( Read-Host -Prompt "Disable & remove Microsoft Copilot and Windows Recall snapshots? This applies to all users (y/n)" ) -eq 'y') { # Show options for disabling/removing AI features, only continue on valid input
AddParameter 'DisableCopilot' 'Disable and remove Microsoft Copilot' Do {
AddParameter 'DisableRecall' 'Disable and remove Windows Recall snapshots' Write-Host "Options:" -ForegroundColor Yellow
Write-Host " (n) Don't disable any AI features" -ForegroundColor Yellow
Write-Host " (1) Disable Microsoft Copilot, Windows Recall and Click to Do" -ForegroundColor Yellow
Write-Host " (2) Disable Microsoft Copilot, Windows Recall, Click to Do and AI features in Microsoft Edge, Paint and Notepad" -ForegroundColor Yellow
$DisableAIInput = Read-Host "Do you want to disable any AI features? This applies to all users (n/1/2)"
}
while ($DisableAIInput -ne 'n' -and $DisableAIInput -ne '0' -and $DisableAIInput -ne '1' -and $DisableAIInput -ne '2')
# Select correct option based on user input
switch ($DisableAIInput) {
'1' {
AddParameter 'DisableCopilot' 'Disable & remove Microsoft Copilot'
AddParameter 'DisableRecall' 'Disable Windows Recall'
AddParameter 'DisableClickToDo' 'Disable Click to Do (AI text & image analysis)'
}
'2' {
AddParameter 'DisableCopilot' 'Disable & remove Microsoft Copilot'
AddParameter 'DisableRecall' 'Disable Windows Recall'
AddParameter 'DisableClickToDo' 'Disable Click to Do (AI text & image analysis)'
AddParameter 'DisableEdgeAI' 'Disable AI features in Edge'
AddParameter 'DisablePaintAI' 'Disable AI features in Paint'
AddParameter 'DisableNotepadAI' 'Disable AI features in Notepad'
}
} }
} }
@@ -953,6 +1095,15 @@ function DisplayCustomModeOptions {
AddParameter 'DisableFastStartup' 'Disable Fast Start-up' AddParameter 'DisableFastStartup' 'Disable Fast Start-up'
} }
# Only show this option for Windows 11 users running build 22000 or later, and if the machine has at least one battery
if (($WinVersion -ge 22000) -and $script:ModernStandbySupported) {
Write-Output ""
if ($( Read-Host -Prompt "Disable network connectivity during Modern Standby? This applies to all users (y/n)" ) -eq 'y') {
AddParameter 'DisableModernStandbyNetworking' 'Disable network connectivity during Modern Standby'
}
}
# Only show option for disabling context menu items for Windows 10 users or if the user opted to restore the Windows 10 context menu # Only show option for disabling context menu items for Windows 10 users or if the user opted to restore the Windows 10 context menu
if ((get-ciminstance -query "select caption from win32_operatingsystem where caption like '%Windows 10%'") -or $script:Params.ContainsKey('RevertContextMenu')) { if ((get-ciminstance -query "select caption from win32_operatingsystem where caption like '%Windows 10%'") -or $script:Params.ContainsKey('RevertContextMenu')) {
Write-Output "" Write-Output ""
@@ -1013,8 +1164,8 @@ function DisplayCustomModeOptions {
Write-Output "" Write-Output ""
if ($( Read-Host -Prompt " Disable & hide the recommended section in the start menu? This applies to all users (y/n)" ) -eq 'y') { if ($( Read-Host -Prompt " Disable the recommended section in the start menu? This applies to all users (y/n)" ) -eq 'y') {
AddParameter 'DisableStartRecommended' 'Disable & hide the recommended section in the start menu.' AddParameter 'DisableStartRecommended' 'Disable the recommended section in the start menu.'
} }
Write-Output "" Write-Output ""
@@ -1036,6 +1187,59 @@ function DisplayCustomModeOptions {
AddParameter 'TaskbarAlignLeft' 'Align taskbar icons to the left' AddParameter 'TaskbarAlignLeft' 'Align taskbar icons to the left'
} }
# Show options for combine icon on taskbar, only continue on valid input
Do {
Write-Output ""
Write-Host " Options:" -ForegroundColor Yellow
Write-Host " (n) No change" -ForegroundColor Yellow
Write-Host " (1) Always" -ForegroundColor Yellow
Write-Host " (2) When taskbar is full" -ForegroundColor Yellow
Write-Host " (3) Never" -ForegroundColor Yellow
$TbCombineTaskbar = Read-Host " Combine taskbar buttons and hide labels? (n/1/2/3)"
}
while ($TbCombineTaskbar -ne 'n' -and $TbCombineTaskbar -ne '0' -and $TbCombineTaskbar -ne '1' -and $TbCombineTaskbar -ne '2' -and $TbCombineTaskbar -ne '3')
# Select correct taskbar goup option based on user input
switch ($TbCombineTaskbar) {
'1' {
AddParameter 'CombineTaskbarAlways' 'Always combine taskbar buttons and hide labels for the main display'
AddParameter 'CombineMMTaskbarAlways' 'Always combine taskbar buttons and hide labels for secondary displays'
}
'2' {
AddParameter 'CombineTaskbarWhenFull' 'Combine taskbar buttons and hide labels when taskbar is full for the main display'
AddParameter 'CombineMMTaskbarWhenFull' 'Combine taskbar buttons and hide labels when taskbar is full for secondary displays'
}
'3' {
AddParameter 'CombineTaskbarNever' 'Never combine taskbar buttons and show labels for the main display'
AddParameter 'CombineMMTaskbarNever' 'Never combine taskbar buttons and show labels for secondary displays'
}
}
# Show options for changing on what taskbar(s) app icons are shown, only continue on valid input
Do {
Write-Output ""
Write-Host " Options:" -ForegroundColor Yellow
Write-Host " (n) No change" -ForegroundColor Yellow
Write-Host " (1) Show app icons on all taskbars" -ForegroundColor Yellow
Write-Host " (2) Show app icons on main taskbar and on taskbar where the windows is open" -ForegroundColor Yellow
Write-Host " (3) Show app icons only on taskbar where the window is open" -ForegroundColor Yellow
$TbCombineTaskbar = Read-Host " Change how to show app icons on the taskbar when using multiple monitors? (n/1/2/3)"
}
while ($TbCombineTaskbar -ne 'n' -and $TbCombineTaskbar -ne '0' -and $TbCombineTaskbar -ne '1' -and $TbCombineTaskbar -ne '2' -and $TbCombineTaskbar -ne '3')
# Select correct taskbar goup option based on user input
switch ($TbCombineTaskbar) {
'1' {
AddParameter 'MMTaskbarModeAll' 'Show app icons on all taskbars'
}
'2' {
AddParameter 'MMTaskbarModeMainActive' 'Show app icons on main taskbar and on taskbar where the windows is open'
}
'3' {
AddParameter 'MMTaskbarModeActive' 'Show app icons only on taskbar where the window is open'
}
}
# Show options for search icon on taskbar, only continue on valid input # Show options for search icon on taskbar, only continue on valid input
Do { Do {
Write-Output "" Write-Output ""
@@ -1074,8 +1278,8 @@ function DisplayCustomModeOptions {
Write-Output "" Write-Output ""
if ($( Read-Host -Prompt " Disable the widgets service and hide the icon from the taskbar? (y/n)" ) -eq 'y') { if ($( Read-Host -Prompt " Disable the widgets service to remove widgets on the taskbar & lockscreen? (y/n)" ) -eq 'y') {
AddParameter 'DisableWidgets' 'Disable the widget service & hide the widget (news and interests) icon from the taskbar' AddParameter 'DisableWidgets' 'Disable widgets on the taskbar & lockscreen'
} }
# Only show this options for Windows users running build 22621 or earlier # Only show this options for Windows users running build 22621 or earlier
@@ -1095,6 +1299,11 @@ function DisplayCustomModeOptions {
AddParameter 'EnableEndTask' "Enable the 'End Task' option in the taskbar right click menu" AddParameter 'EnableEndTask' "Enable the 'End Task' option in the taskbar right click menu"
} }
} }
Write-Output ""
if ($( Read-Host -Prompt " Enable the 'Last Active Click' behavior in the taskbar app area? (y/n)" ) -eq 'y') {
AddParameter 'EnableLastActiveClick' "Enable the 'Last Active Click' behavior in the taskbar app area"
}
} }
Write-Output "" Write-Output ""
@@ -1229,6 +1438,9 @@ else {
# Get current Windows build version to compare against features # Get current Windows build version to compare against features
$WinVersion = Get-ItemPropertyValue 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' CurrentBuild $WinVersion = Get-ItemPropertyValue 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' CurrentBuild
# Check if the machine supports Modern Standby, this is used to determine if the DisableModernStandbyNetworking option can be used
$script:ModernStandbySupported = CheckModernStandbySupport
$script:Params = $PSBoundParameters $script:Params = $PSBoundParameters
$script:FirstSelection = $true $script:FirstSelection = $true
$SPParams = 'WhatIf', 'Confirm', 'Verbose', 'Silent', 'Sysprep', 'Debug', 'User', 'CreateRestorePoint', 'LogPath' $SPParams = 'WhatIf', 'Confirm', 'Verbose', 'Silent', 'Sysprep', 'Debug', 'User', 'CreateRestorePoint', 'LogPath'
@@ -1255,15 +1467,9 @@ else {
$ProgressPreference = 'Continue' $ProgressPreference = 'Continue'
} }
# Make sure all requirements for Sysprep are met, if Sysprep is enabled
if ($script:Params.ContainsKey("Sysprep")) { if ($script:Params.ContainsKey("Sysprep")) {
$defaultUserPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), '\Default\NTUSER.DAT' $defaultUserPath = GetUserDirectory -userName "Default"
# Exit script if default user directory or NTUSER.DAT file cannot be found
if (-not (Test-Path "$defaultUserPath")) {
Write-Host "Error: Unable to start Win11Debloat in Sysprep mode, cannot find default user folder at '$defaultUserPath'" -ForegroundColor Red
AwaitKeyToExit
}
# Exit script if run in Sysprep mode on Windows 10 # Exit script if run in Sysprep mode on Windows 10
if ($WinVersion -lt 22000) { if ($WinVersion -lt 22000) {
Write-Host "Error: Win11Debloat Sysprep mode is not supported on Windows 10" -ForegroundColor Red Write-Host "Error: Win11Debloat Sysprep mode is not supported on Windows 10" -ForegroundColor Red
@@ -1273,13 +1479,7 @@ if ($script:Params.ContainsKey("Sysprep")) {
# Make sure all requirements for User mode are met, if User is specified # Make sure all requirements for User mode are met, if User is specified
if ($script:Params.ContainsKey("User")) { if ($script:Params.ContainsKey("User")) {
$userPath = $env:USERPROFILE -Replace ('\\' + $env:USERNAME + '$'), "\$($script:Params.Item("User"))\NTUSER.DAT" $userPath = GetUserDirectory -userName $script:Params.Item("User")
# Exit script if user directory or NTUSER.DAT file cannot be found
if (-not (Test-Path "$userPath")) {
Write-Host "Error: Unable to run Win11Debloat for user $($script:Params.Item("User")), cannot find user data at '$userPath'" -ForegroundColor Red
AwaitKeyToExit
}
} }
# Remove SavedSettings file if it exists and is empty # Remove SavedSettings file if it exists and is empty
@@ -1306,8 +1506,8 @@ if ($RunAppConfigurator -or $RunAppsListGenerator) {
} }
# Change script execution based on provided parameters or user input # Change script execution based on provided parameters or user input
if ((-not $script:Params.Count) -or $RunDefaults -or $RunWin11Defaults -or $RunSavedSettings -or ($SPParamCount -eq $script:Params.Count)) { if ((-not $script:Params.Count) -or $RunDefaults -or $RunDefaultsLite -or $RunSavedSettings -or ($SPParamCount -eq $script:Params.Count)) {
if ($RunDefaults -or $RunWin11Defaults) { if ($RunDefaults -or $RunDefaultsLite) {
$Mode = '1' $Mode = '1'
} }
elseif ($RunSavedSettings) { elseif ($RunSavedSettings) {
@@ -1362,15 +1562,85 @@ if ((-not $script:Params.Count) -or $RunDefaults -or $RunWin11Defaults -or $RunS
switch ($Mode) { switch ($Mode) {
# Default mode, loads defaults after confirmation # Default mode, loads defaults after confirmation
'1' { '1' {
AddParameter 'CreateRestorePoint' 'Create a system restore point' $false
# Show the default settings with confirmation, unless Silent parameter was passed # Show the default settings with confirmation, unless Silent parameter was passed
if (-not $Silent) { if (-not $Silent) {
PrintFromFile "$PSScriptRoot/Assets/Menus/DefaultSettings" "Default Mode" # Show options for app removal
if ((-not $RunDefaults) -and (-not $RunDefaultsLite)) {
PrintHeader 'Default Mode'
Write-Host "Please note: The default selection of apps includes Microsoft Teams, Spotify, Sticky Notes and more. Select option 2 to verify and change what apps are removed by the script." -ForegroundColor DarkGray
Write-Output ""
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 apps" -ForegroundColor Yellow
Write-Host " (2) Manually select which apps to remove" -ForegroundColor Yellow
$RemoveAppsInput = Read-Host "Do you want to remove any apps? Apps will be removed for all users (n/1/2)"
# Show app selection form if user entered option 3
if ($RemoveAppsInput -eq '2') {
$result = ShowAppSelectionForm
if ($result -ne [System.Windows.Forms.DialogResult]::OK) {
# User cancelled or closed app selection, show error and change RemoveAppsInput so the menu will be shown again
Write-Output ""
Write-Host "Cancelled application selection, please try again" -ForegroundColor Red
$RemoveAppsInput = 'c'
}
Write-Output ""
}
}
while ($RemoveAppsInput -ne 'n' -and $RemoveAppsInput -ne '0' -and $RemoveAppsInput -ne '1' -and $RemoveAppsInput -ne '2')
} elseif ($RunDefaultsLite) {
$RemoveAppsInput = '0'
} else {
$RemoveAppsInput = '1'
}
PrintHeader 'Default Mode'
Write-Output "Win11Debloat will make the following changes:"
# Select correct option based on user input
switch ($RemoveAppsInput) {
'1' {
AddParameter 'RemoveApps' 'Remove the default selection of apps:' $false
PrintAppsList "$PSScriptRoot/Appslist.txt"
}
'2' {
AddParameter 'RemoveAppsCustom' "Remove $($script:SelectedApps.Count) apps:" $false
PrintAppsList "$PSScriptRoot/CustomAppsList"
}
}
# Only add this option for Windows 10 users
if (get-ciminstance -query "select caption from win32_operatingsystem where caption like '%Windows 10%'") {
AddParameter 'Hide3dObjects' "Hide the 3D objects folder under 'This pc' in File Explorer" $false
AddParameter 'HideChat' 'Hide the chat (meet now) icon from the taskbar' $false
}
# Only add these options for Windows 11 users (build 22000+)
if ($WinVersion -ge 22000) {
if ($script:ModernStandbySupported) {
AddParameter 'DisableModernStandbyNetworking' 'Disable network connectivity during Modern Standby' $false
}
AddParameter 'DisableRecall' 'Disable Windows Recall' $false
AddParameter 'DisableClickToDo' 'Disable Click to Do (AI text & image analysis)' $false
}
PrintFromFile "$PSScriptRoot/Assets/Menus/DefaultSettings" "Default Mode" $false
Write-Output "Press enter to execute the script or press CTRL+C to quit..." Write-Output "Press enter to execute the script or press CTRL+C to quit..."
Read-Host | Out-Null Read-Host | Out-Null
} }
$DefaultParameterNames = 'CreateRestorePoint','RemoveApps','DisableTelemetry','DisableBing','DisableLockscreenTips','DisableSuggestions','ShowKnownFileExt','DisableWidgets','HideChat','DisableCopilot','DisableFastStartup' $DefaultParameterNames = 'DisableCopilot','DisableTelemetry','DisableSuggestions','DisableEdgeAds','DisableLockscreenTips','DisableBing','ShowKnownFileExt','DisableWidgets','DisableFastStartup'
PrintHeader 'Default Mode' PrintHeader 'Default Mode'
@@ -1380,11 +1650,6 @@ if ((-not $script:Params.Count) -or $RunDefaults -or $RunWin11Defaults -or $RunS
$script:Params.Add($ParameterName, $true) $script:Params.Add($ParameterName, $true)
} }
} }
# Only add this option for Windows 10 users, if it doesn't already exist
if ((get-ciminstance -query "select caption from win32_operatingsystem where caption like '%Windows 10%'") -and (-not $script:Params.ContainsKey('Hide3dObjects'))) {
$script:Params.Add('Hide3dObjects', $Hide3dObjects)
}
} }
# Custom mode, show & add options based on user input # Custom mode, show & add options based on user input
@@ -1432,18 +1697,16 @@ if ((-not $script:Params.Count) -or $RunDefaults -or $RunWin11Defaults -or $RunS
$parameterName = $line.Substring(0, $line.IndexOf('#')) $parameterName = $line.Substring(0, $line.IndexOf('#'))
# Print parameter description and add parameter to Params list # Print parameter description and add parameter to Params list
if ($parameterName -eq "RemoveAppsCustom") { switch ($parameterName) {
if (-not (Test-Path "$PSScriptRoot/CustomAppsList")) { 'RemoveApps' {
# Apps file does not exist, skip PrintAppsList "$PSScriptRoot/Appslist.txt" $true
continue }
'RemoveAppsCustom' {
PrintAppsList "$PSScriptRoot/CustomAppsList" $true
}
default {
Write-Output $line.Substring(($line.IndexOf('#') + 1), ($line.Length - $line.IndexOf('#') - 1))
} }
$appsList = ReadAppslistFromFile "$PSScriptRoot/CustomAppsList"
Write-Output "- Remove $($appsList.Count) apps:"
Write-Host $appsList -ForegroundColor DarkGray
}
else {
Write-Output $line.Substring(($line.IndexOf('#') + 1), ($line.Length - $line.IndexOf('#') - 1))
} }
if (-not $script:Params.ContainsKey($parameterName)) { if (-not $script:Params.ContainsKey($parameterName)) {
@@ -1511,12 +1774,6 @@ switch ($script:Params.Keys) {
RemoveApps $appsList RemoveApps $appsList
continue continue
} }
'RemoveDevApps' {
$appsList = 'Microsoft.PowerAutomateDesktop', 'Microsoft.RemoteDesktop', 'Windows.DevHome'
Write-Output "> Removing developer-related related apps..."
RemoveApps $appsList
continue
}
'RemoveGamingApps' { 'RemoveGamingApps' {
$appsList = 'Microsoft.GamingApp', 'Microsoft.XboxGameOverlay', 'Microsoft.XboxGamingOverlay' $appsList = 'Microsoft.GamingApp', 'Microsoft.XboxGameOverlay', 'Microsoft.XboxGamingOverlay'
Write-Output "> Removing gaming related apps..." Write-Output "> Removing gaming related apps..."
@@ -1545,6 +1802,10 @@ switch ($script:Params.Keys) {
RegImport "> Disabling tips, tricks, suggestions and ads across Windows..." "Disable_Windows_Suggestions.reg" RegImport "> Disabling tips, tricks, suggestions and ads across Windows..." "Disable_Windows_Suggestions.reg"
continue continue
} }
'DisableEdgeAds' {
RegImport "> Disabling ads, suggestions and the MSN news feed in Microsoft Edge..." "Disable_Edge_Ads_And_Suggestions.reg"
continue
}
{$_ -in "DisableLockscrTips", "DisableLockscreenTips"} { {$_ -in "DisableLockscrTips", "DisableLockscreenTips"} {
RegImport "> Disabling tips & tricks on the lockscreen..." "Disable_Lockscreen_Tips.reg" RegImport "> Disabling tips & tricks on the lockscreen..." "Disable_Lockscreen_Tips.reg"
continue continue
@@ -1570,7 +1831,7 @@ switch ($script:Params.Keys) {
continue continue
} }
'DisableCopilot' { 'DisableCopilot' {
RegImport "> Disabling & removing Microsoft Copilot..." "Disable_Copilot.reg" RegImport "> Disabling Microsoft Copilot..." "Disable_Copilot.reg"
# Also remove the app package for Copilot # Also remove the app package for Copilot
$appsList = 'Microsoft.Copilot' $appsList = 'Microsoft.Copilot'
@@ -1578,7 +1839,23 @@ switch ($script:Params.Keys) {
continue continue
} }
'DisableRecall' { 'DisableRecall' {
RegImport "> Disabling Windows Recall snapshots..." "Disable_AI_Recall.reg" RegImport "> Disabling Windows Recall..." "Disable_AI_Recall.reg"
continue
}
'DisableClickToDo' {
RegImport "> Disabling Click to Do..." "Disable_Click_to_Do.reg"
continue
}
'DisableEdgeAI' {
RegImport "> Disabling AI features in Microsoft Edge..." "Disable_Edge_AI_Features.reg"
continue
}
'DisablePaintAI' {
RegImport "> Disabling AI features in Paint..." "Disable_Paint_AI_Features.reg"
continue
}
'DisableNotepadAI' {
RegImport "> Disabling AI features in Notepad..." "Disable_Notepad_AI_Features.reg"
continue continue
} }
'RevertContextMenu' { 'RevertContextMenu' {
@@ -1597,6 +1874,10 @@ switch ($script:Params.Keys) {
RegImport "> Disabling Fast Start-up..." "Disable_Fast_Startup.reg" RegImport "> Disabling Fast Start-up..." "Disable_Fast_Startup.reg"
continue continue
} }
'DisableModernStandbyNetworking' {
RegImport "> Disabling network connectivity during Modern Standby..." "Disable_Modern_Standby_Networking.reg"
continue
}
'ClearStart' { 'ClearStart' {
Write-Output "> Removing all pinned apps from the start menu for user $(GetUserName)..." Write-Output "> Removing all pinned apps from the start menu for user $(GetUserName)..."
ReplaceStartMenu ReplaceStartMenu
@@ -1618,7 +1899,7 @@ switch ($script:Params.Keys) {
continue continue
} }
'DisableStartRecommended' { 'DisableStartRecommended' {
RegImport "> Disabling and hiding the start menu recommended section..." "Disable_Start_Recommended.reg" RegImport "> Disabling the start menu recommended section..." "Disable_Start_Recommended.reg"
continue continue
} }
'DisableStartPhoneLink' { 'DisableStartPhoneLink' {
@@ -1641,6 +1922,42 @@ switch ($script:Params.Keys) {
RegImport "> Aligning taskbar buttons to the left..." "Align_Taskbar_Left.reg" RegImport "> Aligning taskbar buttons to the left..." "Align_Taskbar_Left.reg"
continue continue
} }
'CombineTaskbarAlways' {
RegImport "> Setting the taskbar on the main display to always combine buttons and hide labels..." "Combine_Taskbar_Always.reg"
continue
}
'CombineTaskbarWhenFull' {
RegImport "> Setting the taskbar on the main display to only combine buttons and hide labels when the taskbar is full..." "Combine_Taskbar_When_Full.reg"
continue
}
'CombineTaskbarNever' {
RegImport "> Setting the taskbar on the main display to never combine buttons or hide labels..." "Combine_Taskbar_Never.reg"
continue
}
'CombineMMTaskbarAlways' {
RegImport "> Setting the taskbar on secondary displays to always combine buttons and hide labels..." "Combine_MMTaskbar_Always.reg"
continue
}
'CombineMMTaskbarWhenFull' {
RegImport "> Setting the taskbar on secondary displays to only combine buttons and hide labels when the taskbar is full..." "Combine_MMTaskbar_When_Full.reg"
continue
}
'CombineMMTaskbarNever' {
RegImport "> Setting the taskbar on secondary displays to never combine buttons or hide labels..." "Combine_MMTaskbar_Never.reg"
continue
}
'MMTaskbarModeAll' {
RegImport "> Setting the taskbar to only show app icons on main taskbar..." "MMTaskbarMode_All.reg"
continue
}
'MMTaskbarModeMainActive' {
RegImport "> Setting the taskbar to show app icons on all taskbars..." "MMTaskbarMode_Main_Active.reg"
continue
}
'MMTaskbarModeActive' {
RegImport "> Setting the taskbar to only show app icons on the taskbar where the window is open..." "MMTaskbarMode_Active.reg"
continue
}
'HideSearchTb' { 'HideSearchTb' {
RegImport "> Hiding the search icon from the taskbar..." "Hide_Search_Taskbar.reg" RegImport "> Hiding the search icon from the taskbar..." "Hide_Search_Taskbar.reg"
continue continue
@@ -1662,7 +1979,7 @@ switch ($script:Params.Keys) {
continue continue
} }
{$_ -in "HideWidgets", "DisableWidgets"} { {$_ -in "HideWidgets", "DisableWidgets"} {
RegImport "> Disabling the widget service and hiding the widget icon from the taskbar..." "Disable_Widgets_Taskbar.reg" RegImport "> Disabling widgets on the taskbar & lockscreen..." "Disable_Widgets_Service.reg"
# Also remove the app package for Widgets # Also remove the app package for Widgets
$appsList = 'Microsoft.StartExperiencesApp' $appsList = 'Microsoft.StartExperiencesApp'
@@ -1677,6 +1994,10 @@ switch ($script:Params.Keys) {
RegImport "> Enabling the 'End Task' option in the taskbar right click menu..." "Enable_End_Task.reg" RegImport "> Enabling the 'End Task' option in the taskbar right click menu..." "Enable_End_Task.reg"
continue continue
} }
'EnableLastActiveClick' {
RegImport "> Enabling the 'Last Active Click' behavior in the taskbar app area..." "Enable_Last_Active_Click.reg"
continue
}
'ExplorerToHome' { 'ExplorerToHome' {
RegImport "> Changing the default location that File Explorer opens to `Home`..." "Launch_File_Explorer_To_Home.reg" RegImport "> Changing the default location that File Explorer opens to `Home`..." "Launch_File_Explorer_To_Home.reg"
continue continue