Skip to content

Commit

Permalink
adding easyconfigs: ABRicate-1.0.0-gompi-2023b.eb, BLAST+-2.16.0-gomp…
Browse files Browse the repository at this point in the history
…i-2023b.eb, BWA-0.7.18-GCCcore-13.2.0.eb, prokka-1.14.5-gompi-2023b.eb, SKESA-2.4.0-gompi-2023b_saute.1.3.0_2.eb, VCFtools-0.1.16-GCC-13.2.0.eb
  • Loading branch information
akesandgren committed Dec 13, 2024
1 parent eefcf54 commit b37be0c
Show file tree
Hide file tree
Showing 9 changed files with 406 additions and 0 deletions.
41 changes: 41 additions & 0 deletions easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Author: Pavel Grochal (INUITS)
# License: GPLv2

easyblock = 'Tarball'

name = 'ABRicate'
version = '1.0.0'

homepage = 'https://github.com/tseemann/abricate'
description = "Mass screening of contigs for antimicrobial and virulence genes"

toolchain = {'name': 'gompi', 'version': '2023b'}

# https://github.com/tseemann/abricate
github_account = 'tseemann'
source_urls = [GITHUB_LOWER_SOURCE]
sources = ['v%(version)s.zip']
checksums = ['e7e2af45e47b887c4dba754af87a24014dcb5552eb3fe2a3fd66bb5359a0daf9']

dependencies = [
('Perl', '5.38.0'),
('any2fasta', '0.4.2'),
('BioPerl', '1.7.8'),
('BLAST+', '2.16.0'),
]

postinstallcmds = ['%(installdir)s/bin/abricate --setupdb']

sanity_check_paths = {
'files': ['bin/abricate', 'bin/abricate-get_db'],
'dirs': ['db'],
}

sanity_check_commands = [
"abricate --help",
"abricate --list",
]

modloadmsg = "abricate databases are located in $EBROOTABRICATE/db\n"

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Author: Pavel Grochal (INUITS)
# Updated by: Denis Kristak (INUITS)
# License: GPLv2

easyblock = 'Tarball'

name = 'any2fasta'
version = '0.4.2'

homepage = 'https://github.com/tseemann/any2fasta'
description = "Convert various sequence formats to FASTA"

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

# https://github.com/tseemann/any2fasta
github_account = 'tseemann'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.zip']
checksums = ['3faa738ab409c7073afe3769e9d32dd5b28a2c12e72c2e4ac6f4e9946ee9a22f']

dependencies = [('Perl', '5.38.0')]

modextrapaths = {'PATH': ''}

sanity_check_paths = {
'files': ['any2fasta'],
'dirs': [],
}

sanity_check_commands = [
'any2fasta -h',
'any2fasta -q %(builddir)s/%(name)s-%(version)s/test.fq',
]

moduleclass = 'tools'
58 changes: 58 additions & 0 deletions easybuild/easyconfigs/b/BLAST+/BLAST+-2.16.0-gompi-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# #
# EasyBuild reciPY as per https://github.com/easybuilders/easybuild
#
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Authors:: Fotis Georgatos <[email protected]>, Kenneth Hoste (UGent)
# License:: MIT/GPL
# $Id$
#
# This work implements a part of the HPCBIOS project and is a component of
# the policy: https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html
# #

easyblock = 'ConfigureMake'

name = 'BLAST+'
version = '2.16.0'

homepage = 'https://blast.ncbi.nlm.nih.gov/'
description = """Basic Local Alignment Search Tool, or BLAST, is an algorithm
for comparing primary biological sequence information, such as the amino-acid
sequences of different proteins or the nucleotides of DNA sequences."""

toolchain = {'name': 'gompi', 'version': '2023b'}
toolchainopts = {'usempi': True, 'pic': True}

source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/%(namelower)s/%(version)s/']
sources = ['ncbi-blast-%(version)s+-src.tar.gz']
checksums = ['17c93cf009721023e5aecf5753f9c6a255d157561638b91b3ad7276fd6950c2b']

builddependencies = [('cpio', '2.15')]

dependencies = [
('zlib', '1.2.13'),
('bzip2', '1.0.8'),
('zstd', '1.5.5'),
('PCRE', '8.45'),
('Boost', '1.83.0'),
('GMP', '6.3.0'),
('libpng', '1.6.40'),
('libjpeg-turbo', '3.0.1'),
('LMDB', '0.9.31'),
('SQLite', '3.43.1'),
]

# remove line that prepends system paths to $PATH from configure script
preconfigopts = r'sed -i "s|^PATH=\(.*\)$|#PATH=\1 |" %(start_dir)s/src/build-system/configure && '

