Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

{bio}[foss/2023a] phyluce v1.7.3 #19779

Merged
Merged
Show file tree
Hide file tree
Changes from 15 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions easybuild/easyconfigs/a/ABySS/ABySS-2.3.7-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
easyblock = 'ConfigureMake'

name = 'ABySS'
version = '2.3.7'

homepage = 'https://www.bcgsc.ca/platform/bioinfo/software/abyss'
description = """Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler"""

toolchain = {'name': 'foss', 'version': '2023a'}
toolchainopts = {'usempi': True, 'cstd': 'c++17'}

source_urls = ['http://github.com/bcgsc/abyss/releases/download/%(version)s/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['ba37780e79ec3aa359b6003e383caef13479a87f4d0022af01b86398f9ffca1f']

dependencies = [
('Autoconf', '2.71'),
('Automake', '1.16.5'),
('Boost', '1.82.0'),
('sparsehash', '2.0.4'),
('OpenMPI', '4.1.5'),
boegel marked this conversation as resolved.
Show resolved Hide resolved
('btllib', '1.7.0'),
]

preconfigopts = "./autogen.sh && "
configopts = 'CXXFLAGS="$CXXFLAGS -Wno-error"'

sanity_check_paths = {
'files': ["bin/ABYSS", "bin/ABYSS-P"],
'dirs': []
}

sanity_check_commands = ['ABYSS --help']

moduleclass = 'bio'
43 changes: 43 additions & 0 deletions easybuild/easyconfigs/b/btllib/btllib-1.7.0-GCC-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
easyblock = 'CmdCp'

name = 'btllib'
version = '1.7.0'

homepage = 'https://github.com/bcgsc/btllib'
description = """Bioinformatics Technology Lab common code library"""

toolchain = {'name': 'GCC', 'version': '12.3.0'}
toolchainopts = {'openmp': True}

sources = [{
'filename': '%(name)s-%(version)s.tar.gz',
'git_config': {
'url': 'https://github.com/bcgsc',
'repo_name': 'btllib',
'tag': 'v%(version)s',
'recursive': True,
'keep_git_dir': True,
}
}]
checksums = [None]

dependencies = [
('Python', '3.11.3'),
('Meson', '1.1.1'),
('Ninja', '1.11.1'),
('CMake', '3.26.3'),
('SAMtools', '1.18'),
]

cmds_map = [('.*', "./compile")]

files_to_copy = [(['install/bin/*'], 'bin'), (['install/lib/*'], 'lib'), (['install/include/*'], 'include')]

sanity_check_paths = {
'files': ['bin/randseq', 'bin/indexlr', 'bin/mi_bf_generate'],
'dirs': [],
}

sanity_check_commands = ['randseq --help', 'indexlr --help']

moduleclass = 'lang'
29 changes: 29 additions & 0 deletions easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
easyblock = 'ConfigureMake'

name = 'LASTZ'
version = '1.04.22'

homepage = 'https://github.com/lastz/lastz'
description = """ LASTZ is a program for aligning DNA sequences, a pairwise aligner. Originally designed to handle
sequences the size of human chromosomes and from different species, it is also useful for sequences produced by NGS
sequencing technologies such as Roche 454.
"""

toolchain = {'name': 'foss', 'version': '2023a'}
boegel marked this conversation as resolved.
Show resolved Hide resolved

source_urls = [GITHUB_LOWER_SOURCE]
sources = ['%(version)s.tar.gz']
checksums = ['4c829603ba4aed7ddf64255b528cd88850e4557382fca29580d3576c25c5054a']

skipsteps = ['configure']

buildopts = "allowBackToBackGaps=ON"

installopts = 'installDir=%(installdir)s/bin'

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

moduleclass = 'bio'
31 changes: 31 additions & 0 deletions easybuild/easyconfigs/p/Pilon/Pilon-1.23-Java-11-wrapped.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
easyblock = 'JAR'

name = 'Pilon'
version = '1.23'
versionsuffix = '-Java-%(javaver)s-wrapped'
boegel marked this conversation as resolved.
Show resolved Hide resolved

homepage = 'https://github.com/broadinstitute/pilon'
description = " Pilon is an automated genome assembly improvement and variant detection tool"

toolchain = SYSTEM

source_urls = ['https://github.com/broadinstitute/pilon/releases/download/v%(version)s/']
sources = ['%(namelower)s-%(version)s.jar']
checksums = ['bde1d3c8da5537abbc80627f0b2a4165c2b68551690e5733a6adf62413b87185']

dependencies = [('Java', '11')]

sanity_check_paths = {
'files': ['pilon-%(version)s.jar'],
'dirs': [],
}

postinstallcmds = [
"cd %(installdir)s && ln -s %(namelower)s-%(version)s.jar pilon.jar",
"mkdir -p %(installdir)s/bin",
"echo '#!/bin/sh' > %(installdir)s/bin/%(namelower)s",
"echo 'java -jar -Xmx8G %(installdir)s/%(namelower)s-%(version)s.jar $@' >> %(installdir)s/bin/%(namelower)s",
"chmod a+rx %(installdir)s/bin/%(namelower)s"
boegel marked this conversation as resolved.
Show resolved Hide resolved
]

moduleclass = 'bio'
139 changes: 139 additions & 0 deletions easybuild/easyconfigs/p/phyluce/phyluce-1.7.3-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
easyblock = 'PythonBundle'

name = 'phyluce'
version = '1.7.3'

homepage = 'https://github.com/faircloth-lab/phyluce'
description = """
phyluce is a software package for working with data generated from sequence capture of UCE
(ultra-conserved element) loci, as first published in [BCF2012]. Specifically, phyluce is a suite of programs to:
1) assemble raw sequence reads from Illumina platforms into contigs
2) determine which contigs represent UCE loci
3) filter potentially paralagous UCE loci
4) generate different sets of UCE loci across taxa of interest
"""

toolchain = {'name': 'foss', 'version': '2023a'}

dependencies = [
('Python', '3.11.3'),
('Biopython', '1.83'),
('Python-bundle-PyPI', '2023.06'),
('snakemake', '8.4.2'),
('DendroPy', '4.6.1'),
('bx-python', '0.10.0'),
('ABySS', '2.3.7'),
('BCFtools', '1.18'),
('BEDTools', '2.31.0'),
('BWA', '0.7.17'),
('Gblocks', '0.91b', '', SYSTEM),
('LASTZ', '1.04.22'),
('MAFFT', '7.520', '-with-extensions'),
('MUSCLE', '5.1.0'),
('Pilon', '1.23', '-Java-11-wrapped', SYSTEM),
boegel marked this conversation as resolved.
Show resolved Hide resolved
('RAxML-NG', '1.2.0'),
('SAMtools', '1.18'),
('seqtk', '1.4'),
('SPAdes', '3.15.4'),
('trimAl', '1.4.1'),
('Velvet', '1.2.10', '-mt-kmer_191')
]

exts_list = [
(name, version, {
'source_urls': ['https://github.com/faircloth-lab/phyluce/archive/refs/tags/'],
'source_tmpl': 'v%(version)s.tar.gz',
'patches': [
'%(name)s-%(version)s_fix-config-paths.patch',
'%(name)s-%(version)s_removal-Bio-Alphabet.patch',
],
'checksums': [
# v1.7.3.tar.gz
'931fd512730bb101266b27728576df00277858d256e1ab30d64b474588362e11',
# phyluce-1.7.3_fix-config-paths.patch
'543daee90e1422a7a43c304d6f33e5f16411cc7b85c522b847388feff8cc402a',
# phyluce-1.7.3_removal-Bio-Alphabet.patch
'f6c5237552fde5a3bf24105781a9001ee5e87bbd825015fc1aa6b5c6a147e171',
],
}),
]

use_pip = True
sanity_pip_check = True

sanity_check_paths = {
'files': [],
'dirs': ['lib/python%(pyshortver)s/site-packages'],
}

sanity_check_commands = ["%s --help" % x for x in [
"phyluce_align_extract_taxa_from_alignments",
"phyluce_align_extract_taxon_fasta_from_alignments",
"phyluce_align_filter_alignments",
"phyluce_align_format_concatenated_phylip_for_paml",
"phyluce_align_get_align_summary_data",
"phyluce_align_get_gblocks_trimmed_alignments_from_untrimmed",
"phyluce_align_get_incomplete_matrix_estimates",
"phyluce_align_get_informative_sites",
"phyluce_align_get_only_loci_with_min_taxa",
"phyluce_align_get_ry_recoded_alignments",
"phyluce_align_get_smilogram_from_alignments",
"phyluce_align_get_taxon_locus_counts_in_alignments",
"phyluce_align_get_trimal_trimmed_alignments_from_untrimmed",
"phyluce_align_move_align_by_conf_file",
"phyluce_align_randomly_sample_and_concatenate",
"phyluce_align_reduce_alignments_with_raxml",
"phyluce_align_remove_empty_taxa",
"phyluce_align_remove_locus_name_from_files",
"phyluce_align_screen_alignments_for_problems",
"phyluce_align_seqcap_align",
"phyluce_align_split_concat_nexus_to_loci",
"phyluce_assembly_assemblo_abyss",
"phyluce_assembly_assemblo_spades",
"phyluce_assembly_assemblo_velvet",
"phyluce_assembly_explode_get_fastas_file",
"phyluce_assembly_extract_contigs_to_barcodes",
"phyluce_assembly_get_bed_from_lastz",
"phyluce_assembly_get_fasta_lengths",
"phyluce_assembly_get_fastas_from_match_counts",
"phyluce_assembly_get_fastq_lengths",
"phyluce_assembly_get_match_counts",
"phyluce_assembly_match_contigs_to_barcodes",
"phyluce_genetrees_get_mean_bootrep_support",
"phyluce_genetrees_generate_multilocus_bootstrap_count",
"phyluce_genetrees_rename_tree_leaves",
"phyluce_genetrees_sort_multilocus_bootstraps",
"phyluce_genetrees_get_tree_counts",
"phyluce_ncbi_chunk_fasta_for_ncbi",
"phyluce_ncbi_prep_uce_align_files_for_ncbi",
"phyluce_probe_easy_lastz",
"phyluce_probe_get_genome_sequences_from_bed",
"phyluce_probe_get_locus_bed_from_lastz_files",
"phyluce_probe_get_multi_fasta_table",
"phyluce_probe_get_multi_merge_table",
"phyluce_probe_get_probe_bed_from_lastz_files",
"phyluce_probe_get_screened_loci_by_proximity",
"phyluce_probe_get_subsets_of_tiled_probes",
"phyluce_probe_get_tiled_probe_from_multiple_inputs",
"phyluce_probe_get_tiled_probes",
"phyluce_probe_query_multi_fasta_table",
"phyluce_probe_query_multi_merge_table",
"phyluce_probe_reconstruct_uce_from_probe",
"phyluce_probe_remove_duplicate_hits_from_probes_using_lastz",
"phyluce_probe_remove_overlapping_probes_given_config",
"phyluce_probe_run_multiple_lastzs_sqlite",
"phyluce_probe_slice_sequence_from_genomes",
"phyluce_probe_strip_masked_loci_from_set",
"phyluce_utilities_combine_reads",
"phyluce_utilities_filter_bed_by_fasta",
"phyluce_utilities_get_bed_from_fasta",
"phyluce_utilities_merge_multiple_gzip_files",
"phyluce_utilities_merge_next_seq_gzip_files",
"phyluce_utilities_replace_many_links",
"phyluce_utilities_unmix_fasta_reads",
"phyluce_workflow",
]]

modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages/phyluce'}

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# fix path of binaries in config file
--- config/phyluce.conf.orig 2024-02-01 11:38:15.279943701 +0100
+++ config/phyluce.conf 2024-02-01 14:52:31.565662528 +0100
@@ -1,27 +1,27 @@
[binaries]
-abyss:$CONDA/bin/ABYSS
-abyss-pe:$CONDA/bin/abyss-pe
-bcftools:$CONDA/bin/bcftools
-bedtools:$CONDA/bin/bedtools
-bwa:$CONDA/bin/bwa
-gblocks:$CONDA/bin/Gblocks
-lastz:$CONDA/bin/lastz
-mafft:$CONDA/bin/mafft
-muscle:$CONDA/bin/muscle
-pilon:$CONDA/bin/pilon
-raxml-ng:$CONDA/bin/raxml-ng
-samtools:$CONDA/bin/samtools
-seqtk:$CONDA/bin/seqtk
-spades:$CONDA/bin/spades.py
-trimal:$CONDA/bin/trimal
-velvetg:$CONDA/bin/velvetg
-velveth:$CONDA/bin/velveth
-snakemake:$CONDA/bin/Snakemake
+abyss:$EBROOTABYSS/bin/ABYSS
+abyss-pe:$EBROOTABYSS/bin/abyss-pe
+bcftools:$EBROOTBCFTOOLS/bin/bcftools
+bedtools:$EBROOTBEDTOOLS/bin/bedtools
+bwa:$EBROOTBWA/bin/bwa
+gblocks:$EBROOTGBLOCKS/Gblocks
+lastz:$EBROOTLASTZ/bin/lastz
+mafft:$EBROOTMAFFT/bin/mafft
+muscle:$EBROOTMUSCLE/bin/muscle
+pilon:$EBROOTPILON/bin/pilon
+raxml-ng:$EBROOTRAXMLMINNG/bin/raxml-ng
+samtools:$EBROOTSAMTOOLS/bin/samtools
+seqtk:$EBROOTSEQTK/bin/seqtk
+spades:$EBROOTSPADES/bin/spades.py
+trimal:$EBROOTTRIMAL/bin/trimal
+velvetg:$EBROOTVELVET/bin/velvetg
+velveth:$EBROOTVELVET/bin/velveth
+snakemake:$EBROOTSNAKEMAKE/bin/snakemake

[workflows]
-mapping:$WORKFLOWS/mapping/Snakefile
-correction:$WORKFLOWS/contig-correction/Snakefile
-phasing:$WORKFLOWS/phasing/Snakefile
+mapping:$EBROOTPHYLUCE/phyluce/workflows/mapping/Snakefile
+correction:$EBROOTPHYLUCE/phyluce/workflows/contig-correction/Snakefile
+phasing:$EBROOTPHYLUCE/phyluce/workflows/phasing/Snakefile

#----------------
# Advanced
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# removal of the Bio.Alphabet - it is not part of Biopython anymore (since v1.78)
# https://biopython.org/wiki/Alphabet
--- bin/ncbi/phyluce_ncbi_prep_uce_align_files_for_ncbi.orig 2024-02-01 15:53:37.732931000 +0100
+++ bin/ncbi/phyluce_ncbi_prep_uce_align_files_for_ncbi 2024-02-01 16:16:42.885167000 +0100
@@ -18,7 +18,6 @@
from Bio import AlignIO
from Bio.Seq import Seq
from Bio.SeqRecord import SeqRecord
-from Bio.Alphabet import IUPAC

from phyluce import ncbi
from phyluce.log import setup_logging
@@ -127,7 +126,7 @@
.upper()
)
new_record = SeqRecord(
- Seq(new_seq, IUPAC.IUPACAmbiguousDNA()),
+ Seq(new_seq),
id=new_id,
name="",
description="",
Loading
Loading