With all of the changes in Ubuntu 19.04 came a new feature in Nautilus. You are now able to "Star" files and folders in any given directory. Nice.

But as it seems Nautilus devs decided to go a non-standard route of implementing this feature... Where is this piece of metadata stored? How does Nautilus keep track of this attribute?

Extended Attributes return nothing:

$ attr -l Testfile.png

And asking GVFS to dump all metadata via

$ gio info Testfile.png

does return all the standard attributes, but no hint of the "starred" attribute! Is it in ~/.config/nautilus? Let's hope it's attached to the file/folder, and not in some other place...

I'd like to access the "starred" attributions from outside nautilus, that's why.


Gnome Shell uses the tracker utility to log things like that. From the documentation:

Data & Logging

The databases are kept in $HOME/.cache/tracker. The user's data backup is kept in $HOME/.local/share/tracker/data.

If Tracker is configured to have the logging verbosity (set in GSettings or each .cfg file for each main component) set to a value higher than 0, then logs are generated and will usually be sent to the system journal or syslog. If the TRACKER_USE_LOG_FILES environment variable is set for a Tracker daemon it will cause logs to be written to $HOME/.local/share/tracker in addition.

I'd like to access the "starred" attributions from outside nautilus, that's why.

You can not. tracker-writeback is used for writing to the database but as the man page states:

tracker-writeback — Used to write metadata set in Tracker back to physical files.

tracker-writeback is not supposed to be run by the user since it is started by its .desktop file when the user logs in. It can also be started manually of course for debugging purposes. You can not run more than one instance of this at the same time.

For viewing data:

tracker-extract — Extract metadata from a file.

tracker extract reads the file provided and extracts any metadata it can from this file, then displays the metadata on standard output.

The metadata is displayed as a SPARQL update command, that can be run against a SPARQL endpoint to update its copy of the metadata.

The actual extraction is done by a separate process. This is done to isolate the calling process from any memory leaks or crashes in the libraries Tracker uses to extract metadata.

For more information see the libtracker-extract reference documentation.

There are no command line tools provided for inserting metadata into the database back-end. It is all tied into gnome shell.

  • Thank you for this verbose explanation! And "oh no!" - that's so sad to hear. Just look at how many words you needed to tell me where the starred attrib ends up! Why, dear devs, did you decide to go down that route...? xattribs! even GVFS!, but tracker!? ...Facepalm. Another nail into nautilus' coffin, IMHO. – isync Feb 25 '20 at 19:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.