UX for Flatpak permission changes on update
Background
Flatpaks come with certain permissions baked in, like different levels of filesystem access. These permissions can change from version to version, raising the possibility that a Flatpak can increase its permission level as part of an update. The current approach Software takes for this is to:
- Hold the update back until the user manually clicks the update button (this basically stops autoupdating from working on the update)
- Show a "requires additional permissions" label next to the update
We're holding updates back without properly notifying the user, and we're telling them there's an issue, without giving them information about what the issue actually is.
There are a couple of old MRs that are intended to improve this situation: one shows notifications when the update is being blocked, the other removes the blocking behaviour completely.
Options
The current behaviour has the worst of both worlds: we have some incomplete handling, which blocks important functionality, but doesn't properly inform the user about it.
My view is that we should either fully build out the experience here, or we should drop the special handling for these updates.
Option 1
- Hold updates with increased permissions back, like we do now
- Show a notification to say that the notification is being held back
- Show an infobar to show that updates are being held back
- Use a dialog to indicate what the permission changes are, and allow the user to give consent
Option 2
Don't do any special treatment at all - don't block the update, don't show a notification, don't show an indication in the update list, don't require the update to be manually approved.