Installing LF 0.9+

Installing LibraryFind 0.9






LibraryFind 0.9 represents a number of significant changes over LibraryFind 0.8+.  Some of these changes are related to the way that UI interacts with the API, some are related to the actual infrastructure of the application.  The following are a set of step by step instructions for setting up a new LibraryFind installation.





LibraryFind 0.9 implements a number of new technologies, chief among those is Rails 2.2.2 and mod_rails.  The mod_rails module is significant, in that for the first time, LibraryFind can now be managed through apache rather than through the Mongrel webserver.  This has a direct affect on speed and response time, as well as memory management.




Prior to installing LibraryFind, a number of system components need to be made ready.

1)      Install Mysql and Mysql development libraries

2)      Install Yaz and Yaz development libraries

3)      Install libxml2 and libxml2 development libraries

4)      Install ruby 1.8.7+ (not 1.9 due to lack of good rails support for that version)

5)      Install rubygems (current version)

6)      Install Rails 2.2.2

7)      Install gem passenger
Formal install instructions are located at:
After installing the gem, run the following commands:
passenger-install-apache2-module (follow further instructions)

8)      Create a new database
Command: Create database metasearch

After installing the pre-requisites, you are now ready to install the required ruby gems.  As part of the LibraryFind package, most of the required gems necessary to run the LibraryFind application are present within the vendor directory.  These gems will not need to be installed.  However, LibraryFind has four gems that must be installed manually because they must be compiled to link with shared libraries on the system.


Gem installation:


1)      mysql
Command:  gem install mysql
**Note, you may have to include a –lib option to link directly to the mysql directory.

2)      zoom
Command: gem install zoom
** note – if yaz must be installed to enable sharing in order for linking to take place.

3)      Libxml-ruby
Command: gem install libxml-ruby
** note, if libxml2 and development libraries are not installed, linking will not occur

4)      ferret
Command:  gem install ferret

5)      solr-ruby
Command: gem install solr-ruby


Final Install and Configuration:


1)      Run the database migrations
Command:  rake db:migrate

2)      Set the database configurations
Open config/database.yml and set the development and production sections with username and password information.  Set the database for development and test to metasearch

3)      Set config.yml configurations
Open config/config.yml
Options that need to be set – the ferret index location, ILL server, Parser type. 

4)      Set lf.rb configurations
Open config/iterations/lf.rb
Look over the lf.rb.example and make the necessary configuration elements.

To configure LibraryFind with apache, add the following to your apache conf file:


<VirtualHost *:[port]>

    ServerName [your servername]

    ErrorLog  /path/to/rails/app/log/error.log

    CustomLog /path/to/rails/app/log/custom.log common

    DocumentRoot /path/to/rails/app/public

    RailsBaseURI  /



Once configured, LibraryFind can now be started and stopped by restarting apache.