
Beagle has had its 15 minutes of fame. Now Tracker offers Beagle's capabilities and more. And it's faster, too.
There was plenty of "ooh-ing" and "ahh-ing" when Beagle came out. It was the desktop search tool for GNU/Linux - and was even recognized as beating Apple to the draw on innovation. But Beagle earned a reputation for hogging system resources and also became associated in a bad way with Mono. Tracker, or Meta-Tracker, offers desktop search capabilities and more, with a bonus performance improvement over Beagle - and with none of the stigma attached to mono for those that love to hate that development platform.
Tracker is, at bottom line, a desktop search and metadata store that uses SQLite as its engine. If you're used to using locate to find files via the command line, you might be wondering what you need Tracker for. Well, SQLite provides more powerful search capability than locatedb. What's more, Tracker offers the ability to search on the word "Sing", for example, and find "singing" as well. On top of that, Tracker finds your search terms in the contents of files, as well as in the filenames. And it can handle binary file formats.
Written in C, instead of Mono, it not only offers a speed advantage, it can also run on low-memory systems with 128-256MB of RAM. If you run Beagle on a system like that, you may as well take a break and come back after lunch. And, based on some comments I've seen, make that after supper. Another difference between Beagle and Tracker is the fact that Beagle does not attempt to become the metadata store, but instead, relies on the various applications to do that. Tracker handles the metadata (data about your documents) so that the other applications don't need to. In reality, not many application projects have exposed their metadata to Beagle, so Tracker's approach gets the job done.
According to PaperBox developer, Marko Anastasov, "The possibilities
will expand when Tracker begins to implement XESAM (eXtEnsible Search And Metadata)specification, for example applications will be able to receive notifications about metadata changes, relationships between various desktop objects should be possible etc." PaperBox is a document browser that takes advantage of Tracker's metadata store to offer users a useful means of browsing documents.
I asked Jamie McCracken, Tracker's developer, why an old-school, "directories-and-files" kind of guy would switch to Tracker, instead of sticking with the usual approach. I create sub-directories in /home/~/, and don't see why I would need a tool like Tracker. Jamie replied that, "search is most beneficial for untidy or new users that have massive downloads folder". Aha!
I do recall a lady who literally was saving all of her documents to her Windows desktop because she had no clue how to save documents in folders. A quick lesson in folder management was all it took to get her straightened out, but some people probably don't even think to ask that much. While I worry that we are making it easier for users to avoid learning basic computer skills, I can see how such a tool would be useful, especially if you have countless thousands of photos or other files that you need to search through quickly.
And while we're on the subject, a few projects are already taking advantage of Tracker's capabilities, including KDE Search GUI, Nautilus, GNOME Main Menu Support, Tracker-search-tool (Command-Line Interface to Tracker), FUSE, and the GTK File Chooser. That's in addition to PaperBox and Gabasa (a PyGTK front-end). Given Tracker's desktop-neutral design, just about any project can integrate it into their application. It currently supports at least 10 different data types, with support for another 7 types planned. If you're using Ubuntu Gutsy, you're probably already playing with Tracker.
You can get started with Tracker, or visit the home page (above) to learn more. This is one project desktop users will want to track fairly closely.