summaryrefslogtreecommitdiff
path: root/remove_preinstalled_apps.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'remove_preinstalled_apps.ps1')
-rw-r--r--remove_preinstalled_apps.ps146
1 files changed, 46 insertions, 0 deletions
diff --git a/remove_preinstalled_apps.ps1 b/remove_preinstalled_apps.ps1
new file mode 100644
index 0000000..168e32b
--- /dev/null
+++ b/remove_preinstalled_apps.ps1
@@ -0,0 +1,46 @@
+<#
+.SYNOPSIS
+ Automatically remove preinstalled apps on Windows 10/11
+.NOTES
+ Sourced from https://learn.microsoft.com/en-us/windows/privacy/manage-connections-from-windows-operating-system-components-to-microsoft-services#bkmk-preinstalledapps
+#>
+
+$ErrorActionPreference = "Stop"
+
+
+function Remove-DefaultPackage {
+ param (
+ [String]$Package
+ )
+
+ Write-Host -Message "Removing default package $Package..."
+ Get-AppxProvisionedPackage -Online | Where-Object {$_.PackageName -Like $Package} | ForEach-Object { Remove-AppxProvisionedPackage -Online -PackageName $_.PackageName}
+ Write-Host -Message "Removing $Package from current user..."
+ Get-AppxPackage $Package | Remove-AppxPackage
+}
+
+$packages = @(
+ "Microsoft.BingNews"
+ "Microsoft.BingWeather"
+ "Microsoft.BingFinance"
+ "Microsoft.BingSports"
+ "*.Twitter"
+ # This won't break much
+ # "Microsoft.XboxApp"
+ # These will, though
+ # "Microsoft.Xbox.TCUI"
+ # "Microsoft.XboxGameCallableUI"
+ # "Microsoft.XboxGamingOverlay"
+ # "Microsoft.XboxIdentityProvider"
+ "Microsoft.Office.Sway"
+ "Microsoft.Office.OneNote"
+ "Microsoft.MicrosoftOfficeHub"
+ "Microsoft.SkypeApp"
+ "Microsoft.MicrosoftStickyNotes"
+)
+
+foreach ($package in $packages) {
+ Remove-DefaultPackage -Name $package
+}
+
+Write-Host -Message "Done"