Skip to content

Commit

Permalink
Merge pull request #10459 from Darkless012/20200423110746_new_pr_arti…
Browse files Browse the repository at this point in the history
…c-ncov201920200413

{bio}[foss/2018b] artic-ncov2019 v2020.04.13, rampart v1.2.0rc3, gotree v0.4.0, ... w/ Python 3.6.6
  • Loading branch information
boegel authored Apr 29, 2020
2 parents 863c376 + e62ddf8 commit 141b445
Show file tree
Hide file tree
Showing 11 changed files with 522 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
# Author: Pavel Grochal (INUITS)
# License: GPLv2

easyblock = 'PythonBundle'

name = 'artic-ncov2019'
local_commit = '4a7461c3cc9865860d69223ba8360df13a248f13'
version = '2020.04.13'

versionsuffix = '-Python-%(pyver)s'

homepage = "https://github.com/artic-network/artic-ncov2019"
description = """Initial implementation of an ARTIC bioinformatics platform
for nanopore sequencing of nCoV2019 novel coronavirus."""

toolchain = {'name': 'foss', 'version': '2018b'}

dependencies = [
('Python', '3.6.6'), # pandas,
('Biopython', '1.72', versionsuffix),
('Pysam', '0.15.1', versionsuffix),
('BWA', '0.7.17'),
('Eigen', '3.3.4', '', True),
('minimap2', '2.13'),
('SAMtools', '1.9'),
('MUSCLE', '3.8.31'),
('ETE', '3.1.1', versionsuffix),
('MAFFT', '7.427', '-with-extensions'),
('IQ-TREE', '1.6.12'),
('snakemake', '5.2.4', versionsuffix),
('Longshot', '0.4.1'),
('medaka', '0.11.4', versionsuffix),
('python-parasail', '1.1.16', versionsuffix),
('PhyML', '3.3.20190321'),
('nodejs', '12.16.1'),
('goalign', '0.3.2', '', True),
('gotree', '0.4.0', '', True),
('rampart', '1.2.0rc3', versionsuffix),
('libdeflate', '1.5'),
('nanopolish', '0.13.1', versionsuffix),
('seqtk', '1.3'),
('BCFtools', '1.9'),
]

use_pip = True
sanity_pip_check = True

exts_default_options = {'source_urls': [PYPI_SOURCE]}

exts_list = [
('zipp', '1.0.0', {
'checksums': ['d38fbe01bbf7a3593a32bc35a9c4453c32bc42b98c377f9bff7e9f8da157786c'],
}),
('pluggy', '0.13.1', {
'checksums': ['15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0'],
}),
('py', '1.8.1', {
'checksums': ['5e27081401262157467ad6e7f851b7aa402c5852dbcb3dae06768434de5752aa'],
}),
('wcwidth', '0.1.9', {
'checksums': ['ee73862862a156bf77ff92b09034fc4825dd3af9cf81bc5b360668d425f3c5f1'],
}),
('attrs', '19.3.0', {
'modulename': 'attr',
'checksums': ['f7b7ce16570fe9965acd6d30101a28f62fb4a7f9e926b3bbc9b61f8b04247e72'],
}),
('importlib-metadata', '1.6.0', {
'modulename': 'importlib_metadata',
'source_tmpl': 'importlib_metadata-%(version)s.tar.gz',
'checksums': ['34513a8a0c4962bc66d35b359558fd8a5e10cd472d37aec5f66858addef32c1e'],
}),
('more-itertools', '8.2.0', {
'modulename': 'more_itertools',
'checksums': ['b1ddb932186d8a6ac451e1d95844b382f55e12686d51ca0c68b6f61f2ab7a507'],
}),
('packaging', '14.5', {
'checksums': ['363f9193daa14085b8dfeeb2bf64227bcf1dc85c02ae2a5c6018b01f77e46491'],
}),
('args', '0.1.0', {
'checksums': ['a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814'],
}),
('pytest', '5.4.1', {
'checksums': ['84dde37075b8805f3d1f392cc47e38a0e59518fb46a431cfdaf7cf1ce805f970'],
}),
('tqdm', '4.45.0', {
'checksums': ['00339634a22c10a7a22476ee946bbde2dbe48d042ded784e4d88e0236eca5d81'],
}),
('fieldbioinformatics', '1.1.0-rc2', {
'modulename': False,
'source_tmpl': '%(version)s.tar.gz',
'source_urls': ['https://github.com/artic-network/fieldbioinformatics/archive'],
'checksums': ['7083f67b1188e8f9b55f8bd4f7a46853e9c74ae7dde324b1fc8e792a85e58073'],
}),
# This is not upstream version, but artic tweaked one, which is exactly required.
('Porechop', '0.3.2pre', {
'source_tmpl': 'v%(version)s.tar.gz',
'source_urls': ['https://github.com/artic-network/Porechop/archive'],
'checksums': ['85980d6f37d38a44c66182e7b39bad487211ccfd8cb820c866ceed7ef7a15523'],
}),
('binlorry', '1.3.1', {
'source_tmpl': 'v%(version)s.tar.gz',
'source_urls': ['https://github.com/rambaut/binlorry/archive'],
'checksums': ['001b74cad497b7253b821ceaac8c0b829b2787396a896fc2d3940a704a149b48'],
}),
('clint', '0.5.1', {
'checksums': ['05224c32b1075563d0b16d0015faaf9da43aa214e4a2140e51f08789e7a4c5aa'],
}),
('datrie', '0.8.2', {
'checksums': ['525b08f638d5cf6115df6ccd818e5a01298cd230b2dac91c8ff2e6499d18765d'],
}),
('PyVCF', '0.6.8', {
'modulename': 'vcf',
'checksums': ['e9d872513d179d229ab61da47a33f42726e9613784d1cb2bac3f8e2642f6f9d9'],
}),
('ont-fast5-api', '3.1.1', {
'modulename': 'ont_fast5_api',
'checksums': ['ce5a955c5e90a393f040fb36fc461382339fc0b9cd63e3969b9763127dc2b0d3'],
}),
]

