Search My Blog

Thursday, August 19, 2010

Pinot, personal search and metasearch for the Free Desktop

Personal search and metasearch for the Free Desktop


Pinot is :

  • a D-Bus service that crawls, indexes your documents and monitors them for changes.
  • a GTK-based user interface that enables to query the index built by the service and your favourite Web engines, and display and analyze the results.


  • advanced queries (probabilistic search, boolean filters, wildcards, ranges on date, time and size).
  • language detection.
  • insensitive to diacritics (accents).
  • Chinese, Japanese and Korean support.
  • searching while indexing.
  • documents browsing.
  • editing of metadata.
  • documents labeling.
  • stored queries.
  • results ranking history.
  • results lists export.
  • dynamic document summaries.
  • only crawl and index the directories you choose.
  • D-Bus interface for easy integration with other applications, eg Deskbar Applet, Catfish.
  • no dependency on GNOME or KDE.
  • support for common file types.
  • search your desktop and the Web.
  • query remote indexes.
  • laptop friendly.
All code is covered by the GNU GPL and LGPL.
Feel free to join the pinot-discuss mailing list or contact the author.

Latest version

The latest version is v0.96, released on July 12th 2010.
This project is hosted by
BerliOS Logo

Go there...


Getting in touch

For general discussion about Pinot, feel free to join the pinot-discuss mailing list. For bug reports, comments and patches, contact the author.


If you would like to help with translations, Pinot is in Rosetta. Sign up and jump in !

User documentation

Please consult the README file for the current documentation. A full user manual is being worked on.

How to get started

  • Install the dependencies.
  • Install pinot.
  • If you have installed from source, check where libtextcat's LM directory is. Edit pinot's textcat.conf file if necessary. This file can be found in the directory /etc/pinot.
  • Run pinot. If you have installed a package for your distro/OS, there should be an entry in your Applications, Internet menu.
  • Resize the main window to your preferred size. Pinot will remember its size and position next time.
  • Go to the Edit, Preferences menu. Click on the Labels tab. Double click on a default label to change its name to something else, eg "Important" or "Personal". Close the preferences dialog when done.
  • In the main window, click and expand the Stored Queries box. Click on the Add button. Choose a name and enter what you want to look for in the field Query Text. Select Index Results With Label and choose a label in the list. Click on Ok to close the dialog and save the new query.
  • The engines list may be hidden by default. To have it displayed, click on the Show All Search Engines button left of the Query field.
  • Select the new query in the list. In the engines list, select the search engine of your choice. Click on the Find button next to the stored queries list.
  • Pinot should run the query, display the results in a new results tab. If you chose to index all results, they will be added to your My Web Pages index.
  • When the progress indicator at the bottom left corner stops, go to the Index, List Contents Of, My Web Pages menu. All the documents the query returned should appear in the list.
  • If you want to index the whole of your home directory, go to the Edit, Preferences menu in Pinot, choose the Indexing tab. In the first list, click the Add button and select your home directory as location. Click Open. Click on the Monitor checkbox if you would like the D-Bus service to monitor this location for changes. Now, close the Preferences box to fire up the D-Bus service. If you wish to start it manually later on, you can either run it manually from the command-line :
    $ pinot-dbus-daemon &     
    or let D-Bus activation do its job and invoke one of its methods, for instance :
    $ dbus-send --session --print-reply --type=method_call --dest=de.berlios.Pinot /de/berlios/Pinot de.berlios.Pinot.GetStatistics     
  • When the D-Bus service starts up, it will crawl the locations you have defined in Indexing and index new documents if finds. Typically, this will load your system somewhat. Once crawling is done, it will just switch to monitoring and run quietly in the background.'s Autostart should ensure the daemon is managed by your Desktop Environment's session manager and started automatically when you log in.
  • If you are a shell addict, you can query the index from the command-line using the quest and delve utilities that come with xapian-core, or with pinot-search. For instance, look for web pages and local documents that mention Bozo :
    $ pinot-search xapian ~/.pinot/index "bozo" $ pinot-search xapian ~/.pinot/daemon "bozo"     
    or see what terms and data the index holds for the first result you indexed :
    $ delve -r 1 -d ~/.pinot/index     
  Go there...


No comments: