academic/kraken: Added (Assigning Taxonomic Labels).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Petar Petrov 2018-12-25 05:38:56 +07:00 committed by Willy Sudiarto Raharjo
parent 207b4e9661
commit ce35e022ab
5 changed files with 156 additions and 0 deletions

21
academic/kraken/README Normal file
View file

@ -0,0 +1,21 @@
Kraken is a system for assigning taxonomic labels to short DNA
sequences, usually obtained through metagenomic studies. Previous
attempts by other bioinformatics software to accomplish this task have
often used sequence alignment or machine learning techniques that were
quite slow, leading to the development of less sensitive but much faster
abundance estimation programs. Kraken aims to achieve high sensitivity
and high speed by utilizing exact alignments of k-mers and a novel
classification algorithm.
In its fastest mode of operation, for a simulated metagenome of 100 bp
reads, Kraken processed over 4 million reads per minute on a single
core, over 900 times faster than Megablast and over 11 times faster than
the abundance estimation program MetaPhlAn. Kraken's accuracy is
comparable with Megablast, with slightly lower sensitivity and very high
precision.
REFERENCE
Wood DE, Salzberg SL
Kraken: ultrafast metagenomic sequence classification using exact
alignments.
Genome Biology 2014, 15:R46.

View file

@ -0,0 +1,5 @@
REFERENCE
Wood DE, Salzberg SL
Kraken: ultrafast metagenomic sequence classification using exact
alignments.
Genome Biology 2014, 15:R46.

View file

@ -0,0 +1,101 @@
#!/bin/sh
# Slackware build script for kraken
# Copyright 2018 Petar Petrov slackalaxy@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=kraken
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
mkdir -p $PKG/usr/bin
sed -i "s:\$(KRAKEN_DIR):$PKG/usr/bin:g" src/Makefile
make CXXFLAGS="$SLKCFLAGS" -C src install
# Set Kraken path
sed -i "s:#####=KRAKEN_DIR=#####:/usr/bin:g" scripts/kraken scripts/kraken-*
sed -i "s:#####=VERSION=####:${VERSION}:g" scripts/kraken scripts/kraken-*
# Install the scripts in /usr/bin
# Maybe another place will be better?
cd scripts
for script in * ; do
install -D -m755 $script $PKG/usr/bin/$script
done
cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGELOG LICENSE README.md docs/MANUAL.markdown $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/References > $PKG/usr/doc/$PRGNAM-$VERSION/References
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -0,0 +1,10 @@
PRGNAM="kraken"
VERSION="1.1"
HOMEPAGE="http://ccb.jhu.edu/software/kraken/"
DOWNLOAD="https://github.com/DerrickWood/kraken/archive/v1.1/kraken-1.1.tar.gz"
MD5SUM="da11f520b3ff21228ac0ceff5ad895a4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jellyfish_k-mer"
MAINTAINER="Petar Petrov"
EMAIL="slackalaxy@gmail.com"

View file

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
kraken: kraken (Assign taxonomic labels to short DNA sequences)
kraken:
kraken: Kraken is a system for assigning taxonomic labels to short DNA
kraken: sequences, usually obtained through metagenomic studies. Kraken
kraken: aims to achieve high sensitivity and high speed by utilizing exact
kraken: alignments of k-mers and a novel classification algorithm.
kraken:
kraken: Home: http://ccb.jhu.edu/software/kraken/
kraken:
kraken:
kraken: