Getting Started


Tracker is split up into several main components. They are:


The data store and daemon to interface to Tracker's databases


The file system crawler to mine data from local files


The meta-data extraction application used on each file


The application for writing meta-data back to files

To illustrate the relationships between libraries in the tracker stack, see how tracker-store and tracker-miner-fs are designed architecturally.

User Interfaces

Tracker aims for strong integration with graphical desktop environments. The project does not provide its own 3rd party GUI application, although older versions did provide an example search tool named "tracker-needle" and a configuration tool named "tracker-preferences".

The GNOME desktop environment makes use of Tracker for some of its search functionality. GNOME applications that make use of Tracker for discovering content include:

Each of these apps are also "search providers" for GNOME Shell, allowing you to search for content directly from the GNOME Shell "Activities" overview.

You can configure the locations to be indexed from the GNOME Control Centre, by going to the "Search" panel and clicking the gear wheel icon. To control other settings of Tracker, the dconf-editor program can be used -- look under the org/freedesktop/Tracker namespace.

Command Line Tools

You can also interact with Tracker directly using the tracker commandline tool. Run tracker help for information.

You can modify Tracker configuration from the commandline using the gsettings tool. You can get a quick glimpse of the settings using:

$ gsettings list-recursively | grep -i org.freedesktop.Tracker | sort | uniq

For more information, see the Tracker configuration page.

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 instead.

Projects/Tracker/Documentation/GettingStarted (last edited 2018-03-14 11:32:36 by SamThursfield)