* fix(default-flatpaks): Install/uninstall system flatpaks regardless if current user has permissions or not
Fixes: https://github.com/ublue-os/bling/pull/93
To make notify-send working for --system systemd units, I have to thank @gerblesh for his code & idea in ublue-updater.
I tested this in Silverblue & it works.
However, I would like this to be tested in other DEs like Kinoite too, to see if it's working correctly.
Feel free to improve code if you find some space for that.
@lorduskordus
* Use json parser instead as a more reliable solution on fetching values
* There is no need for echo when parsing json
* Fetch DISPLAY environment variable from printenv
* Make functions for notify-sends, to make script clearer
* Whiteline fixes
* fix:(default-flatpaks): Missing notification for system flatpaks
This approach, while more fragmented, it's cleaner, as there is a clearer separation of root & non-root operations done by flatpak-setup service. This should probably increase security too (but I'm not the expert to talk seriously about that). It also gets rid of some non-harming error for /var data, can't remember it fully.
While it may be confusing for users that they have to type:
`systemctl status --user system-flatpak-setup`
instead of previous:
`systemctl status system-flatpak-setup`
It is something worth sacrificing for the important user-experience fix.
* feat(default-flatpaks): Add info about which flatpaks are installed & uninstalled in notification. Also implement notification enable/disable config support.
* feat(default-flatpaks): Add support for configuring notifications in recipe file
* fix(default-flatpaks): Formatting fixes
* fix(default-flatpaks): Fix "enabling" typo instead of "configuring" notifications
* chore(default-flatpaks): Remove unused yq command
* fix(default-flatpaks): There is no need for 2 double quotes
* fix(default-flatpaks): Always enable systemd services
Ensures that the module always removes Fedora Flatpaks, even if a
system-wide flatpak remote isn't configured for the module.
* chore(default-flatpaks): Add output for result of repo config
* fix(default-flatpaks): Better handle multiple uses of module
* chore(default-flatpaks): Add label to output of existing config
* docs(default-flatpaks): Mention that Flatpak remote can be re-configured
* docs(default-flatpaks): Add second example to README
* docs(default-flatpaks): Clarify repo config in second example
* docs(default-flatpaks): Make example config match other modules
* docs(default-flatpaks): Indent list items in example config
Does seem to work if they aren't indented, but this way matches other
modules and seems to be best practice
There won't be anything to remove unless the module is called more than once, and if it's called more than once, the user would expect every Flatpak to be in the respective lists, so there's no need to call rm -f on it.