Implement design for enabling Persistent Storage features from other apps
This is needed for:
Notes
- The progress/failure UI is needed for Ask to save networks to the Persistent Storage ... (#18151). The authorization part is probably not.
- See design by sajolida:
- We could have some sort of privileged proxy (aka. portal) with a UI. Any application running as amnesia could ask this portal to enable a persistence feature, and the portal would 1. let the user authorize the operation with the just-in-time help dialog; 2. take care of the progress UI; 3. itself be allowed to ask tps to do the work.
- This proxy can be either an app that amnesia can start with sudo, or a D-Bus activated service.
- The non-privileged app needs to know when the operation finishes and whether it succeeded.
- In some cases this will lead us to ask essentially the same question twice in a row: in the app (or GNOME notification) and then with the portal. It's 1 more step for the user; it also allows us to give just-in-time help.
- How would it work to be connected to 2 D-Bus buses (the regular amnesia one, where it would act as a service, and the tps one, as a client)?
Edited by sajolida