Distro Planets

GNOME Shell adds native app uninstallation via GNOME Software integration

Key Takeaway

Users can now uninstall applications directly from the GNOME Shell app grid using a new D-Bus connection to GNOME Software.

Summary

As part of Google Summer of Code 2026, a new integration allows GNOME Shell to communicate with GNOME Software to facilitate app uninstallation. This feature adds an 'Uninstall' option to the app grid context menu and includes support for purging user data from sandboxed applications like Flatpaks. The implementation uses a new AppStoreIntegrationManager in the Shell and a GsAppStoreIntegrationBackend in GNOME Software.

Technical implementation details

  • GNOME Shell: Uses a new AppStoreIntegrationManager class that connects to GNOME Software via the org.gnome.Shell.AppStoreIntegration D-Bus interface.
  • Caching: The Shell caches the list of uninstallable apps in memory and listens to Shell.AppSystem signals to maintain accuracy without constant queries.
  • Safety: Critical system components tagged with GS_APP_QUIRK_COMPULSORY are filtered out to prevent accidental deletion.
  • Data Purging: A new flag GS_PLUGIN_UNINSTALL_APPS_FLAGS_PURGE_DATA allows users to wipe application data (e.g., ~/.var/app/<app-id> for Flatpaks) during uninstallation.
  • Backend: GNOME Software uses a custom GsAppStoreIntegrationBackend GObject to route queries to the GsPluginLoader.

Why it matters

This reduces friction for desktop users by centralizing package management tasks within the primary shell interface.

Original reference: blogs.gnome.org →