components = [
(name, version, {
'easyblock': 'Tarball',
'source_urls': ['https://github.com/artic-network/artic-ncov2019/archive/'],
'sources': [{
'download_filename': '%s.tar.gz' % local_commit,
'filename': SOURCE_TAR_GZ,
}],
'checksums': ['26bc96742e291795d4a7c1154336715d98168d8ce3524ad7adfea0b5562eb34d'],
}),
]
local_artic_bins = [
'artic', 'artic_fasta_header', 'artic_make_depth_mask', 'artic_mask', 'artic_vcf_filter', 'artic_vcf_merge'
]
sanity_check_paths = {
'files': ['bin/%s' % f for f in local_artic_bins],
'dirs': ['lib/python%(pyshortver)s/site-packages'],
}
sanity_check_commands = [
'artic -v',
]

moduleclass = 'bio'
34 changes: 34 additions & 0 deletions easybuild/easyconfigs/i/IQ-TREE/IQ-TREE-1.6.12-foss-2018b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
easyblock = 'CMakeMake'

name = 'IQ-TREE'
version = '1.6.12'

# HTTPS is not working
homepage = 'http://www.iqtree.org/'
description = """Efficient phylogenomic software by maximum likelihood"""

toolchain = {'name': 'foss', 'version': '2018b'}
# Including 'usempi' will take precedence and override IQTREE_FLAGS and produces only 'iqtree-mpi' binary

github_account = 'Cibiv'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = ['9614092de7a157de82c9cc402b19cc8bfa0cb0ffc93b91817875c2b4bb46a284']

builddependencies = [
('CMake', '3.12.1'),
('Eigen', '3.3.7', '', True),
]
dependencies = [('zlib', '1.2.11')]

configopts = [
'-DIQTREE_FLAGS=omp',
'-DIQTREE_FLAGS=mpi',
]

sanity_check_paths = {
'files': ['bin/iqtree', 'bin/iqtree-mpi'],
'dirs': [],
}

moduleclass = 'bio'
40 changes: 40 additions & 0 deletions easybuild/easyconfigs/l/Longshot/Longshot-0.4.1-GCC-7.3.0-2.30.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham.
easyblock = 'Binary'

name = 'Longshot'
version = '0.4.1'

homepage = 'https://github.com/pjedge/longshot'
description = """Longshot is a variant calling tool for diploid genomes using long error prone reads such as Pacific
Biosciences (PacBio) SMRT and Oxford Nanopore Technologies (ONT). It takes as input an aligned BAM file and outputs
a phased VCF file with variants and haplotype information. It can also output haplotype-separated BAM files that can
be used for downstream analysis. Currently, it only calls single nucleotide variants (SNVs)."""

toolchain = {'name': 'GCC', 'version': '7.3.0-2.30'}

source_urls = ['https://github.com/pjedge/longshot/archive']
sources = ['v%(version)s.tar.gz']
checksums = ['062529eb47fafc2ef4a1a12ea30a565a0df922b310b6fc5705a1605ce4f495f3']

builddependencies = [
('binutils', '2.30'),
('Rust', '1.42.0'),
('Clang', '7.0.1'),
('zlib', '1.2.11'),
('XZ', '5.2.4'),
]

extract_sources = True

# https://github.com/rust-bio/rust-htslib/issues/112
install_cmd = "export LIBCLANG_PATH=${EBROOTCLANG}/lib && "
install_cmd += "cargo install --root %(installdir)s --path ."

sanity_check_paths = {
'files': ['bin/%(namelower)s'],
'dirs': [],
}

sanity_check_commands = ["%(namelower)s --help"]

moduleclass = 'bio'
39 changes: 39 additions & 0 deletions easybuild/easyconfigs/l/libdeflate/libdeflate-1.5-GCCcore-7.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Author: Pavel Grochal (INUITS)
# License: GPLv2

easyblock = 'ConfigureMake'

name = 'libdeflate'
version = '1.5'

homepage = 'https://github.com/ebiggers/libdeflate'
description = """Generic PCI access library."""

toolchain = {'name': 'GCCcore', 'version': '7.3.0'}

