You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
BCU already detects Scoop (#244, #666), Chocolatey (#184), and Windows Store (Store-app helper). It even queries winget in some paths (#363 hints at this). What it does not do consistently is delegate the uninstall back through the package manager the app was installed with — it runs the vendor uninstaller instead.
Why this matters
When an app was installed by scoop install X, the correct uninstall is scoop uninstall X. Running the vendor uninstaller instead:
Leaves the winget/choco package DB thinking the app is still installed → next winget upgrade --all may reinstall
Chocolatey/scoop shims in %USERPROFILE%\scoop\shims or C:\ProgramData�ocolatey�in become dead links
Proposal
Detect the "install source" during scan (BCU can already tell scoop apps from registry keys under HKCU\…\Uninstall\<name> where UninstallString starts with %USERPROFILE%\scoop\…, and choco from C:\ProgramData�ocolatey\lib\<pkg>). Then:
Scoop-installed apps → scoop uninstall <name> (with --purge when user opts into "remove leftovers")
Store apps → keep existing StoreAppHelper path (works)
Vendor installer only → keep existing behaviour
Gate behind a settings toggle "Prefer package manager uninstall when available" (default on for scoop/winget, off for choco to stay conservative since some choco packages call vendor uninstaller anyway).
Summary
BCU already detects Scoop (#244, #666), Chocolatey (#184), and Windows Store (Store-app helper). It even queries
wingetin some paths (#363 hints at this). What it does not do consistently is delegate the uninstall back through the package manager the app was installed with — it runs the vendor uninstaller instead.Why this matters
When an app was installed by
scoop install X, the correct uninstall isscoop uninstall X. Running the vendor uninstaller instead:persistdirectory behind (already reported: why not remove persist scoop when uninstalling package #388 open, "why not remove persist scoop when uninstalling package")winget upgrade --allmay reinstall%USERPROFILE%\scoop\shimsorC:\ProgramData�ocolatey�inbecome dead linksProposal
Detect the "install source" during scan (BCU can already tell scoop apps from registry keys under
HKCU\…\Uninstall\<name>whereUninstallStringstarts with%USERPROFILE%\scoop\…, and choco fromC:\ProgramData�ocolatey\lib\<pkg>). Then:scoop uninstall <name>(with--purgewhen user opts into "remove leftovers")choco uninstall <name> -y --remove-dependencieswinget uninstall --id <id> --silentStoreAppHelperpath (works)Gate behind a settings toggle "Prefer package manager uninstall when available" (default on for scoop/winget, off for choco to stay conservative since some choco packages call vendor uninstaller anyway).
Cross-refs
persistleftover, root cause = same issueVersion
BCU v6.2.0.0 on Windows 11. Scoop 0.5.x + winget 1.10 + chocolatey 2.x on the same box.