Skip to content

Commit fb6df73

Browse files
committed
feat: switched from ame to powershell
1 parent cbb9f49 commit fb6df73

File tree

2 files changed

+90
-38
lines changed

2 files changed

+90
-38
lines changed

src/playbook/Configuration/atlas/appx.yml

Lines changed: 43 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -33,44 +33,49 @@ actions:
3333
- !appx: {name: 'MSTeams*', type: family}
3434
# 24H2 Copilot app
3535
- !appx: {name: 'Microsoft.Copilot*', type: family}
36-
37-
# Other apps
38-
- !appx: {name: 'Clipchamp.Clipchamp*', type: family}
39-
- !appx: {name: 'Disney.37853FC22B2CE*', type: family}
40-
- !appx: {name: 'SpotifyAB.SpotifyMusic*', type: family}
41-
- !appx: {name: 'Microsoft.549981C3F5F10*', type: family} # Cortana
42-
- !appx: {name: 'Microsoft.XboxApp*', type: family} # Xbox Console Companion (deprecated)
43-
- !appx: {name: 'microsoft.windowscommunicationsapps*', type: family} # Mail and Calendar
44-
- !appx: {name: 'Microsoft.MSPaint*', type: family} # Paint 3D
45-
- !appx: {name: 'Microsoft.Getstarted*', type: family} # Tips (deprecated)
46-
- !appx: {name: 'Microsoft.ZuneVideo*', type: family} # Films & TV
47-
- !appx: {name: 'MicrosoftCorporationII.MicrosoftFamily*', type: family}
48-
- !appx: {name: 'Microsoft.MixedReality.Portal*', type: family}
49-
- !appx: {name: 'Microsoft.Windows.DevHome*', type: family}
50-
- !appx: {name: 'Microsoft.BingWeather*', type: family}
51-
# Caused errors in MS Store.
52-
# - !appx: {name: 'Microsoft.BingNews*', type: family}
53-
- !appx: {name: 'Microsoft.BingSearch*', type: family}
54-
- !appx: {name: 'Microsoft.OutlookForWindows*', type: family}
55-
- !appx: {name: 'Microsoft.GetHelp*', type: family}
56-
- !appx: {name: 'Microsoft.Microsoft3DViewer*', type: family}
57-
- !appx: {name: 'Microsoft.MicrosoftOfficeHub*', type: family}
58-
- !appx: {name: 'Microsoft.MicrosoftSolitaireCollection*', type: family}
59-
- !appx: {name: 'Microsoft.MicrosoftStickyNotes*', type: family}
60-
- !appx: {name: 'Microsoft.Office.OneNote*', type: family}
61-
- !appx: {name: 'Microsoft.People*', type: family}
62-
- !appx: {name: 'Microsoft.PowerAutomateDesktop*', type: family}
63-
- !appx: {name: 'Microsoft.ScreenSketch*', type: family, option: 'remove-snipping-tool'}
64-
- !appx: {name: 'Microsoft.SkypeApp*', type: family}
65-
- !appx: {name: 'Microsoft.Todos*', type: family}
66-
- !appx: {name: 'Microsoft.WindowsAlarms*', type: family}
67-
- !appx: {name: 'Microsoft.WindowsCamera*', type: family}
68-
- !appx: {name: 'Microsoft.WindowsFeedbackHub*', type: family}
69-
- !appx: {name: 'Microsoft.WindowsMaps*', type: family}
70-
- !appx: {name: 'Microsoft.WindowsSoundRecorder*', type: family}
71-
- !appx: {name: 'Ink.Handwriting.Main.Store.en-US1.0', type: family}
72-
# Removing using AME Wizard causes issues with Cross Device Experience Host installing
73-
# - !appx: {name: 'Microsoft.YourPhone*', type: family}
36+
- !powerShell:
37+
wait: true
38+
exeDir: true
39+
errorAction: Ignore
40+
weight: 48
41+
command: >-
42+
.\APPX-REMOVER.ps1 -Packages @(
43+
'Clipchamp.Clipchamp*'
44+
'Disney.37853FC22B2CE*'
45+
'SpotifyAB.SpotifyMusic*'
46+
'Microsoft.549981C3F5F10*'
47+
'Microsoft.XboxApp*'
48+
'microsoft.windowscommunicationsapps*'
49+
'Microsoft.MSPaint*'
50+
'Microsoft.Getstarted*'
51+
'Microsoft.ZuneVideo*'
52+
'MicrosoftCorporationII.MicrosoftFamily*'
53+
'Microsoft.MixedReality.Portal*'
54+
'Microsoft.Windows.DevHome*'
55+
'Microsoft.BingWeather*'
56+
'Microsoft.BingSearch*'
57+
'Microsoft.OutlookForWindows*'
58+
'Microsoft.GetHelp*'
59+
'Microsoft.MicrosoftOfficeHub*'
60+
'Microsoft.Microsoft3DViewer*'
61+
'Microsoft.MicrosoftSolitaireCollection*'
62+
'Microsoft.MicrosoftStickyNotes*'
63+
'Microsoft.Office.OneNote*'
64+
'Microsoft.People*'
65+
'Microsoft.PowerAutomateDesktop*'
66+
'Microsoft.ScreenSketch*'
67+
'Microsoft.SkypeApp*'
68+
'Microsoft.Todos*'
69+
'Microsoft.WindowsAlarms*'
70+
'Microsoft.WindowsCamera*'
71+
'Microsoft.WindowsFeedbackHub*'
72+
'Microsoft.WindowsMaps*'
73+
'Microsoft.WindowsSoundRecorder*'
74+
'Ink.Handwriting.Main.Store.en-US1.0'
75+
'Microsoft.BingNews*'
76+
'Microsoft.YourPhone*'
77+
)
78+
7479
- !powerShell:
7580
command: |
7681
Get-AppxPackage Microsoft.YourPhone* | Remove-AppxPackage
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
param (
2+
[Parameter(Mandatory = $true)]
3+
[string[]]$Packages,
4+
[Parameter(Mandatory = $false)]
5+
[switch]$Unregister = $false
6+
)
7+
8+
$basePath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore"
9+
$allPackages = Get-AppxPackage -AllUsers | Select-Object PackageFullName, PackageFamilyName, PackageUserInformation, NonRemovable
10+
11+
foreach ($package in $Packages) {
12+
$filteredPackages = $allPackages | Where-Object { $_.PackageFullName -like "*$package*" }
13+
14+
foreach ($filteredPackage in $filteredPackages) {
15+
$fullPackageName = $filteredPackage.PackageFullName
16+
$packageFamilyName = $filteredPackage.PackageFamilyName
17+
if ($filteredPackage.NonRemovable -eq 1) {
18+
Set-NonRemovableAppsPolicy -Online -PackageFamilyName $packageFamilyName -NonRemovable 0
19+
}
20+
$deprovisionedPath = "$basePath\Deprovisioned\$packageFamilyName"
21+
if (-not (Test-Path -Path $deprovisionedPath)) {
22+
New-Item -Path $deprovisionedPath -Force
23+
}
24+
$inboxPath = "$basePath\InboxApplications\$fullPackageName"
25+
if (Test-Path $inboxPath) {
26+
Remove-Item -Path $inboxPath -Force
27+
}
28+
foreach ($userInfo in $filteredPackage.PackageUserInformation) {
29+
$userSid = $userInfo.UserSecurityID.SID
30+
$endOfLifePath = "$basePath\EndOfLife\$userSid\$fullPackageName"
31+
New-Item -Path $endOfLifePath -Force
32+
33+
if ($unregister) {
34+
Remove-AppxPackage -Package $fullPackageName -User $userSid -PreserveRoamableApplicationData
35+
}
36+
else {
37+
Remove-AppxPackage -Package $fullPackageName -User $userSid
38+
}
39+
}
40+
if ($unregister) {
41+
Remove-AppxPackage -Package $fullPackageName -AllUsers -PreserveRoamableApplicationData
42+
}
43+
else {
44+
Remove-AppxPackage -Package $fullPackageName -AllUsers
45+
}
46+
}
47+
}

0 commit comments

Comments
 (0)