Sybil: Web-based software for comparative genomics

 
Home Documentation Downloads Contact

Downloads

Download page at SourceForge: Downloads Page

Installing Sybil

Step 1: Check/install prerequisites

Thus far the software has been tested only on Linux and Solaris. In addition, to download and use the sample database and Sybil web front-end you will first need to install (and in some cases, configure) the following applications and/or packages:

Step 2: Download and install the chado demo database

Go to ftp://ftp.tigr.org/pub/data/chado_demo/

# Download the sample database:
chado_demo.dump.gz (238MB)

# Create an empty database on the local PostgreSQL server
createdb 'chado_demo'

# NOTE: The above command assumes that the PostgreSQL server has been 
# installed and configured and that you are logged in as a user with 
# CREATE DATABASE privileges.  See the man page for createdb for 
# additional help with this command.

# Load the database.  This will require ~4.6GB of free space on the volume
# where the $PGDATA directory is located.
zcat chado_demo.dump.gz | psql -d chado_demo -f -

# NOTE: During the loading process you may wish to temporarily increase the 
# value of the PostgreSQL "checkpoint_segments" parameter from its default.
# Using the default value (3 in PostgreSQL 8.0.3) may cause the database to 
# complain about overly-frequent checkpointing.  Changing this parameter 
# may require a restart of the server, so check the PostgreSQL documentation
# before making any changes.

# Optimize the database
vacuumdb -d chado_demo --full --analyze --echo

# Create a database user for the sybil interface (this is only necessary if 
# a suitable user account does not already exist.)  For example, a new user
# account can be created by issuing the following command in PostgreSQL
# (see the PostgreSQL documentation for information about setting passwords
# and managing database privileges.):

create user sybil;

# Ensure that this user has SELECT permissions on the tables in chado_demo
# For example, the following commands will give *all* users SELECT permissions 
# on the tables in chado_demo:

grant select on analysis to public;
grant select on analysisfeature to public;
grant select on analysisprop to public;
grant select on author to public;
grant select on contact to public;
grant select on cv to public;
grant select on cvterm to public;
grant select on cvterm_dbxref to public;
grant select on cvterm_relationship to public;
grant select on cvtermpath to public;
grant select on cvtermsynonym to public;
grant select on db to public;
grant select on dbxref to public;
grant select on feature to public;
grant select on feature_cvterm to public;
grant select on feature_dbxref to public;
grant select on feature_pub to public;
grant select on feature_relationship to public;
grant select on feature_synonym to public;
grant select on featureloc to public;
grant select on featureprop to public;
grant select on featureprop_pub to public;
grant select on organism to public;
grant select on organism_dbxref to public;
grant select on organismprop to public;
grant select on project to public;
grant select on pub to public;
grant select on pub_author to public;
grant select on pub_dbxref to public;
grant select on pub_relationship to public;
grant select on pubprop to public;
grant select on synonym to public;
grant select on tableinfo to public;

Step 3: Download and install the Sybil software

Go to http://sourceforge.net/project/showfiles.php?group_id=123642
and download the most recent version of the sybil tarball (sybil_demo-0.92.tar.gz).

# unpack the .tar.gz file in an appropriate location:
cd /opt/
tar xzvf sybil_demo-0.92.tar.gz

# copy the src/content/shared/htdocs directory somewhere under the htdocs/ or html/ directory of your web server:
cd sybil_demo-0.92/src/content/shared
cp -R htdocs /export/my_apache_lives_here/htdocs/sybil_demo

# copy the src/chado_sybil directory somewhere under the cgi-bin/ directory of your web server:
cd ../..
cp -R chado_sybil /export/my_apache_lives_here/cgi-bin/sybil_demo

# Edit all the .cgi files to use the correct version of Perl (this is only necessary if you 
# do not wish to use /usr/local/bin/perl).  For example, to edit all the .cgi files to use 
# /usr/bin/perl instead of /usr/local/bin/perl, execute the following commands:

cd /export/my_apache_lives_here/cgi-bin/sybil_demo/chado_sybil
perl -pi -e 's/#!\/usr\/local\/bin\/perl/#!\/usr\/bin\/perl/;' `find . -name '*.cgi' -print`

# Edit the first (uncommented) line in /export/my_apache_lives_here/cgi-bin/sybil_demo/conf/Sybil.conf 
# to reference the correct database.  Initially this line reads as follows (and has the format 
# "schema:dbms:server/host"):
Chado:Sybase:WEBTIGR

# If your PostgreSQL server is running on a machine called pg-machine then you would 
# change the above line to read as follows:
Chado:Postgres:pg-machine

# NOTE: you must have the tcp listener running on the postgres host for this to work.

# Edit /export/my_apache_lives_here/cgi-bin/sybil_demo/conf/demo.conf with the username 
# and password of a user that has SELECT permissions on the postgres demo database that 
# was installed as described above.

# OPTIONAL: edit sybil_demo/conf/demo.conf with the location of a directory in
# which to store image files generated by the web interface.  Two configuration
# parameters must be edited.  The first, 'image_tmp_cache_dir', specifies the 
# location of the directory in which to write cached image files.  This directory
# must be writable by the user (typically 'apache', 'httpd', or 'nobody') from
# which CGI scripts run.  This directory must also be somewhere under the web
# server's htdocs/ or html/ directory (i.e, the files written therein must be
# visible at some public URL on your web server).  The second parameter, 
# 'image_tmp_cache_url' specifies the URL that corresponds to the directory
# given by the first parameter.  This URL does not have to be absolute, but
# may be relative to the document root, as in the following example:

   'image_tmp_cache_dir' => '/export/my_apache_lives_here/htdocs/area1/sybil_tmp'
   'image_tmp_cache_url' => '/area1/sybil_tmp',

# Create the directory you have chosen to use if it does not already exist:
mkdir /export/my_apache_lives_here/htdocs/area1/sybil_tmp
# ensure that the apache/httpd user can read and write files in this directory
# for example:
#   chown apache /export/my_apache_lives_here/htdocs/area1/sybil_tmp
#   chmod u+rwx /export/my_apache_lives_here/htdocs/area1/sybil_tmp

# Edit the <path> lines in the installed version of the file shared/urls/urls_shared.xml
# Following the instructions above, this file will be installed as 
# /export/my_apache_lives_here/cgi-bin/sybil_demo/shared/urls/urls_shared.xml
#
# The first <path>, under the location 'shared_htdocs' must be changed to the URL
# of the directory to which src/content/shared/htdocs was copied:
#
<location name='shared_htdocs'>
 <path>/sybil_demo/</path>

# The second <path>, under the location 'shared_cgi', must be changed to the URL
# of the directory to which sybil_demo/src/chado_sybil was copied:
#
<location name='shared_cgi'>
 <path>/cgi-bin/sybil_demo/shared/</path>

# Now try to load the Sybil home page in a web browser.  If your web server appears 
# on the inter/intranet as "ourwebserver.someplace.org" then you'll probably need to 
# use the following URL:
#
# http://ourwebserver.someplace.org/cgi-bin/sybil_demo/shared/index.cgi?site=demo



questions/comments: sybil-info
last updated Oct. 5, 2012
SourceForge.net Logo