AmiGO Manual: Installation: Difference between revisions
No edit summary |
No edit summary |
||
Line 5: | Line 5: | ||
This document is intended to help fill the gap between the cryptic install script and what the developers know because they wrote it. | This document is intended to help fill the gap between the cryptic install script and what the developers know because they wrote it. | ||
= | =Requirements= | ||
AmiGO does not provide its own web server, it is currently developed and run on [http://www.apache.org Apache] | |||
Also, if you are interested having the AmiGO wrapper for BLAST, you will need to download and install [http://blast.wustl.edu WU BLAST]. You will also need a FASTA file from the Stanford GO [http://archive.geneontology.org archive]. | |||
AmiGO also depends on [http://www.graphviz.org GraphViz], specifically the "dot" program. | |||
As far as the perl environment goes, major packages that are necessary are: Go::TermFinder, Template, CGI, DBI, and DBD::mysql, GraphViz, bioperl, go-perl, and go-db-perl (the last two included with the go-dev repository). | |||
==Exhaustive list== | ==Exhaustive perl list== | ||
This is an exhaustive list of all known requirements for | This is an exhaustive list of all known perl requirements for go-dev and AmiGO. However, not all of the may be necessary for running AmiGO (one of the developers, for example, has never gotten DBIx::DBStag to install on his machine but manages to develop and deploy just fine without it). | ||
===Perl version=== | ===Perl version=== | ||
Line 112: | Line 96: | ||
XML::Writer; | XML::Writer; | ||
YAML; | YAML; | ||
=Download= | |||
The most recent stable version of AmiGO should be available as part of the go-dev repository on the GO CVS site at SourceForge.net: http://sourceforge.net/projects/geneontology | |||
==Most up-to-date version== | |||
You need to get the up-to-date source from go-dev/go-perl and go-dev/ | |||
go-db-perl (HEAD versions from CVS) and the tagged go-dev/amigo | |||
amigo_1_5_RC7. | |||
The source forge CVS Repository can be found at: | |||
geneontology.cvs.sourceforge.net:/cvsroot/geneontology go-dev (this is | |||
a change from a couple years ago). | |||
I do NOT think you need any subdirectories of go-dev other than go- | |||
perl, go-db-perl, or amigo, but you do need a go database you can | |||
connect to via DBD::mysql (I presume you have this since you have an | |||
old amigo install). | |||
=install.pl= | =install.pl= |
Revision as of 16:51, 3 April 2008
Overview
AmiGO, at its heart, is a simple perl CGI script. However, behind the simple external interface lies a somewhat baroque system of caches, databases connections, temporary files, and delegation. To set-up all of these things properly, AmiGO provides an installation script ("install.pl") that asks questions about the user's environment and tries to catch the biggest errors that one can make during installation. But no program is perfect.
This document is intended to help fill the gap between the cryptic install script and what the developers know because they wrote it.
Requirements
AmiGO does not provide its own web server, it is currently developed and run on Apache
Also, if you are interested having the AmiGO wrapper for BLAST, you will need to download and install WU BLAST. You will also need a FASTA file from the Stanford GO archive.
AmiGO also depends on GraphViz, specifically the "dot" program.
As far as the perl environment goes, major packages that are necessary are: Go::TermFinder, Template, CGI, DBI, and DBD::mysql, GraphViz, bioperl, go-perl, and go-db-perl (the last two included with the go-dev repository).
Exhaustive perl list
This is an exhaustive list of all known perl requirements for go-dev and AmiGO. However, not all of the may be necessary for running AmiGO (one of the developers, for example, has never gotten DBIx::DBStag to install on his machine but manages to develop and deploy just fine without it).
Perl version
5.8.0
Perl libraries
AutoSplit; Bio::DB::SwissProt; Bio::Index::Swissprot; Bio::Index::GenBank; Bio::PrimarySeq; Bio::SeqIO; Bio::Species; Carp; Config; CGI; CGI::Carp; Data::Dumper; Data::Stag; Data::Stag::BaseGenerator; Data::Stag::SxprWriter; Data::Stag::Writer; Data::Stag::XMLWriter; DBD::mysql; DBI; DBIx::DBStag; DBIx::DBSchema; Digest::MD5; DirHandle; Exporter; ExtUtils::MakeMaker; Fcntl; File::Basename; File::Find; File::Temp; FileHandle; FreezeThaw; FindBin; GD::Graph::pie; GeneralUtils::XML::Generator; Getopt::Long; Getopt::Std; GO::TermFinder; GraphViz; HTML::TableExtract; HTTP::Cookies; HTTP::Request; HTTP::Request::Common; Inline::C; IO::Handle; LWP::Simple; LWP::UserAgent; Net::FTP; Net::SMTP; Set::Scalar; Shell; SQL::Translator; Storable; strict; Template; Term::ReadLine; Test; Text::Balanced; Tk; Tk::Label; Tk::Tree; Tk::ItemStyle; utf8; warnings; WWW::Mechanize; XML::Checker; XML::Checker::Parser; XML::LibXML; XML::LibXSLT; XML::Parser::PerlSAX; XML::Writer; YAML;
Download
The most recent stable version of AmiGO should be available as part of the go-dev repository on the GO CVS site at SourceForge.net: http://sourceforge.net/projects/geneontology
Most up-to-date version
You need to get the up-to-date source from go-dev/go-perl and go-dev/ go-db-perl (HEAD versions from CVS) and the tagged go-dev/amigo amigo_1_5_RC7.
The source forge CVS Repository can be found at: geneontology.cvs.sourceforge.net:/cvsroot/geneontology go-dev (this is a change from a couple years ago). I do NOT think you need any subdirectories of go-dev other than go- perl, go-db-perl, or amigo, but you do need a go database you can connect to via DBD::mysql (I presume you have this since you have an old amigo install).
install.pl
Once you have the software, you just go to the amigo directory and type install.pl. You must first set the following ENV variables:
setenv GO_ROOT path_to_go-dev_source_dir setenv PATH /tools/perl/5.8.8/bin:${PATH}:${GO_ROOT}/go-perl/scripts setenv PERLLIB $GO_ROOT/go-perl:$GO_ROOT/go-db-perl:$GO_ROOT/amigo/perl
When you run install.pl it asks you 20 questions about install configuration. The questions are a little cryptic. The first time you run it, it creates a config.pl file.
Example config.pl files
While you can construct a config.pl file from scratch, it is highly recommended that you let the script create the file the first time, and then you may modify the values manually and rerun the script.
Be prepared to accept defaults or have an answer for these. Obviously, the path names are the most important.
Example file #1
These are the values used by the production machine at Stanford.
config.pl
$ENV{GO_ROOT}='/share/goweb/www-data/html/dev'; $ENV{GO_DBNAME}='go'; $ENV{GO_DBHOST}='localhost'; $ENV{GO_DBUSER}='amigo'; $ENV{GO_DBAUTH}='HA YOU DID NOT THINK I WOULD JUST EMAIL THE PASSWORD DID YOU' $ENV{GO_DBSOCKET}='/db0/mysql/admin/golite/mysql.sock'; $ENV{GO_HAS_COUNT_BY_SPECIES}='1'; $ENV{AMIGO_PROJECT_NAME}='amigo'; $ENV{AMIGO_HTDOCS_PARTIAL_PATH}='/share/goweb/www-data/html'; $ENV{AMIGO_HTDOCS_PARTIAL_URL}='http://amigo.geneontology.org/'; $ENV{AMIGO_CGI_PARTIAL_PATH}='/share/goweb/www-data/cgi-bin'; $ENV{AMIGO_CGI_PARTIAL_URL}='http://amigo.geneontology.org/cgi-bin'; $ENV{AMIGO_SHOW_GP_OPTIONS}='1'; $ENV{AMIGO_SHOW_GRAPHVIZ}='1'; $ENV{AMIGO_DOT_PATH}='/usr/bin/dot'; $ENV{AMIGO_SHOW_BLAST}='1'; $ENV{AMIGO_FASTA_DB}='/share/blast/go-seqdblite.fasta'; $ENV{AMIGO_BLASTP}='/tools/wu-blast/current/blastp'; $ENV{AMIGO_BLASTX}='/tools/wu-blast/current/blastx'; $ENV{AMIGO_BLAST_METHOD}='cgi'; $ENV{AMIGO_QSUB}='/usr/local/command'; $ENV{AMIGO_QUEUE}='/usr/local/queue'; $ENV{AMIGO_PBS_USER}='nobody'; $ENV{AMIGO_MAX_SEQ_NUM}='100'; $ENV{AMIGO_MAX_SEQ_LENGTH}='3000000'; $ENV{AMIGO_SHOW_GOOSE_LINKS}='1'; $ENV{AMIGO_USE_DEFAULT_AMIGO_FILTERS}='1'; $ENV{AMIGO_SHOW_ONT_FILTER}='1'; $ENV{AMIGO_SHOW_TAXID_FILTER}='1'; $ENV{AMIGO_SHOW_SPECIESDB_FILTER}='1'; $ENV{AMIGO_SHOW_EVCODE_FILTER}='1'; $ENV{AMIGO_SHOW_GPTYPE_FILTER}='1'; $ENV{AMIGO_SHOW_ASSBY_FILTER}='0'; $ENV{AMIGO_SHOW_QUAL_FILTER}='0'; $ENV{AMIGO_TEMPLATE_PATHS}='templates/pages:templates/includes'; $ENV{AMIGO_SESSION_DIR}='sessions'; $ENV{AMIGO_MAX_SESSIONS}='200'; $ENV{AMIGO_SESSION_TIMEOUT}='7200'; $ENV{AMIGO_PAGE_SIZE}='50'; $ENV{AMIGO_MAX_RESULTS_HTML}='2000'; $ENV{AMIGO_MAX_RESULTS_DOWNLOAD}='20000'; $ENV{AMIGO_CALCULATE_GP_COUNTS}='0'; $ENV{AMIGO_CALCULATE_TERM_COUNTS}='0'; $ENV{AMIGO_GET_RELEVANCE}='1'; $ENV{AMIGO_CLEVER_MODE}='1'; $ENV{AMIGO_OBSOLETE_BEHAVIOUR}='include_commented';
Example file #2
These are the values used by one of the developer's at Berkeley.
config.pl
$ENV{GO_ROOT}='/users/sjcarbon/local/src/cvs/go-dev'; $ENV{GO_DBNAME}='go_latest_lite'; $ENV{GO_DBHOST}='spitz'; $ENV{GO_DBUSER}=; $ENV{GO_DBAUTH}=; $ENV{GO_DBSOCKET}=; $ENV{GO_HAS_COUNT_BY_SPECIES}='1'; $ENV{AMIGO_PROJECT_NAME}='amigo'; $ENV{AMIGO_HTDOCS_PARTIAL_PATH}='/www/toy_9012/htdocs'; $ENV{AMIGO_HTDOCS_PARTIAL_URL}='http://toy.lbl.gov:9012'; $ENV{AMIGO_CGI_PARTIAL_PATH}='/www/toy_9012/cgi-bin'; $ENV{AMIGO_CGI_PARTIAL_URL}='http://toy.lbl.gov:9012/cgi-bin'; $ENV{AMIGO_DATA_PATH}='/www/toy_9012/cgi-bin'; $ENV{AMIGO_SHOW_GP_OPTIONS}='1'; $ENV{AMIGO_SHOW_GRAPHVIZ}='1'; $ENV{AMIGO_DOT_PATH}='/usr/bin/dot'; $ENV{AMIGO_SHOW_BLAST}='1'; $ENV{AMIGO_FASTA_DB}='/www/toy_9012/cgi-bin/data/go_20071106-seqdblite.fasta'; $ENV{AMIGO_BLASTP}='/share/bdgp64/wublast/blastp'; $ENV{AMIGO_BLASTX}='/share/bdgp64/wublast/blastx'; $ENV{AMIGO_BLASTN}='/share/bdgp64/wublast/blastn'; $ENV{AMIGO_BLAST_METHOD}='cgi'; $ENV{AMIGO_QSUB}='/usr/local/command'; $ENV{AMIGO_QUEUE}='/usr/local/queue'; $ENV{AMIGO_PBS_USER}='nobody'; $ENV{AMIGO_MAX_SEQ_NUM}='100'; $ENV{AMIGO_MAX_SEQ_LENGTH}='3000000'; $ENV{AMIGO_USE_DEFAULT_AMIGO_FILTERS}='1'; $ENV{AMIGO_SHOW_ONT_FILTER}='1'; $ENV{AMIGO_SHOW_TAXID_FILTER}='1'; $ENV{AMIGO_SHOW_SPECIESDB_FILTER}='1'; $ENV{AMIGO_SHOW_EVCODE_FILTER}='1'; $ENV{AMIGO_SHOW_GPTYPE_FILTER}='1'; $ENV{AMIGO_SHOW_ASSBY_FILTER}='0'; $ENV{AMIGO_SHOW_QUAL_FILTER}='0'; $ENV{AMIGO_TEMPLATE_PATHS}='templates/pages:templates/includes'; $ENV{AMIGO_SESSION_DIR}='sessions'; $ENV{AMIGO_MAX_SESSIONS}='200'; $ENV{AMIGO_SESSION_TIMEOUT}='7200'; $ENV{AMIGO_PAGE_SIZE}='50'; $ENV{AMIGO_MAX_RESULTS_PAGES}='40'; $ENV{AMIGO_CALCULATE_GP_COUNTS}='0'; $ENV{AMIGO_CALCULATE_TERM_COUNTS}='0'; $ENV{AMIGO_GET_RELEVANCE}='1'; $ENV{AMIGO_CLEVER_MODE}='1'; $ENV{AMIGO_OBSOLETE_BEHAVIOUR}='include_commented';
Contacts
If you are still having problems installing the AmiGO software, you can contact the developers directly :
- Seth at LBNL (sjcarbon) (berkeleybop dot org)
- Amelia at EBI (aji) (ebi dot ac dot uk)
Good luck
Good luck!