Strigiでは各種プラグインを利用してインデックス、ファイルタイプ、メタデータ抽出の処理を行う。ファイルシステムのインデックス情報は、今のところSQLite 3、Xapian、CLucene、Hyper Estraierに保存できる。各種ファイルタイプ用のプラグインにより、PDFやオフィススイートのファイル形式など、プレーンテキスト以外のファイルからのテキストコンテンツの取得が可能である。また、メタデータ抽出用のプラグインにより、オーディオファイルのID3タグのようなファイルの付属情報も取得できる。
Strigiの配布パッケージには、メインとなるインデキシングデーモンstrigidaemonのほか、xmlindexer、strigiclient、strigicmd、deepfind、deepgrepといったクライアントが含まれている。strigiclientはGUIを備え、そこからstrigidaemonの起動と停止、インデックスの作成と検索が行える。
Fedora 8ユーザであれば、コマンド「yum install strigi」を実行してStrigiを標準のupdatesレポジトリから入手してインストールできる。
だが、今回試したRPM、「strigi-libs-0.5.7」はCLucene用のインデキシングに対応していなかった。これはかなり厄介な問題である。というのもStrigiはデフォルトでCLuceneを利用しようとするからだ。そのため、Strigiデーモンを起動しようとすると次のように致命的エラーが出る。
$ /usr/bin/strigidaemon Unknown backend type: clucene
今後のパッケージではぜひ修正してもらいたい問題だ。この問題を回避するために、CLucene、Qt4、exiv2の各開発パッケージをインストールし、Strigiをソースからビルドすることになった。Strigiでは、ビルド環境の設定にautotoolsではなくcmakeを使用する。Fedora 8の64ビットプラットフォームでビルドを行う際には、CLuceneを検出させるためにcmakeで「-D」オプションを指定する必要があることがわかった。以下のコマンド群を使えば、64ビット版Fedora 8マシンでStrigiをソースからインストールできる。
# rpm -e strigi strigi-libs # yum install clucene-core-devel qt4-devel cmake file-devel exiv2-devel ... $ tar xjvf .../strigi-0.5.7.tar.bz2 $ cd strigi-0.5.7 $ cmake -G "Unix Makefiles" -DLIB_SUFFIX=64 $ make ... [100%] Built target indextester [100%] Built target strigiclient $ sudo make install
Strigiにはデフォルトで、ファイルシステムの検索用として飾り気のないGUIクライアントが付属している。KDEやGNOMEを実行していれば、このstrigiappletを使ってデスクトップパネルからStrigiによる検索が行える。KDEユーザには、Konquerorから直接が検索が行えるKIOスレーブも用意されている。KIOスレーブおよびアプレットはstrigiappletパッケージに収録されているが、アプレットとKIOスレーブをビルドするにはkdebase-develとkdelibs-develをインストールする必要がある。