configopts = "--with-z=$EBROOTZLIB --with-bz2=$EBROOTBZIP2 "
configopts += "--with-pcre=$EBROOTPCRE --with-boost=$EBROOTBOOST "
configopts += "--with-gmp=$EBROOTGMP --with-png=$EBROOTLIBPNG "
configopts += "--with-jpeg=$EBROOTLIBJPEGMINTURBO --with-lmdb=$EBROOTLMDB"

sanity_check_paths = {
'files': ['bin/blastn', 'bin/blastp', 'bin/blastx'],
'dirs': [],
}

moduleclass = 'bio'
52 changes: 52 additions & 0 deletions easybuild/easyconfigs/b/BWA/BWA-0.7.18-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
##
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
#
# Copyright:: Copyright 2012-2014 Cyprus Institute / CaSToRC, Uni.Lu/LCSB, NTUA
# Authors:: George Tsouloupas <[email protected]>, Fotis Georgatos <[email protected]>
# License:: MIT/GPL
# $Id$
#
# This work implements a part of the HPCBIOS project and is a component of the policy:
# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html
#
# Version >= 0.7.15
# Author: Adam Huffman
# The Francis Crick Institute
#
# Note that upstream development is mainly at: https://github.com/lh3/bwa
#
# 0.7.18
# Erica Bianco (HPCNow!)
##

name = 'BWA'
version = '0.7.18'

homepage = 'http://bio-bwa.sourceforge.net/'
description = """
Burrows-Wheeler Aligner (BWA) is an efficient program that aligns relatively
short nucleotide sequences against a long reference sequence such as the human
genome.
"""

toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
toolchainopts = {'pic': True}

