lundi 9 février 2009
Installer acts_as_xapian sur DreamHost
Qu'est ce que Xapian ?

Xapian est un moteur de recherche Open Source, écrit en C++, qui permet grâce à des modules d'être utilisé dans des langages de script tel que Ruby mais bien d'autres aussi.
L'avantage de ce genre de moteur, est qu'il permet une recherche dite "Full text" et documentaire, car celui-ci s'appuie sur le langage naturel pour indexer les données. Globalement sur de gros volumes de données, il permet une catégorisation intelligente dans le but de remonter l'information la plus pertinente lors d'une recherche.
Voici une petite astuce pour installer acts_as_xapian sur un espace d'hébergement DreamHost.
Téléchargement des fichiers
Se connecter en SSH sur votre compte DreamHost et récupérer les sources du projet Xapian : xapian-core et xapian-biding.
mkdir -p ~/tmp/src mkdir -p ~/opt/ruby_modules cd ~/tmp/src wget http://oligarchy.co.uk/xapian/1.0.10/xapian-core-1.0.10.tar.gz tar -zxvf xapian-core-1.0.10.tar.gz wget http://oligarchy.co.uk/xapian/1.0.10/xapian-bindings-1.0.10.tar.gz tar -zxvf xapian-bindings-1.0.10.tar.gz
Compiler et installer Xapian
cd xapian-core ./configure --prefix=$HOME/opt make && make install cd ../xapian-bindings ./configure --with-ruby --prefix=$HOME/opt RUBY_LIB=$HOME/opt/ruby_modules RUBY_LIB_ARCH=$HOME/opt/ruby_modules XAPIAN_CONFIG=$HOME/opt/bin/xapian-config make && make install
Une fois l'installation terminée, installer le plugin acts_as_xapian dans votre projet rails :
cd racine_de_mon_projet_rails git clone git://github.com/frabcus/acts_as_xapian.git vendor/plugins/acts_as_xapian
Éditer ENSUITE, le fichier config/environment.rb et dans le bloc "Rails::Initializer.run do |config|" ajouter :
if ENV['RAILS_ENV'] == "production" config.load_paths += [ ENV['HOME'] + '/opt/ruby_modules' ] end
Il est possible d'avoir un message comme quoi que Xapian n'est pas installer sur la machine mais tout fonctionne correctement.
Il ne vous reste plus qu'Ã suivre la documentation pour utiliser xapian dans vos models rails.
RubyOnRails et Ruby - lundi 9 février 2009
Tags : ruby
, rubyonrails