diff options
author | Martin Mokrejs <mmokrejs@gentoo.org> | 2010-11-27 13:49:01 +0100 |
---|---|---|
committer | Martin Mokrejs <mmokrejs@gentoo.org> | 2010-11-27 13:49:01 +0100 |
commit | da6f848c97a17ad67a317dfd88ad0687d1f92a08 (patch) | |
tree | e862eb2d99310b3de17a7c1bc4084c4d0f1d6636 | |
parent | Version bump per bug #311857, added description and longdescription to metadata (diff) | |
download | sci-da6f848c97a17ad67a317dfd88ad0687d1f92a08.tar.gz sci-da6f848c97a17ad67a317dfd88ad0687d1f92a08.tar.bz2 sci-da6f848c97a17ad67a317dfd88ad0687d1f92a08.zip |
Version bump and lots of ebuild improvements, it works for me now
-rw-r--r-- | sci-biology/gbrowse/Manifest | 18 | ||||
-rw-r--r-- | sci-biology/gbrowse/files/GBrowseInstall.pm.patch | 13 | ||||
-rwxr-xr-x | sci-biology/gbrowse/files/gbrowse-slave.default | 12 | ||||
-rwxr-xr-x | sci-biology/gbrowse/files/gbrowse-slave.init.d | 94 | ||||
-rw-r--r-- | sci-biology/gbrowse/files/gbrowse.conf.vhosts.d | 26 | ||||
-rw-r--r-- | sci-biology/gbrowse/gbrowse-2.03.ebuild | 133 | ||||
-rw-r--r-- | sci-biology/gbrowse/metadata.xml | 4 |
7 files changed, 299 insertions, 1 deletions
diff --git a/sci-biology/gbrowse/Manifest b/sci-biology/gbrowse/Manifest index 732288501..0af49e2a7 100644 --- a/sci-biology/gbrowse/Manifest +++ b/sci-biology/gbrowse/Manifest @@ -1,6 +1,22 @@ +AUX GBrowseInstall.pm.patch 546 RMD160 a479d11e70b0c1340d50760e0f2aae5030b2aa26 SHA1 bac9d3692586c878b9a3f5a2df398e72bd73ede1 SHA256 0f4eaedce7f049628dc78ea2921bd1a5666981d77f54c6d240b1ae572f410c22 +AUX gbrowse-slave.default 210 RMD160 77245190ab0d3a543f3103bb6f21864f73ea1cde SHA1 a19d60edd3fdc1f059ed8fa58f7e91fc47ec92dc SHA256 e4e6d68ade29681f442b2e1c7f8abbc7ff3255b3b8db3c59ed6368ba561d7d66 +AUX gbrowse-slave.init.d 2196 RMD160 8b565d1be23c89cbae0f9fd5cd2201f47a564b94 SHA1 738bc8f06486a0e6caa72642f79f9b7dbb356524 SHA256 de511a92757153ee648eb6cd39e3c69c1e30fa2c2ed406f24c08571c72609219 +AUX gbrowse.conf.vhosts.d 740 RMD160 e24f5132e37a84dd0bb9a39e2de99cd11d260844 SHA1 2c44fdcf04bef92eb6210d4e6667b994e5643a13 SHA256 8acd5a067ab3dd42cff0ab7cb0d783b2409ccb872590eba32ea55d4929f65f21 DIST GBrowse-2.00.tar.gz 3844690 RMD160 f3856ca620d8adc10172d8dfb644dfbbd25cbf88 SHA1 9d78393ca21d2569a975cfff7588cb7fe62d1082 SHA256 62c96ae1c6c1494ff67fbea1fde0d80d5051705c22167a55db317a0d33b1b8ea +DIST GBrowse-2.03.tar.gz 11773792 RMD160 5f02c3f824ff6b0d2a32bbfb744be9bff71098a0 SHA1 92b6d4d43c663393f1a5a6b0283f0d740b2c0399 SHA256 279ec6546304888e506809bccefae9007e359e376a1abb643edfa30f7363574a DIST Generic-Genome-Browser-1.70.tar.gz 3331393 RMD160 056f72fc17bdbf803fce7e6bdde406566a80c204 SHA1 7a83abaedc4d2b061e1247972036025a713a845f SHA256 e08ef0d1ffff8186bffd30177808ad3dd7991a99abf3ea6350c8d487ba835486 +DIST README-gff-files 5309 RMD160 8ba184fa8a6b921f925143cf53de06e3da353023 SHA1 ad2d2b3133c73a05ace4a0107ff1a3a4221bc8f8 SHA256 21f4f026b212698c5aac0e82045670f8397ab50fdfe74b938fcbc71a1d36c82a +DIST Refseq_Genome_TBLASTX.tar.gz 56482234 RMD160 e188d9dfe12bed3fd299be4625f7e658f54bb8c4 SHA1 72ec3de9b9ca0e10c2dd8dcda24f9be74f98cf09 SHA256 7036bdd9aefbf44e384df83f4c1e973c1ab3eac8fe74b37499c4a3f1c55a18af +DIST fly.fasta.gz 37349852 RMD160 4bedfcc5d0ea3d325f3d3e446713251a8ce34ca3 SHA1 8f2c7a2f24dbab0f27c73009fe51efb8f41d6769 SHA256 892ed03e17edd3469f1ed00cb9967fb905bbac57c1cb7858667381f34a6bfeea +DIST fly.gff.gz 18687640 RMD160 fb54c40dd9508d2f9e9cf24b65195cfbb70c8f82 SHA1 2d77f89f438b389fee7e7f5c92fc902eb1f99482 SHA256 db03b56993b739dd6e6df92dcb94163f04ca03a1911c99dd4df4fe65e16b6d44 +DIST human.gff.tar.gz 40362676 RMD160 ae0bb58667d01ebc4c0a34ede4d4b1c347bc42be SHA1 6d71aba7ef054291021bc340571c253ec71cd60f SHA256 7d0ea6363e6dda8618f53b42dea72d6ef6034b4f2fb541b94b4800383009f6b0 +DIST saccharomyces_cerevisiae.gff.bz2 4000445 RMD160 133a9076971958d4a242b6fc10869056c169e53e SHA1 8ef80023a0ccdc714742b628873ab06f06f0ebe4 SHA256 fb41705b64f0e36cbb46fb6b7557c2f36e517db582f1472d852f89b46ca750d4 +DIST worm.fasta.gz 30593662 RMD160 674ef3d09cdfaa5d748f18c0e769f0a5ca3d48cf SHA1 ef8237f08b8380ce72c3c067120893087bc3bd21 SHA256 dbd6dcc44a8960e0e475b0be31b03caa3d97f4ddfc36ba566862732880f7dbc0 +DIST worm.gff.gz 65789458 RMD160 ddced7c965963ce41a10bdecae949731ed305121 SHA1 ccfb0f287e27ff7849b099c81d811f468a7e617c SHA256 afd63c65c3fdb0ba8a1cf455bd4477a2d5d27d5b0e88c6a5a10d156d0567374f +DIST yeast.fasta.gz 3801757 RMD160 5545054cf6ffa5381c7992141144107076fdf62e SHA1 c36fddc5fd2c79e01292f66644088654304bc438 SHA256 bf51cbced31aa6a30bca43cc72fdb53194fbb403407e2ebb9d70c901ab072e6d +DIST yeast.gff.gz 249814 RMD160 64538d18de23d930915938bd00ae4a94a52f3960 SHA1 ec753b1ae409e1377f568531a53be8985a7bfa2e SHA256 20c93e6ba9457896a693d13e8fd8fa00d77acbb55aee9b19a31c2b29c4b7e9b1 EBUILD gbrowse-1.70.ebuild 1670 RMD160 e9bf6980abebabc6ff807ea3c682a3988d0a5f14 SHA1 0413b93216348184e79b3feea36cd68618bed688 SHA256 ecb0b9290e48b82a0d29520d8418593db7baa564bb3731ed7ed808f1b4b5ff3f EBUILD gbrowse-2.00.ebuild 1932 RMD160 5a0d15a10c2f6f9e4ac1f60ce048efcd2311cdb4 SHA1 186d5a91fbae9b6894091ac376addb84784d6a03 SHA256 21b035ef921900bc893a4de0fe123b6192860265e0594b73723c24b03dd5a23c +EBUILD gbrowse-2.03.ebuild 5198 RMD160 b55f47213db96090869388c524b0505d709d9798 SHA1 0a050dc6a23998cd95ed65e8bd5c1d6fb91f2473 SHA256 49ab81d5ee5f33cd016618f3c17819731b91e75c759c877c3731a85d7c37424d MISC ChangeLog 1985 RMD160 9695d7522c6165b842087b67938629377f9cc82b SHA1 3edd2e74f9b26289d95ad7609b838edb3ccb9561 SHA256 76c1d0553f09390397af4354dc653677f25d06828e42e57a60b2f35a869222ac -MISC metadata.xml 259 RMD160 d9d81b67d635fabd81aef8ae0edf971211ae9072 SHA1 8e32f751c67ff891fa35405a2cf6fb33752d6eb1 SHA256 541c3fbcf299d9a8ccf4132ee61f9e53a5d737cefdaa6fdc77764d8d4c7f3110 +MISC metadata.xml 572 RMD160 bc941571413238acb3d77e61d49b959737ed4f5a SHA1 0c05303509c0e2dd21b37fc93c936809db49e530 SHA256 89b9964a9404a95dbb622a91735348da8e66d34d7dd7e7f144ed8c0159c43e31 diff --git a/sci-biology/gbrowse/files/GBrowseInstall.pm.patch b/sci-biology/gbrowse/files/GBrowseInstall.pm.patch new file mode 100644 index 000000000..e6163a732 --- /dev/null +++ b/sci-biology/gbrowse/files/GBrowseInstall.pm.patch @@ -0,0 +1,13 @@ +--- GBrowse-2.03/install_util/GBrowseInstall.pm.ori 2010-11-27 12:01:58.000000000 +0100 ++++ GBrowse-2.03/install_util/GBrowseInstall.pm 2010-11-27 12:02:15.000000000 +0100 +@@ -436,8 +436,8 @@ + $self->ownership_warning($databases,$user); + } + +- chmod 0755,File::Spec->catfile($self->install_path->{'etc'},'init.d','gbrowse-slave'); +- $self->fix_selinux; ++ # chmod 0755,File::Spec->catfile($self->install_path->{'etc'},'init.d','gbrowse-slave'); ++ # $self->fix_selinux; + + my $base = basename($self->install_path->{htdocs}); + diff --git a/sci-biology/gbrowse/files/gbrowse-slave.default b/sci-biology/gbrowse/files/gbrowse-slave.default new file mode 100755 index 000000000..46457c2dc --- /dev/null +++ b/sci-biology/gbrowse/files/gbrowse-slave.default @@ -0,0 +1,12 @@ +#!/bin/sh + +export PERL5LIB=$PERL5LIB + +DAEMON=$INSTALLSCRIPT/gbrowse_slave +USER=$WWWUSER +PRELOAD=$CONF/slave_preload.conf +RUNDIR=/var/run/gbrowse +LOGDIR=/var/log/gbrowse +PORT="8101 8102 8103" +VERBOSITY=3 +NICE=0 diff --git a/sci-biology/gbrowse/files/gbrowse-slave.init.d b/sci-biology/gbrowse/files/gbrowse-slave.init.d new file mode 100755 index 000000000..c298faf3c --- /dev/null +++ b/sci-biology/gbrowse/files/gbrowse-slave.init.d @@ -0,0 +1,94 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: gbrowse_slave +# Required-Start: $local_fs +# Required-Stop: $local_fs +# Default-Start: 28 +# Default-Stop: S +# Short-Description: Start/Stop the gbrowse_slave rendering server. +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=$INSTALLSCRIPT/gbrowse_slave +NAME="gbrowse-slave" +DESC="GBrowse slave track rendering server" + +test -x $DAEMON || exit 0 +set -e + +USER=$WWWUSER +PRELOAD="" +RUNDIR=/var/run/gbrowse +LOGDIR=/var/log/gbrowse +PORT='8101' +VERBOSITY=1 +NICE=0 + +if [ -f /etc/default/gbrowse-slave ]; then + . /etc/default/gbrowse-slave +fi + +mkdir -p $RUNDIR +chown -R $USER $RUNDIR +mkdir -p $LOGDIR +chown -R $USER $LOGDIR + +case "$1" in + start) + echo -n "Starting $DESC: $NAME " + for port in $PORT; do + if test -e $RUNDIR/$NAME.$port.pid ; then + echo "$NAME already running, use restart instead." + else + PRELOAD_DB="" + if [ "$PRELOAD" != "" ]; then + PRELOAD_DB="--preload $PRELOAD" + fi + ARGS="--port $port --verbose $VERBOSITY --log $LOGDIR/gbrowse_slave --pid $RUNDIR/$NAME.$port.pid $PRELOAD_DB" + su $USER -s /bin/sh -c "nice -n $NICE $DAEMON $ARGS" + echo -n "$port " + fi + done + echo "." + ;; + stop) + echo -n "Stopping $DESC: $NAME " + killed=0 + for port in $PORT; do + if test -e $RUNDIR/$NAME.$port.pid ; then + kill -TERM `cat $RUNDIR/$NAME.$port.pid` + killed=1 + fi + echo -n "$port " + done + if [ "$killed" -ne 1 ]; then + base=`basename $DAEMON` + killall -q -r $base || true + fi + echo "." + ;; + status) + for port in $PORT; do + if test -e $RUNDIR/$NAME.$port.pid ; then + kill -0 `cat $RUNDIR/$NAME.$port.pid` + if [ "$?" -eq 0 ]; then + echo "$NAME is running on port $port." + fi + else + echo "$NAME is not running on port $port." + fi + done + ;; + restart|force-reload) + $0 stop + sleep 3 + $0 start + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/sci-biology/gbrowse/files/gbrowse.conf.vhosts.d b/sci-biology/gbrowse/files/gbrowse.conf.vhosts.d new file mode 100644 index 000000000..a3966ea19 --- /dev/null +++ b/sci-biology/gbrowse/files/gbrowse.conf.vhosts.d @@ -0,0 +1,26 @@ +ScriptAlias /gbrowse/cgi-bin/gbrowse "/var/www/localhost/htdocs/gbrowse/cgi-bin/gbrowse" +ScriptAlias /gbrowse/cgi-bin/ "/var/www/localhost/htdocs/gbrowse/cgi-bin/" + +<Directory "/var/www/localhost/htdocs/gbrowse/cgi-bin/"> + Options ExecCGI + AllowOverride None + <IfModule mod_access.c> + Order allow,deny + Allow from all + </IfModule> +</Directory> + +Alias /gbrowse/i "/var/www/localhost/htdocs/gbrowse/images" +Alias /gbrowse "/var/www/localhost/htdocs/gbrowse" +Alias /gbrowse2 "/var/www/localhost/htdocs/gbrowse" + +<Directory "/var/www/localhost/htdocs/gbrowse"> + Options FollowSymlinks + AllowOverride None + <IfModule mod_access.c> + Order allow,deny + Allow from all + </IfModule> +</Directory> + + diff --git a/sci-biology/gbrowse/gbrowse-2.03.ebuild b/sci-biology/gbrowse/gbrowse-2.03.ebuild new file mode 100644 index 000000000..9fc872b3d --- /dev/null +++ b/sci-biology/gbrowse/gbrowse-2.03.ebuild @@ -0,0 +1,133 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ +EAPI="2" + +inherit perl-module webapp + +MY_P="GBrowse-${PV}" + +DESCRIPTION="The generic genome browser provides a display of genomic annotations on interactive web pages" +HOMEPAGE="http://gmod.org" +SRC_URI="mirror://sourceforge/gmod/${MY_P}.tar.gz + test? ( http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/saccharomyces_cerevisiae.gff.bz2 + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/Refseq_Genome_TBLASTX.tar.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/README-gff-files + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/human.gff.tar.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/yeast.fasta.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/yeast.gff.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/worm.fasta.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/worm.gff.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/fly.fasta.gz + http://sourceforge.net/projects/gmod/files/Generic%20Genome%20Browser/Sample%20Data%20Files/fly.gff.gz )" + +LICENSE="Artistic" +# webapp ebuilds do not set SLOT +KEYWORDS="~x86 ~amd64" +IUSE="-minimal svg test" # lwp moby scf + +S="${WORKDIR}/${MY_P}" + +# TODO: dev-perl/MOBY, dev-perl/Bio-SCF, dev-perl/Safe-World (not compatible w/perl-5.10) +# TODO: make sure www-servers/apache +cgi +DEPEND=">=dev-lang/perl-5.8.8 + >=sci-biology/bioperl-1.6 + >=dev-perl/GD-2.07 + dev-perl/IO-String + virtual/perl-Digest-MD5 + >=dev-perl/CGI-Session-4.03 + dev-perl/Statistics-Descriptive + >=dev-perl/Bio-Graphics-1.97 + dev-perl/JSON + dev-perl/libwww-perl + svg? ( dev-perl/GD-SVG )" + +# TODO: based on the following message in apache/error_log the list of deps should be longer +# GBROWSE NOTICE: To enable PDF generation, please enter the directory "/home/httpd" and run the commands: "sudo mkdir .inkscape .gnome2" and "sudo chown apache .inkscape .gnome2". To turn off this message add "generate pdf = 0" to the [GENERAL] section of your GBrowse.conf configuration file., referer: http://127.0.0.1/gbrowse/cgi-bin/gbrowse_details/yeast?ref=chrII;start=90739;end=92028;name=YBL069W;class=Sequence;feature_id=881;db_id=annotations%3Adatabase + +RDEPEND="${DEPEND} + >=www-servers/apache-2.0.47 + www-apache/mod_fastcgi + dev-perl/DBI + || ( dev-perl/DBD-Pg dev-perl/DBD-mysql ) + !minimal? ( + dev-perl/File-NFSLock + dev-perl/FCGI + perl-core/Math-BigInt + dev-perl/Digest-SHA1 + dev-perl/Crypt-SSLeay + dev-perl/Net-SMTP-SSL + dev-perl/Net-OpenID-Consumer + virtual/perl-DB_File + dev-perl/DB_File-Lock + dev-perl/GD-SVG + dev-perl/Text-Shellwords + dev-perl/XML-Twig + dev-perl/XML-DOM + dev-perl/XML-Writer + dev-perl/XML-Parser + dev-perl/Bio-Das + )" + +src_prepare() { + sed -i 's/return unless -t STDIN/return/' install_util/GBrowseInstall.pm || die + sed -i 's/process_/bp_process_/g' INSTALL || die + epatch "${FILESDIR}"/GBrowseInstall.pm.patch || die "Failed to patch" +} + +src_configure() { + # GBROWSE_ROOT is the root path in SRC_URI to be prepended + # /usr/share/webapps/gbrowse/2.03/htdocs/etc/gbrowse/GBrowse.conf + webapp_src_preinst + perl Makefile.PL \ + HTDOCS="${MY_HTDOCSDIR}" \ + CGIBIN="${MY_HTDOCSDIR}"/cgi-bin \ + CONF="${MY_HTDOCSDIR}"/etc/gbrowse \ + PACKAGE_DIR="${D}" \ + INSTALLDIRS=vendor \ + GBROWSE_ROOT="gbrowse" \ + DESTDIR="${D}" \ + DATABASES="/var/www/gbrowse2/databases/" \ + TMP="/var/tmp/gbrowse2" \ + INSTALLETC="n" \ + INSTALLCONF="n" \ + WWWUSER="apache" \ + DO_XS=1 \ + || die +} + +src_install() { + mydoc="Changes README TODO INSTALL" + perl-module_src_install + + # TODO: write our own readme + webapp_postinst_txt en "${S}"/INSTALL + webapp_src_install + + # should create a /etc/init.d/ startup script based on this + # /var/tmp/portage/sci-biology/gbrowse-2.03/work/GBrowse-2.03/etc/init.d/gbrowse-slave + + chown -R apache.apache "${D}"/var/www/gbrowse2/databases || die + + mkdir -p "${D}"/var/www/localhost/htdocs/gbrowse || die + ln -s "${D}"/var/tmp/gbrowse2/images "${D}"/var/www/localhost/htdocs/gbrowse/i || die + + einfo "Probably you want to install a cron job to remove the generated temporary images:" + einfo "find /var/tmp/gbrowse2/images -type f -atime +20 -print -exec rm {}" + + einfo "Make sure you compiled apache with +cgi and copy ${FILESDIR}/gbrowse.conf.vhosts.d to /etc/apache2/vhosts.d/" +} + +src_test() { + mysql -uroot -p password -e 'create database yeast' + mysql -uroot -p password -e 'grant all privileges on yeast.* to gbrowse@localhost' + mysql -uroot -p password -e 'grant file on *.* to gbrowse@localhost' + mysql -uroot -p password -e 'grant select on yeast.* to nobody@localhost' + + cd /usr/portage/distfiles || die + gzip -d yeast.fasta.gz || die + gzip -d yeast.gff.gz || die + #gzip -d fly.fasta.gz + #gzip -d fly.gff.gz + bp_bulk_load_gff.pl -d yeast -fasta yeast.fasta yeast.gff || die +} diff --git a/sci-biology/gbrowse/metadata.xml b/sci-biology/gbrowse/metadata.xml index 3302123e5..2618ccd33 100644 --- a/sci-biology/gbrowse/metadata.xml +++ b/sci-biology/gbrowse/metadata.xml @@ -4,6 +4,10 @@ <maintainer> <email>weaver@gentoo.org</email> <name>Andrey Kislyuk</name> + <description>GBrowse is a generic genome browser.</description> </maintainer> <herd>sci-biology</herd> + <longdescription lang="en"> + GBrowse is a generic genome browser written in perl, could run as CGI, under mod_perl. Something called Apache::Registry should make it faster. It uses mysql or postgres as the storage engine. + </longdescription> </pkgmetadata> |