FlatpakPermissionModel: Rewrite override data management, drop manual string puzzle
Nuke m_overridesData string and all manual string operations associated with it, in favor of using proper data structures like KConfig and FlatpakPermission. Unparsable entries are preserved in a new special map now, and get written back to support forward compatibility with possible future extensions to flatpak-metadata(5) format. This commit enabled "OFF" (a.k.a. "deny", `!`) access mode for filesystems, since now backend code finally able to correctly handle 'enabled' state of filesystems permissions as well. Default mode for disabled-by-default standard filesystems is read-only now. For the purposes of comparison and some predicates like isDefaults, disabled non-'Simple' entries now ignore their values, as for them the disabled state means that they are actually marked for removal -- a concept that we currently don't represent in the UI in a very obvious way though. (cherry picked from commit 99f13f6a) Conflicts: The only merge conflict was to port m_reference->permissionsFilename() back to m_reference->path(), because we didn't cherry-pick refactoring of FlatpakReference class.
Please register or sign in to comment