source_urls = ['https://github.com/lh3/%(name)s/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['194788087f7b9a77c0114aa481b2ef21439f6abab72488c83917302e8d0e7870']

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

dependencies = [
('zlib', '1.2.13'),
('Perl', '5.38.0'),
]

# Allow use of x86 intrinsics on PPC
prebuildopts = 'export CFLAGS="$CFLAGS -fcommon -DNO_WARN_X86_INTRINSICS" && '
prebuildopts += "sed -i 's|^CC=|#CC=|g' Makefile && "
prebuildopts += "sed -i 's|^CFLAGS=|#CFLAGS=|g' Makefile && "
prebuildopts += "sed -i 's|^LIBS=|LIBS= $(LDFLAGS) |g' Makefile && "

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

name = 'Bio-SearchIO-hmmer'
version = '1.7.3'

homepage = 'https://metacpan.org/pod/Bio::SearchIO::hmmer3'
description = """Code to parse output from hmmsearch, hmmscan, phmmer and nhmmer, compatible
with both version 2 and version 3 of the HMMER package from http://hmmer.org."""

toolchain = {'name': 'GCC', 'version': '13.2.0'}

source_urls = ['https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/']
sources = [SOURCE_TAR_GZ]
checksums = ['686152f8ce7c611d27ee35ac002ecc309f6270e289a482993796a23bb5388246']

dependencies = [
('Perl', '5.38.0'),
('BioPerl', '1.7.8'),
]

options = {'modulename': 'Bio::SearchIO::hmmer3'}

sanity_check_paths = {
'files': ['bin/bp_%s.pl' % x for x in ['hmmer_to_table', 'parse_hmmsearch']],
'dirs': [],
}

moduleclass = 'bio'
50 changes: 50 additions & 0 deletions easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# EasyBuild easyconfig
#
# John Dey [email protected]
# Fred Hutchenson Cancer Research Center
#
# Updated: Pavel Grochal (INUITS)

easyblock = 'Tarball'

name = 'prokka'
version = '1.14.5'

homepage = 'https://www.vicbioinformatics.com/software.prokka.shtml'
description = "Prokka is a software tool for the rapid annotation of prokaryotic genomes."

toolchain = {'name': 'gompi', 'version': '2023b'}

source_urls = ['https://github.com/tseemann/prokka/archive/']
sources = ['v%(version)s.zip']
checksums = ['0c13dd5621c352633565f5831c4e85ce2e1e400c2f17ba50800282ae121803ff']

dependencies = [
('BioPerl', '1.7.8'),
('BLAST+', '2.16.0'),
('Java', '11', '', SYSTEM),
('Bio-SearchIO-hmmer', '1.7.3'),
('parallel', '20240322'),
('tbl2asn', '20230713'),
]

local_bin_files = ['prokka', 'prokka-cdd_to_hmm', 'prokka-genpept_to_fasta_db', 'prokka-tigrfams_to_hmm',
'prokka-biocyc_to_fasta_db', 'prokka-clusters_to_hmm', 'prokka-hamap_to_hmm',
'prokka-uniprot_to_fasta_db', 'prokka-build_kingdom_dbs', 'prokka-genbank_to_fasta_db',
'prokka-make_tarball']

postinstallcmds = ["%(installdir)s/bin/prokka --setupdb"]

sanity_check_paths = {
'files': ['bin/%s' % x for x in local_bin_files] + ['binaries/linux/aragorn', 'db/cm/Bacteria', 'doc/ToDoList.txt'],
'dirs': ['bin', 'binaries', 'db', 'db/cm', 'db/genus', 'db/hmm', 'db/kingdom', 'doc'],
}

sanity_check_commands = [
"prokka --version",
"prokka --listdb",
]

modloadmsg = "prokka scripts are located in $EBROOTPROKKA/bin; databases are located in $EBROOTPROKKA/db\n"

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

name = 'SKESA'
version = '2.4.0'
versionsuffix = '_saute.1.3.0_2'

homepage = 'https://github.com/ncbi/SKESA'
description = "SKESA is a de-novo sequence read assembler for cultured single isolate genomes based on DeBruijn graphs."

toolchain = {'name': 'gompi', 'version': '2023b'}
toolchainopts = {'cstd': 'c++11'}

source_urls = ['https://github.com/ncbi/SKESA/archive/']
sources = ['skesa.%(version)s%(versionsuffix)s.tar.gz']
checksums = ['dc5ad60f963afb09d3f2a3bab8917e657bd93364f0deca6e6844ede44968e979']

dependencies = [
('Boost', '1.83.0'),
('SRA-Toolkit', '3.1.1'),
('ncbi-vdb', '3.1.1'),
]

prebuildopts = "touch %(builddir)s/ngs.done && "

buildopts = 'CC="$CXX" CFLAGS="$CXXFLAGS" '
buildopts += "NGS_DIR=%(builddir)s BOOST_PATH=$EBROOTBOOST NGS_PATH=$EBROOTSRAMINTOOLKIT VDB_PATH=$EBROOTNCBIMINVDB"

files_to_copy = [(['skesa'], 'bin')]

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

sanity_check_commands = ["skesa --help"]

moduleclass = 'bio'
69 changes: 69 additions & 0 deletions easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/
# Author: Pablo Escobar Lopez
# sciCORE - University of Basel
# SIB Swiss Institute of Bioinformatics
# revised by Ariel Lozano

easyblock = 'Bundle'

name = 'tbl2asn'
version = '20230713'

homepage = 'https://www.ncbi.nlm.nih.gov/genbank/tbl2asn2/'
description = """Tbl2asn is a command-line program that automates the creation of
sequence records for submission to GenBank"""

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

builddependencies = [
('binutils', '2.40'),
('patchelf', '0.18.0'),
]

dependencies = [
('zlib', '1.2.13'),
]

# libraries that are copied to installdir need to be patched to have an RPATH section
# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check);

default_easyblock = 'CmdCp'

# It is not entirely clean how long NCBI keeps "older" versions. At April 29, 2022, we had six timestamps/versions,
# reporiting the same verion (tbl2asn --help -> 25.8) but 5 out of 6 (gunzipped) executables have different sha256
# checksums.

components = [
('libidn', '1.34', {
'easyblock': 'ConfigureMake',
'source_urls': [GNU_SOURCE],
'sources': [SOURCELOWER_TAR_GZ],
'start_dir': '%(namelower)s-%(version)s',
'checksums': ['3719e2975f2fb28605df3479c380af2cf4ab4e919e1506527e4c7670afff6e3c'],
}),
(name, version, {
'source_urls': ['https://ftp.ncbi.nih.gov/toolbox/ncbi_tools/converters/versions/%s/all/' %
(version[:4] + '-' + version[4:6] + '-' + version[6:])],
'sources': [{'download_filename': 'tbl2asn.linux64.gz',
'filename': '%(name)s-%(version)s%(versionsuffix)s.gz'}],
'checksums': ['544c4a2a53f2121fd21c44778fc61980a701ce852ea0142979241c0465c38a0c'],
'cmds_map': [('.*', "cp %(name)s-%(version)s%(versionsuffix)s tbl2asn")],
'files_to_copy': [(['tbl2asn'], 'bin')],
}),
]

postinstallcmds = [
"if %(rpath_enabled)s; then "
" patchelf --force-rpath --set-rpath %(installdir)s/lib %(installdir)s/bin/tbl2asn;"
"fi",
"chmod +x %(installdir)s/bin/tbl2asn",
]

sanity_check_paths = {
'files': ['bin/tbl2asn', 'bin/idn', 'lib/libidn.%s' % SHLIB_EXT],
'dirs': ['include'],
}

sanity_check_commands = ['tbl2asn --help']

moduleclass = 'bio'
Loading

0 comments on commit b37be0c

Please sign in to comment.