# https://github.com/ebiggers/libdeflate
github_account = 'ebiggers'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = ['45b1b2332f443b705c59d06a49be009827291d2c487b076dc8ec2791eff4c711']

builddependencies = [('binutils', '2.30')]

skipsteps = ['configure']
buildopts = 'PREFIX="%(installdir)s" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" LDFLAGS="$LDFLAGS"'
installopts = 'PREFIX="%(installdir)s" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" LDFLAGS="$LDFLAGS"'

sanity_check_paths = {
'files': [
'bin/%(name)s-gunzip', 'bin/%(name)s-gzip',
'lib/%(name)s.a', 'lib/%%(name)s.%s' % SHLIB_EXT,
'include/%(name)s.h',
],
'dirs': [],
}
sanity_check_commands = [
'%(name)s-gzip -h',
'%(name)s-gunzip -h',
]

moduleclass = 'system'
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Pablo Escobar Lopez
# Swiss Institute of Bioinformatics
# Biozentrum - University of Basel
# 7.305 modified by:
# Adam Huffman
# The Francis Crick Institute

easyblock = 'ConfigureMake'

name = 'MAFFT'
version = '7.427'
versionsuffix = '-with-extensions'

homepage = 'https://mafft.cbrc.jp/alignment/software/source.html'
description = """MAFFT is a multiple sequence alignment program
for unix-like operating systems. It offers a range of multiple
alignment methods, L-INS-i (accurate; for alignment of <∼200 sequences),
FFT-NS-2 (fast; for alignment of <∼10,000 sequences), etc."""

toolchain = {'name': 'foss', 'version': '2018b'}

source_urls = ['https://mafft.cbrc.jp/alignment/software/']
sources = ['%(namelower)s-%(version)s%(versionsuffix)s-src.tgz']
checksums = ['068abcbc20965cbfa4e14c138cbfbcd0d311874ac2fdde384a580ac774f40e26']

skipsteps = ['configure']
start_dir = 'core'
installopts = 'PREFIX=%(installdir)s'

modextrapaths = {'MAFFT_BINARIES': 'libexec/mafft'}

sanity_check_paths = {
'files': ['bin/mafft'],
'dirs': [],
}

moduleclass = 'bio'
30 changes: 30 additions & 0 deletions easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-GCC-7.3.0-2.30.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
easyblock = 'MakeCp'

name = 'MUSCLE'
version = "3.8.31"

homepage = 'https://drive5.com/muscle/'
description = """MUSCLE is one of the best-performing multiple alignment programs
according to published benchmark tests, with accuracy and speed that are consistently
better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users
learn everything they need to know about MUSCLE in a few minutes-only a handful of
command-line options are needed to perform common alignment tasks."""

toolchain = {'name': 'GCC', 'version': '7.3.0-2.30'}

source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/']
sources = ['%(namelower)s%(version)s_src.tar.gz']
patches = ['%(name)s-%(version)s_fix-mk-hardcoding.patch']
checksums = [
'43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz
'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch
]

files_to_copy = [(["muscle"], 'bin')]

sanity_check_paths = {
'files': ["bin/%(namelower)s"],
'dirs': [],
}

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
easyblock = 'MakeCp'

name = 'nanopolish'
version = '0.13.1'
versionsuffix = '-Python-%(pyver)s'

homepage = 'https://github.com/jts/nanopolish'
description = "Software package for signal-level analysis of Oxford Nanopore sequencing data."

toolchain = {'name': 'foss', 'version': '2018b'}

source_urls = [
'https://github.com/jts/nanopolish/archive/',
'https://github.com/mateidavid/fast5/archive/',
]
sources = [
{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ},
{'download_filename': 'v0.6.5.tar.gz', 'filename': 'fast5-v0.6.5.tar.gz'},
]
checksums = [
'0cf0a6aea3d3b0dd81fa8877618b12bb45e2a39b2ec2fbfc6bc0df77084a7fac', # nanopolish-0.13.1.tar.gz
'f8b1ce2c07adb56b4f13337ef008e124255f86cdb7e74e4233afa8dca878ee1a', # fast5-v0.6.5.tar.gz
]

builddependencies = [('Eigen', '3.3.7', '', True)]

dependencies = [
('zlib', '1.2.11'),
('HDF5', '1.10.2'),
('HTSlib', '1.9'),
('Python', '3.6.6'),
('Biopython', '1.72', versionsuffix),
('Pysam', '0.15.1', versionsuffix),
('minimap2', '2.13'),
]

prebuildopts = "rmdir fast5 && ln -s %(builddir)s/fast5-*/ fast5 && "
buildopts = "HDF5=noinstall EIGEN=noinstall HTS=noinstall MINIMAP2=noinstall"

runtest = 'test ' + buildopts

files_to_copy = [(['nanopolish'], 'bin'), 'scripts']

postinstallcmds = ["chmod a+rx %(installdir)s/scripts/*"]

sanity_check_paths = {
'files': ['bin/nanopolish'],
'dirs': ['scripts'],
}

modextrapaths = {'PATH': 'scripts'}

moduleclass = 'bio'
Loading

0 comments on commit 141b445

Please sign in to comment.