Improve data sandboxing by using Tracker 3
The Tracker search engine has historically exposed the whole search index to the Flatpak sandbox, with no way to enforce that apps can only see data relevant to them.
Tracker 3 introduces data sandboxing using graphs. Apps need updating to take advantage of this.
Port all apps to use Tracker 3.0 API.
Ensure Flatpak apps use
xdg-tracker-portal and specify a limited set of graphs they will access.
- core apps
- all other apps that use Tracker
People on charge & contact
- Carlos Garnacho @carlosg
- Sam Thursfield @sthursfield
Instructions to achieve the goals
Label for tracking the initiative
"~9. Initiative: Tracker 3"
Text for the initiative issue in projects
/label ~"9. Initiative: Tracker 3"
List of projects & tasks
Core apps and libraries that need attention:
GTK (Tracker search engine) - @carlosg (gtk!1944 (merged) ,gtk!1945 (merged))
gnome-online-miners - @sthursfield (https://gitlab.gnome.org/GNOME/gnome-online-miners/-/merge_requests/3)
grilo-plugins (Tracker plugin) - @carlosg (grilo-plugins!85 (merged))
libfolks (Tracker backend) and GNOME Contacts - @carlosg (folks!44 (merged))
Rygel (Tracker plugin) - @jensgeorg
GNOME Boxes - @carlosg (gnome-boxes!332 (merged))
GNOME Files (Nautilus) - @sthursfield (nautilus!553 (merged))
GNOME Music (uses grilo) - @jfelder and @carlosg (gnome-music!728 (closed))
GNOME Photos (uses gnome-online-miners) - @sthursfield (gnome-photos#152)
GNOME Videos (uses grilo) - @carlosg (totem!146 (merged), totem!154 (merged))
Others we should look at:
GNOME Applets (part of GNOME Flashback) - @muktupavels (gnome-applets!66 (merged))
GNOME Books - @carlosg (https://gitlab.gnome.org/GNOME/gnome-books/-/merge_requests/51)
GNOME Documents (uses gnome-online-miners) - @carlosg (https://gitlab.gnome.org/GNOME/gnome-documents/-/merge_requests/35)
GNOME Games - @jfelder (https://gitlab.gnome.org/GNOME/gnome-games/-/merge_requests/424)
GNOME Notes (Bijiben) - @carlosg (gnome-notes!60 (merged))
GNOME Usage - @sthursfield gnome-usage!77 (merged)
Brasero - @carlosg brasero!10 (merged)
We will also need to update gnome-build-meta and jhbuild.
User data will need to be migrated for some apps. A prototype of how to do this is here: https://gitlab.gnome.org/sthursfield/tracker-data-migration-tools/ -- more work is needed.
Testing will be required of all the apps. Our aim is to have a tracker-3 .flatpak bundle for each app that everyone can test. Additional testing can be done using VM images built from gnome-build-meta..
How can I help
- Test the ported apps using Flatpak (see https://discourse.gnome.org/t/tracker-3-app-porting/3351)
- Review existing merge requests
- Help port the remaining apps