diff --git a/.gitignore b/.gitignore index c667a41e000..c2974194435 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,15 @@ .pydevproject .project LICENSE_HEADER +*.eb.bak_* *.pyc *.pyo *.nja +*.out build/ dist/ *egg-info/ +.venv/ *.swp *.ropeproject/ eb-*.log diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 590c5db69f2..457e390f6b9 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,10 +3,43 @@ For more detailed information, please see the git log. These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html. -The latest version of easybuild-easyconfig provides 20,561 easyconfig files, for 3,656 different software packages, +The latest version of easybuild-easyconfig provides 20,670 easyconfig files, for 3,670 different software packages, incl. 41 different (compiler) toolchains. +v4.9.4 (22 september 2024) +-------------------------- + +update/bugfix release + +- added example easyconfig files for 14 new software packages: + - Biotite (#21026), chopper (#21418), CLUMPP (#21329), cramino (#21382), dub (#21378), ESM3 (#21026), GOMC (#21008), + MOKIT (#21352), nanoQC (#21371), phasius (#21389), PyBullet (#21356), rnamotif (#21336), versioningit (#21424), + xskillscore (#21351) +- added additional easyconfigs for various supported software packages, including: + - awscli 2.17.54, BiG-SCAPE-1.1.9, ccache 4.10.2, CLHEP 2.4.7.1, CREST 3.0.2, decona 1.4-2024073, dftd4 3.7.0, + GATE 9.4, Gdk-Pixbuf 2.42.11, Geant4 11.2.2, Geant4-data 11.2, Ghostscript 10.03.1, GitPython 3.1.43, + GObject-Introspection 1.80.1, HarfBuzz 9.0.0, ImageMagick 7.1.1-38, JasPer 4.2.4, joypy 0.2.6, Julia 1.10.4, + LDC 1.39.0, Leptonica 1.84.1, Markdown 3.7, MPICH 4.2.2, NanoComp 1.24.0, nanoget 1.19.3, nanomath 1.4.0, + NanoPlot 1.43.0, Pango 1.54.0, PCAngsd 1.2, Pillow 10.4.0, python-isal 1.7.0, pocl 6.0, PROJ 9.4.1, protobuf 28.0, + protobuf-python 5.28.0, R-tesseract 5.2.1, RepeatMasker 4.1.7-p1, RHEIA 1.1.11, RMBlast 2.14.1, + scikit-build-core 0.10.6, sleuth 0.30.1, SNAP-ESA 10.0.0, tesseract 5.3.4, Triton 2.1.0, TurboVNC 3.1.2, + VirtualGL 3.1.1, zlib-ng 2.2.1 +- minor enhancements, including: + - enable support for Apache ORC to Arrow v14.0.1 and v16.1.0 (#21056) + - use proper dependency for tensorboard in easyconfigs for TensorFlow v2.15.1 (#21337) +- various bug fixes, including: + - account for crates for easyconfigs using Cargo-based easyblock when determining checksums for patches in easyconfigs test suite (#21419) + - avoid missing symbol in mclust extension of R-4.0.3 w/ foss/2020b (#21429) + - fix build of librosa 0.10.1 in some environments by removing "python -m build" for soxr extension (#21434) + - fix repeated sanity check runs in manta easyconfigs (#21435) + - fix test_easyconfig_locations when easyconfigs index is present (#21394) + - use proper dependency for libnsl in git-annex (#21441) + - avoid writing into ~/.stack directory during build for git-annex (#21452) +- other changes: + - remove exts_default_options from TensorFlow 2.3.1 (#21290) + + v4.9.3 (14 September 2024) -------------------------- diff --git a/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..506079ce98c --- /dev/null +++ b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'MesonNinja' + +name = 'ATK' +version = '2.38.0' + +homepage = 'https://developer.gnome.org/atk/' +description = """ + ATK provides the set of accessibility interfaces that are implemented by other + toolkits and applications. Using the ATK interfaces, accessibility tools have + full access to view and control running applications. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ac4de2a4ef4bd5665052952fe169657e65e895c5057dffb3c2a810f6191a0c36'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), +] + +dependencies = [ + ('GLib', '2.80.4'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dintrospection=true " + +sanity_check_paths = { + 'files': ['lib/libatk-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb index 85715fef495..0c588b9f16b 100644 --- a/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb +++ b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb @@ -39,10 +39,10 @@ dependencies = [ start_dir = 'cpp' # see https://arrow.apache.org/docs/developers/python.html -configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON " configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " -configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " -configopts += "-DZSTD_ROOT=$EBROOTZSTD " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_LZ4=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DARROW_WITH_ZSTD=ON -DZSTD_ROOT=$EBROOTZSTD " # install Python bindings _pyarrow_preinstall_opts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " @@ -52,7 +52,7 @@ _pyarrow_preinstall_opts += "export XDG_CACHE_HOME=$TMPDIR && " _pyarrow_preinstall_opts += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " _pyarrow_preinstall_opts += "Python3_ROOT_DIR=$EBROOTPYTHON " _pyarrow_preinstall_opts += "PYARROW_CMAKE_OPTIONS='-DZSTD_LIB=$EBROOTZSTD/lib/libzstd.%s ' " % SHLIB_EXT -_pyarrow_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 " +_pyarrow_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " exts_defaultclass = 'PythonPackage' exts_default_options = { @@ -81,6 +81,7 @@ sanity_check_commands = [ "python -c 'import pyarrow'", "python -c 'import pyarrow.dataset'", "python -c 'import pyarrow.parquet'", + "python -c 'import pyarrow.orc'", ] moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb b/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb index 87862215507..5219bd9c54f 100644 --- a/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb +++ b/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb @@ -39,10 +39,10 @@ dependencies = [ start_dir = 'cpp' # see https://arrow.apache.org/docs/developers/python.html -configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON " configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " -configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " -configopts += "-DZSTD_ROOT=$EBROOTZSTD " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_LZ4=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DARROW_WITH_ZSTD=ON -DZSTD_ROOT=$EBROOTZSTD " # install Python bindings _pyarrow_preinstall_opts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " @@ -52,7 +52,7 @@ _pyarrow_preinstall_opts += "export XDG_CACHE_HOME=$TMPDIR && " _pyarrow_preinstall_opts += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " _pyarrow_preinstall_opts += "Python3_ROOT_DIR=$EBROOTPYTHON " _pyarrow_preinstall_opts += "PYARROW_CMAKE_OPTIONS='-DZSTD_LIB=$EBROOTZSTD/lib/libzstd.%s ' " % SHLIB_EXT -_pyarrow_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 " +_pyarrow_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " exts_defaultclass = 'PythonPackage' exts_default_options = { @@ -81,6 +81,7 @@ sanity_check_commands = [ "python -c 'import pyarrow'", "python -c 'import pyarrow.dataset'", "python -c 'import pyarrow.parquet'", + "python -c 'import pyarrow.orc'", ] moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..9b70b1a9008 --- /dev/null +++ b/easybuild/easyconfigs/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb @@ -0,0 +1,73 @@ +easyblock = 'PythonBundle' + +name = 'awscli' +version = '2.17.54' + +homepage = 'https://pypi.python.org/pypi/awscli' +description = 'Universal Command Line Environment for AWS' + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), # required for awscrt +] + +dependencies = [ + ('Python', '3.11.5'), + ('PyYAML', '6.0.1'), + ('ruamel.yaml', '0.18.6'), +] + +use_pip = True + +exts_list = [ + ('jmespath', '1.0.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980'], + }), + ('botocore', '1.35.22', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d9bc656e7dde0b3e3f3080fc54bacff6a97fd7806b98acbcc21c7f9d4d0102b9'], + }), + ('s3transfer', '0.10.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['eca1c20de70a39daee580aef4986996620f365c4e0fda6a86100231d62f1bf69'], + }), + ('prompt_toolkit', '3.0.47', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0d7bfa67001d5e39d02c224b663abc33687405033a8c422d0d675a5a13361d10'], + }), + ('distro', '1.9.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2'], + }), + ('awscrt', '0.21.5', { + 'preinstallopts': "export AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 && ", + 'checksums': ['7ec2a67af30fbf386494df00bbdf996f7024000df6b01ab160014afef2b91005'], + }), + # older version of `urllib3` to avoid `ImportError: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_'` + # see https://github.com/aws/aws-cli/issues/7905#issuecomment-1559817550 + ('urllib3', '1.26.20', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e'], + }), + (name, version, { + # version requirements are too strict + 'preinstallopts': """sed -i 's/>[^"]*//g' pyproject.toml && """, + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/aws/aws-cli/archive/'], + 'checksums': ['c0a37eeb52b7df336e117667b67a275929701e9f6dad0ddb7de59a6f834e5b48'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/aws'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_check_commands = ["aws help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb b/easybuild/easyconfigs/b/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb new file mode 100644 index 00000000000..59f7c1a7cd5 --- /dev/null +++ b/easybuild/easyconfigs/b/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb @@ -0,0 +1,68 @@ +easyblock = 'PythonPackage' + +name = 'BiG-SCAPE' +version = '1.1.9' + +homepage = 'https://bigscape-corason.secondarymetabolites.org/index.html' +description = """BiG-SCAPE and CORASON provide a set of tools to explore the diversity of biosynthetic gene clusters +(BGCs) across large numbers of genomes, by constructing BGC sequence similarity networks, grouping BGCs into gene +cluster families, and exploring gene cluster diversity linked to enzyme phylogenies.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +github_account = 'medema-group' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'BiG-SCAPE-1.1.5_use_env_var_for_html.patch', + 'BiG-SCAPE-1.1.5_use_correct_name_for_FastTree.patch', +] +checksums = [ + {'v1.1.9.tar.gz': 'ef0ddb5b433e0b1467ae5f96037fd6d23ebcba6bc08201d1421eba35d072e534'}, + {'BiG-SCAPE-1.1.5_use_env_var_for_html.patch': '540be22396ab982c2aeaaed4ce5acdb8ccb8ce2b31d36bc69d37be7a29c7c42a'}, + {'BiG-SCAPE-1.1.5_use_correct_name_for_FastTree.patch': + 'e1572e4134c6163a3927ac32bd2a39b7f87cf01109f7913b3c55126e2381a771'}, +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('Biopython', '1.84'), + ('scikit-learn', '1.4.0'), + ('networkx', '3.2.1'), + ('HMMER', '3.4'), + ('FastTree', '2.1.11'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': 'bigscape'} + +local_lib_py_bigscape_path = 'lib/python%(pyshortver)s/site-packages/bigscape' + +sanity_check_paths = { + 'files': ['bin/bigscape'], + 'dirs': [local_lib_py_bigscape_path], +} + +sanity_check_commands = [ + 'bigscape --help', +] + +modextravars = { + 'BIG_SCAPE_HTML_PATH': '%(installdir)s/' + local_lib_py_bigscape_path, +} + +modloadmsg = "%(name)s needs processed Pfam database to work properly.\n" +modloadmsg += "For this, download the latest 'Pfam-A.hmm.gz' file from the Pfam website " +modloadmsg += "(http://ftp.ebi.ac.uk/pub/databases/Pfam/releases/), " +modloadmsg += "uncompress it and process it using the `hmmpress` command.\n" +modloadmsg += "For data files, like the domains_color_file.tsv and domain_includelist.txt, " +modloadmsg += "one can set the environment variable BIG_SCAPE_DATA_PATH, if that is not set " +modloadmsg += "it will use the directory where the bigscape command is started from.\n" +modloadmsg += "One can copy the domains_color_file.tsv from " +modloadmsg += "%(installdir)s/lib/python%(pyshortver)s/site-packages/BiG-SCAPE/domains_color_file.tsv\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Biotite/Biotite-0.41.0-gfbf-2023a.eb b/easybuild/easyconfigs/b/Biotite/Biotite-0.41.0-gfbf-2023a.eb new file mode 100644 index 00000000000..8d4385e45f5 --- /dev/null +++ b/easybuild/easyconfigs/b/Biotite/Biotite-0.41.0-gfbf-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'Biotite' +version = '0.41.0' + +homepage = 'https://www.biotite-python.org/' +description = """Biotite is your Swiss army knife for bioinformatics. Whether you want to +identify homologous sequence regions in a protein family or you would like to +find disulfide bonds in a protein structure: Biotite has the right tool for +you. This package bundles popular tasks in computational molecular biology into +a uniform Python library.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), +] + +use_pip = True + +exts_list = [ + ('biotite', version, { + 'checksums': ['a5fddb4d738291772735cf04dfa8b642e0bdd6b4c2c0c71e2db727c0a66bd106'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb new file mode 100644 index 00000000000..af659719245 --- /dev/null +++ b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'CAMPARI' +version = '4.0' +_date = '12202020' + +homepage = 'http://campari.sourceforge.net/V4/index.html' +description = """ +CAMPARI is a joint package for performing and analyzing molecular simulations, in particular of systems of biological +relevance. It focuses on a wide availability of algorithms for (advanced) sampling and is capable of combining Monte +Carlo and molecular dynamics in seamless fashion.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['campari_v%s_%s.zip' % (version.split('.')[0], _date)] +checksums = ['bc627fb286b5461a5c68aa3e1a551ecd81016495163685800163c734f7c4f1bd'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('netCDF-Fortran', '4.6.1'), + ('libtirpc', '1.3.3'), +] + +start_dir = 'source' + +# remove hardcoded paths in configure script +preconfigopts = 'sed -i "s|/usr/share|$EBROOTAUTOMAKE/share|" configure &&' +# ignore default compiler settings and use EB build environment +local_fcflags = '$FCFLAGS -fallow-argument-mismatch $CPPFLAGS' +configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="%s" ' % local_fcflags +configopts += '--enable-mpi=auto ' +configopts += 'LIBS="$LIBS $LIBFFT $LIBBLAS -ltirpc"' + +buildopts = 'all' + +maxparallel = 10 + +postinstallcmds = ['cp -a %(builddir)s/campari/{data,doc,examples,params,tools,LICENSE} %(installdir)s/'] + +_binaries = ['campari', 'campari_mpi', 'campari_mpi_threads', 'campari_threads', 'camp_ncminer', 'camp_ncminer_threads'] +_libraries = ['lcampari.a', 'lcampari_mpi.a', 'lcampari_mpi_threads.a', 'lcampari_threads.a', 'libxdrf.a'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries] + ['lib/%s' % x for x in _libraries], + 'dirs': [], +} + +sanity_check_commands = ['campari -h | grep "USAGE: CAMPARI"'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb index 203b4e4cd9f..743bf47a462 100644 --- a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb +++ b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb @@ -30,9 +30,10 @@ start_dir = 'source' # remove hardcoded paths in configure script preconfigopts = 'sed -i "s|/usr/share|$EBROOTAUTOMAKE/share|" configure &&' # ignore default compiler settings and use EB build environment -configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="$FCFLAGS" ' +local_fcflags = '$FCFLAGS -fallow-argument-mismatch $CPPFLAGS' +configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="%s" ' % local_fcflags configopts += '--enable-mpi=auto ' -configopts += 'LIBS="$LIBS $LIBFFT -ltirpc"' +configopts += 'LIBS="$LIBS $LIBFFT $LIBBLAS -ltirpc"' buildopts = 'all' diff --git a/easybuild/easyconfigs/c/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb b/easybuild/easyconfigs/c/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..4bf02eab9a1 --- /dev/null +++ b/easybuild/easyconfigs/c/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'CLHEP' +version = '2.4.7.1' + +homepage = 'https://proj-clhep.web.cern.ch/proj-clhep/' +description = """The CLHEP project is intended to be a set of HEP-specific foundation and + utility classes such as random generators, physics vectors, geometry and linear algebra. + CLHEP is structured in a set of packages independent of any external package.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://proj-clhep.web.cern.ch/proj-clhep/dist1/'] +sources = [SOURCELOWER_TGZ] +checksums = ['1c8304a7772ac6b99195f1300378c6e3ddf4ad07c85d64a04505652abb8a55f9'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +sanity_check_paths = { + 'files': ['bin/clhep-config', 'lib/libCLHEP.a', 'lib/libCLHEP.%s' % SHLIB_EXT], + 'dirs': ['include/CLHEP'], +} + +sanity_check_commands = ["clhep-config --help"] + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb b/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb new file mode 100644 index 00000000000..3b42e01a2be --- /dev/null +++ b/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb @@ -0,0 +1,38 @@ +easyblock = 'Tarball' + +name = 'CLUMPP' +version = '1.1.2' +versionsuffix = '-Linux64' + +homepage = 'https://rosenberglab.stanford.edu/clumpp.html' +description = """ +CLUMPP is a program that deals with label switching and multimodality problems +in population-genetic cluster analyses.""" + +toolchain = SYSTEM + +source_urls = ['https://rosenberglab.stanford.edu/software/'] +sources = ['%(name)s_Linux64.%(version)s.tar.gz'] +checksums = ['58cf3fe9e37f890621a76a244362256ffe4dde5e409346ae811d56af26cfe724'] + +postinstallcmds = [ + 'cd %(installdir)s && mkdir bin && mv CLUMPP bin/' +] + +sanity_check_paths = { + 'files': ['bin/CLUMPP'], + 'dirs': [], +} + +_clumpp_test_cmd = [ + "tmpdir=$(mktemp -d)", + "cp %(installdir)s/{paramfile,arabid.popfile,arabid.permutationfile} $tmpdir", + "cd $tmpdir", + "CLUMPP", +] + +sanity_check_commands = [ + " && ".join(_clumpp_test_cmd), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb similarity index 59% rename from easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb rename to easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb index 7649571fc62..87ae95876bf 100644 --- a/easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb @@ -5,8 +5,7 @@ easyblock = 'CMakeMake' name = 'CREST' -version = '20240319' -_commit = '2719412edf8bb606cebdd4cd6bbb4cdbd249e1e5' +version = '2.12' homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' description = """CREST is an utility/driver program for the xtb program. Originally it was designed @@ -16,23 +15,24 @@ description = """CREST is an utility/driver program for the xtb program. Origina program) and tool for the creation and analysation of structure ensembles. """ -toolchain = {'name': 'gfbf', 'version': '2023a'} -toolchainopts = {'opt': True, 'optarch': True, 'extra_fflags': '-ffree-line-length-none'} - -separate_build_dir = False +toolchain = {'name': 'gfbf', 'version': '2023b'} github_account = 'grimme-lab' source_urls = [GITHUB_LOWER_SOURCE] -sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': SOURCE_TAR_GZ}] -checksums = ['770b7ca72bc47bc4e1ffd8ca56566df7b03f4d3b702b04ec6b83bad9a125884d'] +sources = ['v%(version)s.tar.gz'] +patches = ['CREST-2.12-longline.patch'] +checksums = [ + {'v2.12.tar.gz': '390f0ac0aedafbd6bb75974fcffefe7e0232ad6c4ea0ab4f1a77e656a3ce263d'}, + {'CREST-2.12-longline.patch': '596ca2bcce3bbdfe99a3849934f41b388fb763a4898240091593b9b6a454fea9'}, +] -builddependencies = [('CMake', '3.26.3')] +builddependencies = [('CMake', '3.27.6')] -dependencies = [('xtb', '6.6.1')] # required to run the program +dependencies = [('xtb', '6.7.1')] # required to run the program # Simple test command just to check if the program is working: -test_cmd = 'export PATH=%%(builddir)s/%%(namelower)s-%s:$PATH && ' % _commit -test_cmd += 'cd %%(builddir)s/%%(namelower)s-%s/examples/expl-0/ && ./run.sh ' % _commit +test_cmd = 'export PATH=%(builddir)s/easybuild_obj:$PATH && ' +test_cmd += 'cd %(builddir)s/%(namelower)s-%(version)s/examples/expl-0/ && ./run.sh ' sanity_check_paths = { 'files': ['bin/%s' % name.lower()], diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch b/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch new file mode 100644 index 00000000000..c3b84785f5f --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch @@ -0,0 +1,16 @@ +Dealing with a long line, which gfortran does not like +Author: J. Sassmannshausen (Imperial College London/UK) +diff --git a/crest-2.12.orig/src/qcg/solvtool.f90 b/crest-2.12/src/qcg/solvtool.f90 +index cec514c..f38b576 100644 +--- a/crest-2.12.orig/src/qcg/solvtool.f90 ++++ b/crest-2.12/src/qcg/solvtool.f90 +@@ -3158,7 +3158,8 @@ subroutine check_prog_path_iff(env) + str=trim(str) + open(unit=27, file=str, iostat=ios) + read(27,'(a)',iostat=ios) path +- if(ios .ne. 0) error stop 'No xtb-IFF found. This is currently required for QCG and available at https:/github.com/grimme-lab/xtbiff/releases/tag/v1.1' ++ if(ios .ne. 0) error stop 'No xtb-IFF found. This is currently required for QCG and available at & ++ https:/github.com/grimme-lab/xtbiff/releases/tag/v1.1' + + end subroutine check_prog_path_iff + diff --git a/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb new file mode 100644 index 00000000000..38fc051e0fb --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'CMakeMake' + +name = 'CREST' +version = '3.0.2' + +homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' +description = """CREST is an utility/driver program for the xtb program. Originally it was designed + as conformer sampling program, hence the abbreviation Conformer–Rotamer Ensemble Sampling Tool, + but now offers also some utility functions for calculations with the GFNn–xTB methods. Generally + the program functions as an IO based OMP scheduler (i.e., calculations are performed by the xtb + program) and tool for the creation and analysation of structure ensembles. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'opt': True} + +sources = [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/crest-lab', + 'repo_name': 'crest', + 'tag': 'v%s' % version, + 'recursive': True, + }, +}] +checksums = [None] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('dftd4', '3.7.0'), + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), + ('xtb', '6.6.1'), +] + +runtest = "test" + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["crest -h", "crest --cite"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3ec16f6ab04 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,78 @@ +easyblock = 'PythonBundle' + +name = 'CellRank' +version = '2.0.2' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://cellrank.readthedocs.io/en/stable/' +description = """CellRank is a toolkit to uncover cellular dynamics based on + Markov state modeling of single-cell data. It contains two main modules: +kernels compute cell-cell transition probabilities and estimators generate +hypothesis based on these. """ + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('poetry', '1.5.1')] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('anndata', '0.10.5.post1'), + ('matplotlib', '3.7.2'), + ('networkx', '3.1'), + ('numba', '0.58.1'), + ('scanpy', '1.9.8'), + ('scikit-learn', '1.3.1'), + ('scVelo', '0.3.1'), + ('Seaborn', '0.13.2'), + ('wrapt', '1.15.0'), + ('PyTorch', '2.1.2', versionsuffix), + ('wandb', '0.16.1'), + ('PyTorch-Lightning', '2.2.1', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('loguru', '0.7.2', { + 'checksums': ['e671a53522515f34fd406340ee968cb9ecafbc4b36c679da03c18fd8d0bd51ac'], + }), + ('nam', '0.0.3', { + 'checksums': ['48400d12b5f29fdd1671aebdf78d7f41bcac4f5c8ab7ed48770ee0c4fbc0673b'], + }), + ('python-utils', '3.8.2', { + 'checksums': ['c5d161e4ca58ce3f8c540f035e018850b261a41e7cb98f6ccf8e1deb7174a1f1'], + }), + ('progressbar2', '4.4.1', { + 'modulename': 'progressbar', + 'checksums': ['97d323ba03ad3d017a4d047fd0b2d3e733c5a360c07f87d269f96641c3de729f'], + }), + ('dunamai', '1.19.2', { + 'checksums': ['3be4049890763e19b8df1d52960dbea60b3e263eb0c96144a677ae0633734d2e'], + }), + ('poetry_dynamic_versioning', '1.2.0', { + 'checksums': ['1a7bbdba2530499e73dfc6ac0af19de29020ab4aaa3e507573877114e6b71ed6'], + }), + ('pygpcca', '1.0.4', { + 'preinstallopts': "sed -i 's/jinja2==3.0.3/jinja2>=3.0.3/' requirements.txt && ", + 'checksums': ['5e3b49279abc62d25133811daeee050715f995ff02042c46e2a2034331d090d1'], + }), + ('pygam', '0.9.1', { + 'checksums': ['a321a017bf485ed93fc6233e02621f8e7eab3d4f8971371c9ae9e079c55be01d'], + }), + ('joblib', '1.3.2', { + 'checksums': ['92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + (name, version, { + 'modulename': 'cellrank', + 'preinstallopts': "sed -i 's/matplotlib>=3.5.0,<3.7.2/matplotlib>=3.5.0/' pyproject.toml && ", + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['47c1d2e953ac91f572937d816142b4ac5f0c876174c60f857562de76a9f8aa61'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb new file mode 100644 index 00000000000..947a6afdad5 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb @@ -0,0 +1,61 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2015 Dmitri Gribenko, Ward Poelmans +# Authors:: Dmitri Gribenko +# Authors:: Ward Poelmans +# License:: GPLv2 or later, MIT, three-clause BSD. +# $Id$ +## + +name = 'Clang' +version = '17.0.0_20230515' +versionsuffix = '-CUDA-%(cudaver)s' +_commit = 'c5dede880d17' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [{ + 'source_urls': ["https://github.com/llvm/llvm-project/archive"], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': 'llvm-project-%s.tar.gz' % version, +}] +checksums = ['6f371f9ac208b8e9dc57fc117b1a9c8565d7ea2bbb49a2768cb9c3c0fee0291d'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Perl', '5.36.1'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.11.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.40'), + ('hwloc', '2.9.1'), + ('libxml2', '2.11.4'), + ('ncurses', '6.4'), + ('GMP', '6.2.1'), + ('Z3', '4.12.2'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True + +llvm_runtimes = ['libunwind', 'libcxx', 'libcxxabi'] +llvm_projects = ['polly', 'lld', 'lldb', 'clang-tools-extra', 'flang'] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5a6b4ee2256 --- /dev/null +++ b/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb @@ -0,0 +1,49 @@ +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL + +easyblock = 'CMakeNinja' + +name = 'ccache' +version = '4.10.2' + +homepage = 'https://ccache.dev/' +description = """Ccache (or “ccache”) is a compiler cache. It speeds up recompilation by +caching previous compilations and detecting when the same compilation is being done again""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_GZ] +checksums = ['108100960bb7e64573ea925af2ee7611701241abb36ce0aae3354528403a7d87'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('zstd', '1.5.6'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('hiredis', '1.2.0'), +] + +# use BFD linker rather than default ld.gold (required on CentOS 8) +preconfigopts = 'LDFLAGS="-fuse-ld=bfd"' +configopts = ' '.join([ + '-DENABLE_DOCUMENTATION=OFF', + '-DENABLE_IPO=ON', + # Link most libraries statically + '-DSTATIC_LINK=ON', + # Disable downloading dependencies + '-DZSTD_FROM_INTERNET=OFF -DHIREDIS_FROM_INTERNET=OFF', +]) + +sanity_check_paths = { + 'files': ['bin/ccache'], + 'dirs': [] +} +sanity_check_commands = ['ccache --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..b1788fb34f9 --- /dev/null +++ b/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb @@ -0,0 +1,315 @@ +easyblock = 'Cargo' + +name = 'chopper' +version = '0.9.0' + +homepage = 'https://github.com/wdecoster/chopper' +description = """Rust implementation of NanoFilt+NanoLyse, both +originally written in Python. This tool, intended for long read +sequencing such as PacBio or ONT, filters and trims a fastq file. +Filtering is done on average read quality and minimal or maximal read +length, and applying a headcrop (start of read) and tailcrop (end of +read) while printing the reads passing the filter.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'wdecoster' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'chopper-0.9.0_fix_incorrect_version.patch', +] +checksums = [ + {'v0.9.0.tar.gz': 'ae5b6f8f5ffde45582998b63cb45b4221b25ee37a9fde7a256e653c7f3f12075'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anstream-0.6.13.tar.gz': 'd96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'anyhow-1.0.82.tar.gz': 'f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.2.0.tar.gz': 'f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80'}, + {'bio-1.6.0.tar.gz': '7a72cb93babf08c85b375c2938ac678cc637936b3ebb72266d433cec2577f6c2'}, + {'bio-types-1.0.1.tar.gz': '9d45749b87f21808051025e9bf714d14ff4627f9d8ca967eade6946ea769aa4a'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'buffer-redux-1.0.1.tar.gz': '4c9f8ddd22e0a12391d1e7ada69ec3b0da1914f1cec39c5cf977143c5b2854f5'}, + {'bv-0.11.1.tar.gz': '8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'bytemuck-1.15.0.tar.gz': '5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bzip2-0.4.4.tar.gz': 'bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.94.tar.gz': '17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-4.5.4.tar.gz': '90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0'}, + {'clap_builder-4.5.2.tar.gz': 'ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4'}, + {'clap_derive-4.5.4.tar.gz': '528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64'}, + {'clap_lex-0.7.0.tar.gz': '98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce'}, + {'cmake-0.1.50.tar.gz': 'a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'crc32fast-1.4.0.tar.gz': 'b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'editdistancek-1.0.2.tar.gz': '3e02df23d5b1c6f9e69fa603b890378123b93073df998a21e6e33b9db0a32613'}, + {'either-1.11.0.tar.gz': 'a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2'}, + {'enum-map-2.7.3.tar.gz': '6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9'}, + {'enum-map-derive-0.17.0.tar.gz': 'f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'flate2-1.0.28.tar.gz': '46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'getrandom-0.2.14.tar.gz': '94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c'}, + {'hashbrown-0.14.3.tar.gz': '290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexmap-2.2.6.tar.gz': '168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libz-ng-sys-1.1.15.tar.gz': 'c6409efc61b12687963e602df8ecf70e8ddacf95bc6576bcf16e3ac6328083c5'}, + {'libz-sys-1.1.16.tar.gz': '5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.7.2.tar.gz': '6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d'}, + {'minimap2-0.1.17+minimap2.2.27.tar.gz': 'd920763956405bd0cbeead7e4415097d5780f8a8ce4e1dde0415d15736597dfd'}, + {'minimap2-sys-0.1.18+minimap2.2.27.tar.gz': '185d3f931e11c1df371455a01e93a0037041d011705b5ff1d283d619b234c47c'}, + {'miniz_oxide-0.7.2.tar.gz': '9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7'}, + {'multimap-0.9.1.tar.gz': 'e1a5d38b9b352dbd913288736af36af41c48d61b1a8cd34bcecd727561b7d511'}, + {'nalgebra-0.29.0.tar.gz': 'd506eb7e08d6329505faa8a3a00a5dcc6de9f76e0c77e4b75763ae3c770831ff'}, + {'nalgebra-macros-0.1.0.tar.gz': '01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'needletail-0.5.1.tar.gz': 'db05a5ab397f64070d8c998fa0fbb84e484b81f95752af317dac183a82d9295d'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'ordered-float-3.9.2.tar.gz': 'f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'petgraph-0.6.4.tar.gz': 'e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'proc-macro2-1.0.81.tar.gz': '3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba'}, + {'quote-1.0.36.tar.gz': '0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rand_distr-0.4.3.tar.gz': '32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'regex-1.10.4.tar.gz': 'c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c'}, + {'regex-automata-0.4.6.tar.gz': '86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea'}, + {'regex-syntax-0.8.3.tar.gz': 'adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustversion-1.0.15.tar.gz': '80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'safe_arch-0.7.1.tar.gz': 'f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.198.tar.gz': '9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc'}, + {'serde_derive-1.0.198.tar.gz': 'e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9'}, + {'simba-0.6.0.tar.gz': 'f0b7840f121a46d63066ee7a99fc81dcabbc6105e437cae43528cea199b5a05f'}, + {'simdutf8-0.1.4.tar.gz': 'f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a'}, + {'statrs-0.16.0.tar.gz': '2d08e5e1748192713cc281da8b16924fb46be7b0c2431854eadc785823e5696e'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum-0.25.0.tar.gz': '290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.60.tar.gz': '909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3'}, + {'thiserror-1.0.58.tar.gz': '03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297'}, + {'thiserror-impl-1.0.58.tar.gz': 'c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7'}, + {'triple_accel-0.4.0.tar.gz': '22048bc95dfb2ffd05b1ff9a756290a009224b60b2f0e7525faeee7603851e63'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wide-0.7.16.tar.gz': '81a1851a719f11d1d2fea40e15c72f6c00de8c142d7ac47c1441cc7e4d0d5bc6'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.52.5.tar.gz': '6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb'}, + {'windows_aarch64_gnullvm-0.52.5.tar.gz': '7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263'}, + {'windows_aarch64_msvc-0.52.5.tar.gz': '9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6'}, + {'windows_i686_gnu-0.52.5.tar.gz': '88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670'}, + {'windows_i686_gnullvm-0.52.5.tar.gz': '87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9'}, + {'windows_i686_msvc-0.52.5.tar.gz': 'db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf'}, + {'windows_x86_64_gnu-0.52.5.tar.gz': '4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9'}, + {'windows_x86_64_gnullvm-0.52.5.tar.gz': '852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596'}, + {'windows_x86_64_msvc-0.52.5.tar.gz': 'bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, + {'chopper-0.9.0_fix_incorrect_version.patch': 'b3f3dfa620fbda6d00a73eafc8508a73ac4d96f6edfb0e804b3ff0bc149e37cd'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), + ('Rust', '1.75.0'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), +] + +crates = [ + ('adler', '1.0.2'), + ('aho-corasick', '1.1.3'), + ('anstream', '0.6.13'), + ('anstyle', '1.0.6'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('anyhow', '1.0.82'), + ('approx', '0.5.1'), + ('atty', '0.2.14'), + ('autocfg', '1.2.0'), + ('bio', '1.6.0'), + ('bio-types', '1.0.1'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('buffer-redux', '1.0.1'), + ('bv', '0.11.1'), + ('bytecount', '0.6.8'), + ('bytemuck', '1.15.0'), + ('byteorder', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.94'), + ('cfg-if', '1.0.0'), + ('clap', '4.5.4'), + ('clap_builder', '4.5.2'), + ('clap_derive', '4.5.4'), + ('clap_lex', '0.7.0'), + ('cmake', '0.1.50'), + ('colorchoice', '1.0.0'), + ('crc32fast', '1.4.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('editdistancek', '1.0.2'), + ('either', '1.11.0'), + ('enum-map', '2.7.3'), + ('enum-map-derive', '0.17.0'), + ('equivalent', '1.0.1'), + ('feature-probe', '0.1.1'), + ('fixedbitset', '0.4.2'), + ('flate2', '1.0.28'), + ('fxhash', '0.2.1'), + ('getrandom', '0.2.14'), + ('hashbrown', '0.14.3'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('indexmap', '2.2.6'), + ('itertools', '0.11.0'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.11'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.153'), + ('libm', '0.2.8'), + ('libz-ng-sys', '1.1.15'), + ('libz-sys', '1.1.16'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.7.2'), + ('minimap2', '0.1.17+minimap2.2.27'), + ('minimap2-sys', '0.1.18+minimap2.2.27'), + ('miniz_oxide', '0.7.2'), + ('multimap', '0.9.1'), + ('nalgebra', '0.29.0'), + ('nalgebra-macros', '0.1.0'), + ('ndarray', '0.15.6'), + ('needletail', '0.5.1'), + ('newtype_derive', '0.1.6'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.18'), + ('ordered-float', '3.9.2'), + ('paste', '1.0.14'), + ('petgraph', '0.6.4'), + ('pkg-config', '0.3.30'), + ('ppv-lite86', '0.2.17'), + ('proc-macro2', '1.0.81'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_distr', '0.4.3'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.4'), + ('regex-automata', '0.4.6'), + ('regex-syntax', '0.8.3'), + ('rustc_version', '0.1.7'), + ('rustversion', '1.0.15'), + ('ryu', '1.0.17'), + ('safe_arch', '0.7.1'), + ('semver', '0.1.20'), + ('serde', '1.0.198'), + ('serde_derive', '1.0.198'), + ('simba', '0.6.0'), + ('simdutf8', '0.1.4'), + ('statrs', '0.16.0'), + ('strsim', '0.11.1'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.3'), + ('syn', '1.0.109'), + ('syn', '2.0.60'), + ('thiserror', '1.0.58'), + ('thiserror-impl', '1.0.58'), + ('triple_accel', '0.4.0'), + ('typenum', '1.17.0'), + ('unicode-ident', '1.0.12'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('vec_map', '0.8.2'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wide', '0.7.16'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.52.5'), + ('windows_aarch64_gnullvm', '0.52.5'), + ('windows_aarch64_msvc', '0.52.5'), + ('windows_i686_gnu', '0.52.5'), + ('windows_i686_gnullvm', '0.52.5'), + ('windows_i686_msvc', '0.52.5'), + ('windows_x86_64_gnu', '0.52.5'), + ('windows_x86_64_gnullvm', '0.52.5'), + ('windows_x86_64_msvc', '0.52.5'), + ('xz2', '0.1.7'), +] +sanity_check_paths = { + 'files': ['bin/chopper'], + 'dirs': [], +} + +sanity_check_commands = [ + 'chopper --help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch b/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch new file mode 100644 index 00000000000..57c15b94db4 --- /dev/null +++ b/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch @@ -0,0 +1,28 @@ +Fix incorrect version number in the 0.9.0 tar file. + +Åke Sandgren, 2024-09-16 +diff --git a/Cargo.lock b/Cargo.lock +index 3e8f1fe..53fa5da 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -236,7 +236,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + + [[package]] + name = "chopper" +-version = "0.8.0" ++version = "0.9.0" + dependencies = [ + "approx", + "atty", +diff --git a/Cargo.toml b/Cargo.toml +index f268dce..7f7277a 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -1,6 +1,6 @@ + [package] + name = "chopper" +-version = "0.8.0" ++version = "0.9.0" + authors = ["wdecoster "] + edition = "2021" + diff --git a/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb b/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb new file mode 100644 index 00000000000..49c61ff64fb --- /dev/null +++ b/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb @@ -0,0 +1,351 @@ +easyblock = 'Cargo' + +name = 'cramino' +version = '0.14.5' + +homepage = 'https://github.com/wdecoster/cramino' +description = """A tool for quick quality assessment of cram and bam files, intended for long read sequencing.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wdecoster/cramino/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.14.5.tar.gz': 'd3b31ab76808ca76171e2539cfe30e66fe24cbd4af4ff9a941c282a0bc438032'}, + {'ahash-0.8.9.tar.gz': 'd713b3834d76b85304d4d525563c1276e2e30dc97cc67bfb4585a4a29fc2c89f'}, + {'aho-corasick-1.1.2.tar.gz': 'b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'anstream-0.6.12.tar.gz': '96b09b5178381e0874812a9b157f7fe84982617e48f71f4e3235482775e5b540'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'arrow-50.0.0.tar.gz': 'aa285343fba4d829d49985bdc541e3789cf6000ed0e84be7c039438df4a4e78c'}, + {'arrow-arith-50.0.0.tar.gz': '753abd0a5290c1bcade7c6623a556f7d1659c5f4148b140b5b63ce7bd1a45705'}, + {'arrow-array-50.0.0.tar.gz': 'd390feeb7f21b78ec997a4081a025baef1e2e0d6069e181939b61864c9779609'}, + {'arrow-buffer-50.0.0.tar.gz': '69615b061701bcdffbc62756bc7e85c827d5290b472b580c972ebbbf690f5aa4'}, + {'arrow-cast-50.0.0.tar.gz': 'e448e5dd2f4113bf5b74a1f26531708f5edcacc77335b7066f9398f4bcf4cdef'}, + {'arrow-csv-50.0.0.tar.gz': '46af72211f0712612f5b18325530b9ad1bfbdc87290d5fbfd32a7da128983781'}, + {'arrow-data-50.0.0.tar.gz': '67d644b91a162f3ad3135ce1184d0a31c28b816a581e08f29e8e9277a574c64e'}, + {'arrow-ipc-50.0.0.tar.gz': '03dea5e79b48de6c2e04f03f62b0afea7105be7b77d134f6c5414868feefb80d'}, + {'arrow-json-50.0.0.tar.gz': '8950719280397a47d37ac01492e3506a8a724b3fb81001900b866637a829ee0f'}, + {'arrow-ord-50.0.0.tar.gz': '1ed9630979034077982d8e74a942b7ac228f33dd93a93b615b4d02ad60c260be'}, + {'arrow-row-50.0.0.tar.gz': '007035e17ae09c4e8993e4cb8b5b96edf0afb927cd38e2dff27189b274d83dcf'}, + {'arrow-schema-50.0.0.tar.gz': '0ff3e9c01f7cd169379d269f926892d0e622a704960350d09d331be3ec9e0029'}, + {'arrow-select-50.0.0.tar.gz': '1ce20973c1912de6514348e064829e50947e35977bb9d7fb637dc99ea9ffd78c'}, + {'arrow-string-50.0.0.tar.gz': '00f3b37f2aeece31a2636d1b037dabb69ef590e03bdc7eb68519b51ec86932a7'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'base64-0.21.7.tar.gz': '9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567'}, + {'bio-types-1.0.1.tar.gz': '9d45749b87f21808051025e9bf714d14ff4627f9d8ca967eade6946ea769aa4a'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bumpalo-3.15.1.tar.gz': 'c764d619ca78fccbf3069b37bd7af92577f044bb15236036662d79b6559f25b7'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.5.0.tar.gz': 'a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.86.tar.gz': '7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'chrono-0.4.34.tar.gz': '5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b'}, + {'clap-4.5.1.tar.gz': 'c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da'}, + {'clap_builder-4.5.1.tar.gz': '9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb'}, + {'clap_derive-4.5.0.tar.gz': '307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47'}, + {'clap_lex-0.7.0.tar.gz': '98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce'}, + {'cmake-0.1.50.tar.gz': 'a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'const-random-0.1.17.tar.gz': '5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a'}, + {'const-random-macro-0.1.16.tar.gz': 'f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e'}, + {'core-foundation-sys-0.8.6.tar.gz': '06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'ctor-0.2.6.tar.gz': '30d2b3721e861707777e3195b0158f950ae6dc4a27e4d02ff9f67e3eb3de199e'}, + {'curl-sys-0.4.72+curl-8.6.0.tar.gz': '29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'either-1.10.0.tar.gz': '11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a'}, + {'env_filter-0.1.0.tar.gz': 'a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea'}, + {'env_logger-0.11.2.tar.gz': '6c012a26a7f605efc424dd53697843a72be7dc86ad2d01f7814337794a12231d'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'flatbuffers-23.5.26.tar.gz': '4dac53e22462d78c16d64a1cd22371b54cc3fe94aa15e7886a2fa6e5d1ab8640'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'getrandom-0.2.12.tar.gz': '190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'half-2.3.1.tar.gz': 'bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872'}, + {'hashbrown-0.14.3.tar.gz': '290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hts-sys-2.1.1.tar.gz': 'deebfb779c734d542e7f14c298597914b9b5425e4089aef482eacb5cab941915'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.60.tar.gz': 'e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'indexmap-2.2.3.tar.gz': '233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.10.tar.gz': 'b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c'}, + {'js-sys-0.3.68.tar.gz': '406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lexical-core-0.8.5.tar.gz': '2cde5de06e8d4c2faabc400238f9ae1c74d5412d03a7bd067645ccbc47070e46'}, + {'lexical-parse-float-0.8.5.tar.gz': '683b3a5ebd0130b8fb52ba0bdc718cc56815b6a097e28ae5a6997d0ad17dc05f'}, + {'lexical-parse-integer-0.8.6.tar.gz': '6d0994485ed0c312f6d965766754ea177d07f9c00c9b82a5ee62ed5b47945ee9'}, + {'lexical-util-0.8.5.tar.gz': '5255b9ff16ff898710eb9eb63cb39248ea8a5bb036bea8085b1a767ff6c4e3fc'}, + {'lexical-write-float-0.8.5.tar.gz': 'accabaa1c4581f05a3923d1b4cfd124c329352288b7b9da09e766b0668116862'}, + {'lexical-write-integer-0.8.5.tar.gz': 'e1b6f3d1f4422866b68192d62f77bc5c700bee84f3069f2469d7bc8c77852446'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libz-sys-1.1.15.tar.gz': '037731f5d3aaa87a5675e895b63ddff1a87624bc29f77004ea829809654e48f6'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'log-0.4.20.tar.gz': 'b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'memchr-2.7.1.tar.gz': '523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-0.4.1.tar.gz': 'b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af'}, + {'num-bigint-0.4.4.tar.gz': '608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-iter-0.1.44.tar.gz': 'd869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'openssl-src-300.2.3+3.2.1.tar.gz': '5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843'}, + {'openssl-sys-0.9.100.tar.gz': 'ae94056a791d0e1217d18b6cbdccb02c61e3054fc69893607f4067e3bb0b1fd1'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'proc-macro2-1.0.78.tar.gz': 'e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.35.tar.gz': '291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef'}, + {'rayon-1.8.1.tar.gz': 'fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'regex-1.10.3.tar.gz': 'b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15'}, + {'regex-automata-0.4.5.tar.gz': '5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd'}, + {'regex-syntax-0.8.2.tar.gz': 'c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f'}, + {'rust-htslib-0.46.0.tar.gz': 'aec6f9ca4601beb4ae75ff8c99144dd15de5a873f6adf058da299962c760968e'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustc_version-0.4.0.tar.gz': 'bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366'}, + {'rustversion-1.0.14.tar.gz': '7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'semver-1.0.22.tar.gz': '92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca'}, + {'serde-1.0.197.tar.gz': '3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2'}, + {'serde_derive-1.0.197.tar.gz': '7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b'}, + {'serde_json-1.0.114.tar.gz': 'c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0'}, + {'static_assertions-1.1.0.tar.gz': 'a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f'}, + {'strsim-0.11.0.tar.gz': '5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.50.tar.gz': '74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb'}, + {'thiserror-1.0.57.tar.gz': '1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b'}, + {'thiserror-impl-1.0.57.tar.gz': 'a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81'}, + {'tiny-keccak-2.0.2.tar.gz': '2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'unicode-bidi-0.3.15.tar.gz': '08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.23.tar.gz': 'a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5'}, + {'unzip-n-0.1.2.tar.gz': 'c2e7e85a0596447f0f2ac090e16bc4c516c6fe91771fb0c0ccf7fa3dae896b9c'}, + {'url-2.5.0.tar.gz': '31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.91.tar.gz': 'c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f'}, + {'wasm-bindgen-backend-0.2.91.tar.gz': 'c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b'}, + {'wasm-bindgen-macro-0.2.91.tar.gz': 'b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed'}, + {'wasm-bindgen-macro-support-0.2.91.tar.gz': '642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66'}, + {'wasm-bindgen-shared-0.2.91.tar.gz': '4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.52.0.tar.gz': '8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd'}, + {'windows_aarch64_gnullvm-0.52.0.tar.gz': 'cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea'}, + {'windows_aarch64_msvc-0.52.0.tar.gz': 'bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef'}, + {'windows_i686_gnu-0.52.0.tar.gz': 'a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313'}, + {'windows_i686_msvc-0.52.0.tar.gz': 'ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a'}, + {'windows_x86_64_gnu-0.52.0.tar.gz': '3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd'}, + {'windows_x86_64_gnullvm-0.52.0.tar.gz': '1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e'}, + {'windows_x86_64_msvc-0.52.0.tar.gz': 'dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04'}, + {'zerocopy-0.7.32.tar.gz': '74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be'}, + {'zerocopy-derive-0.7.32.tar.gz': '9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6'}, +] + +crates = [ + ('ahash', '0.8.9'), + ('aho-corasick', '1.1.2'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('anstream', '0.6.12'), + ('anstyle', '1.0.6'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('arrow', '50.0.0'), + ('arrow-arith', '50.0.0'), + ('arrow-array', '50.0.0'), + ('arrow-buffer', '50.0.0'), + ('arrow-cast', '50.0.0'), + ('arrow-csv', '50.0.0'), + ('arrow-data', '50.0.0'), + ('arrow-ipc', '50.0.0'), + ('arrow-json', '50.0.0'), + ('arrow-ord', '50.0.0'), + ('arrow-row', '50.0.0'), + ('arrow-schema', '50.0.0'), + ('arrow-select', '50.0.0'), + ('arrow-string', '50.0.0'), + ('autocfg', '1.1.0'), + ('base64', '0.21.7'), + ('bio-types', '1.0.1'), + ('bitflags', '1.3.2'), + ('bumpalo', '3.15.1'), + ('byteorder', '1.5.0'), + ('bytes', '1.5.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.86'), + ('cfg-if', '1.0.0'), + ('chrono', '0.4.34'), + ('clap', '4.5.1'), + ('clap_builder', '4.5.1'), + ('clap_derive', '4.5.0'), + ('clap_lex', '0.7.0'), + ('cmake', '0.1.50'), + ('colorchoice', '1.0.0'), + ('const-random', '0.1.17'), + ('const-random-macro', '0.1.16'), + ('core-foundation-sys', '0.8.6'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('crunchy', '0.2.2'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('ctor', '0.2.6'), + ('curl-sys', '0.4.72+curl-8.6.0'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('either', '1.10.0'), + ('env_filter', '0.1.0'), + ('env_logger', '0.11.2'), + ('equivalent', '1.0.1'), + ('flatbuffers', '23.5.26'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('getrandom', '0.2.12'), + ('glob', '0.3.1'), + ('half', '2.3.1'), + ('hashbrown', '0.14.3'), + ('heck', '0.4.1'), + ('hts-sys', '2.1.1'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.60'), + ('iana-time-zone-haiku', '0.1.2'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '2.2.3'), + ('itertools', '0.12.1'), + ('itoa', '1.0.10'), + ('js-sys', '0.3.68'), + ('lazy_static', '1.4.0'), + ('lexical-core', '0.8.5'), + ('lexical-parse-float', '0.8.5'), + ('lexical-parse-integer', '0.8.6'), + ('lexical-util', '0.8.5'), + ('lexical-write-float', '0.8.5'), + ('lexical-write-integer', '0.8.5'), + ('libc', '0.2.153'), + ('libm', '0.2.8'), + ('libz-sys', '1.1.15'), + ('linear-map', '1.2.0'), + ('log', '0.4.20'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.1'), + ('newtype_derive', '0.1.6'), + ('num', '0.4.1'), + ('num-bigint', '0.4.4'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-iter', '0.1.44'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.18'), + ('once_cell', '1.19.0'), + ('openssl-src', '300.2.3+3.2.1'), + ('openssl-sys', '0.9.100'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('proc-macro2', '1.0.78'), + ('quick-error', '1.2.3'), + ('quote', '1.0.35'), + ('rayon', '1.8.1'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.3'), + ('regex-automata', '0.4.5'), + ('regex-syntax', '0.8.2'), + ('rust-htslib', '0.46.0'), + ('rustc_version', '0.1.7'), + ('rustc_version', '0.4.0'), + ('rustversion', '1.0.14'), + ('ryu', '1.0.17'), + ('semver', '0.1.20'), + ('semver', '1.0.22'), + ('serde', '1.0.197'), + ('serde_derive', '1.0.197'), + ('serde_json', '1.0.114'), + ('static_assertions', '1.1.0'), + ('strsim', '0.11.0'), + ('strum_macros', '0.25.3'), + ('syn', '1.0.109'), + ('syn', '2.0.50'), + ('thiserror', '1.0.57'), + ('thiserror-impl', '1.0.57'), + ('tiny-keccak', '2.0.2'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unzip-n', '0.1.2'), + ('url', '2.5.0'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.91'), + ('wasm-bindgen-backend', '0.2.91'), + ('wasm-bindgen-macro', '0.2.91'), + ('wasm-bindgen-macro-support', '0.2.91'), + ('wasm-bindgen-shared', '0.2.91'), + ('windows-core', '0.52.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.52.0'), + ('windows_aarch64_gnullvm', '0.52.0'), + ('windows_aarch64_msvc', '0.52.0'), + ('windows_i686_gnu', '0.52.0'), + ('windows_i686_msvc', '0.52.0'), + ('windows_x86_64_gnu', '0.52.0'), + ('windows_x86_64_gnullvm', '0.52.0'), + ('windows_x86_64_msvc', '0.52.0'), + ('zerocopy', '0.7.32'), + ('zerocopy-derive', '0.7.32'), +] + +builddependencies = [ + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('OpenSSL', '1.1', '', SYSTEM), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb new file mode 100644 index 00000000000..c862fcea552 --- /dev/null +++ b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb @@ -0,0 +1,93 @@ +easyblock = 'CMakeMake' + +name = 'DFTB+' +version = '24.1' + +homepage = 'https://www.dftb-plus.info' +description = """DFTB+ is a fast and efficient versatile quantum mechanical simulation package. +It is based on the Density Functional Tight Binding (DFTB) method, containing +almost all of the useful extensions which have been developed for the DFTB +framework so far. Using DFTB+ you can carry out quantum mechanical simulations +like with ab-initio density functional theory based packages, but in an +approximate way gaining typically around two order of magnitude in speed.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'openmp': True, 'pic': True} + +_external_dir = '%%(builddir)s/dftbplus-%%(version)s/external/%s/origin/' +_external_extract = 'mkdir -p %s && tar -C %s' % (_external_dir, _external_dir) +_external_extract += ' --strip-components=1 -xzf %%s' + +source_urls = ['https://github.com/dftbplus/dftbplus/releases/download/%(version)s'] +sources = [ + 'dftbplus-%(version)s.tar.xz', + { + # Slater-Koster (slakos) data for testing + 'source_urls': ['https://github.com/dftbplus/testparams/archive'], + 'download_filename': 'fbe3d62127d86bd8e49ad25a1e5793e6a095e8e7.tar.gz', + 'filename': 'slakos-data-%(version)s.tar.gz', + 'extract_cmd': _external_extract % ('slakos', 'slakos'), + }, + { + # GBSA (gbsa) data for testing + 'source_urls': ['https://github.com/grimme-lab/gbsa-parameters/archive'], + 'download_filename': '6836c4d997e4135e418cfbe273c96b1a3adb13e2.tar.gz', + 'filename': 'gbsa-data-%(version)s.tar.gz', + 'extract_cmd': _external_extract % ('gbsa', 'gbsa'), + }, +] +checksums = [ + {'dftbplus-24.1.tar.xz': '3bc405d1ab834b6b145ca671fb44565ec50a6f576e9e18e7a1ae2c613a311321'}, + {'slakos-data-24.1.tar.gz': '78a0494c2ff9216d6a9199ba07d632b18b809e0198f43905c044b5748bde488d'}, + {'gbsa-data-24.1.tar.gz': 'd464f9f7b1883d1353b433d0c7eae2f5606af092d9b51d38e9ed15e072610a79'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), + ('git', '2.41.0', '-nodocs'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('dftd4', '3.7.0'), + ('ELSI', '2.11.0', '-PEXSI'), + ('libmbd', '0.12.6'), +] + +# Prefer dependencies from EB than bundled sources +configopts = '-DHYBRID_CONFIG_METHODS="Find;Submodule;Fetch" ' +configopts += '-DWITH_MPI=1 -DWITH_OMP=1 -DWITH_SDFTD3=1 -DWITH_ELSI=1 -DWITH_MBD=1 -DWITH_UNIT_TESTS=1 ' +configopts += '-DBUILD_SHARED_LIBS=1 -DWITH_API=1 -DWITH_PYTHON=0 ' # Python bindings installed as extension +configopts += '-DSCALAPACK_LIBRARY="$LIBSCALAPACK" ' + +runtest = 'test' + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, + 'runtest': False, +} +exts_list = [ + ('dptools', version, { + 'source_tmpl': 'dftbplus-%(version)s.tar.xz', + 'source_urls': ['https://github.com/dftbplus/dftbplus/releases/download/%(version)s'], + 'start_dir': 'tools/dptools', + 'checksums': ['3bc405d1ab834b6b145ca671fb44565ec50a6f576e9e18e7a1ae2c613a311321'], + }), +] + +sanity_check_paths = { + 'files': ['bin/' + x for x in ['dftb+', 'dp_bands', 'dp_dos', 'gen2cif', 'gen2xyz', 'makecube', + 'modes', 'repeatgen', 'straingen', 'waveplot', 'xyz2gen']] + + ['lib/libdftbplus.%s' % SHLIB_EXT, 'lib/libmpifx.%s' % SHLIB_EXT], + 'dirs': ['include/dftbplus', 'lib/cmake', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = ["python -c 'import dptools'"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb b/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb new file mode 100644 index 00000000000..3e1eb388a12 --- /dev/null +++ b/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'Tarball' + +name = 'decona' +version = '1.4-20240731' +local_commit = 'f7488ad' + +homepage = 'https://github.com/Saskia-Oosterbroek/decona' +description = "fastq to polished sequenses: pipeline suitable for mixed samples and long (Nanopore) reads" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/Saskia-Oosterbroek/decona/archive'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['7504160481ccdd3410fc79348c01a9a3bf0795ad73679cc305e1dcdf3e395962'] + +dependencies = [ + ('Python', '3.11.3'), + ('NanoFilt', '2.8.0'), + ('qcat', '1.1.0'), + ('CD-HIT', '4.8.1'), + ('minimap2', '2.26'), + ('Racon', '1.5.0'), + ('medaka', '1.11.3'), + ('BLAST+', '2.14.1'), +] + +fix_python_shebang_for = ['decona'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['decona'], + 'dirs': [], +} + +sanity_check_commands = ["decona -v | grep 'This is Decona %s'" % version.split('-')[0]] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb new file mode 100644 index 00000000000..912ed2baf4a --- /dev/null +++ b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb @@ -0,0 +1,50 @@ +# A. Domingo (Vrije Universiteit Brussel) +# J. Sassmannshausen (Imperial College London/UK) +# C. Willemyns (Vrije Universiteit Brussel) + +easyblock = 'CMakeNinja' + +name = 'dftd4' +version = '3.7.0' + +homepage = 'https://dftd4.readthedocs.io' +description = """ +The dftd4 project provides an implementation of the generally applicable, charge dependent +London-dispersion correction, termed DFT-D4. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': False, 'openmp': True, 'pic': True} + +github_account = 'dftd4' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f00b244759eff2c4f54b80a40673440ce951b6ddfa5eee1f46124297e056f69c'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), +] + +build_shared_libs = True + +configopts = '-DWITH_BLAS=1 -DWITH_OpenMP=1' + +# run suite of tests with ctest +test_cmd = 'ctest' +runtest = '' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.%s' % SHLIB_EXT, 'include/dftd4.h'], + 'dirs': ['include/dftd4', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["dftd4 --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..cfd077260fb --- /dev/null +++ b/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CmdCp' + +name = 'dub' +version = '1.38.1' + +homepage = 'https://github.com/dlang/dub' +description = "Package and build manager for D applications and libraries" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/dlang/dub/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['a7c9a2f819fdea7359f298cba76e81a24ca1536d756c3b4b98c2480463c37907'] + +builddependencies = [ + ('binutils', '2.40'), + ('LDC', '1.39.0'), +] + +cmds_map = [('.*', "ldmd2 -v -run build.d")] + +files_to_copy = [(['bin/dub'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/dub'], + 'dirs': [], +} + +sanity_check_commands = ["dub --help"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb new file mode 100644 index 00000000000..a1be84f6de9 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb @@ -0,0 +1,47 @@ +name = 'ELSI' +version = '2.11.0' +versionsuffix = '-PEXSI' + +homepage = 'https://wordpress.elsi-interchange.org/' +description = """ELSI provides and enhances scalable, open-source software library solutions for + electronic structure calculations in materials science, condensed matter physics, chemistry, and many other fields. + ELSI focuses on methods that solve or circumvent eigenvalue problems in electronic structure theory. + The ELSI infrastructure should also be useful for other challenging eigenvalue problems. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True, 'cstd': 'c++11', 'extra_fflags': '-fallow-argument-mismatch'} + +source_urls = ['https://gitlab.com/elsi_project/elsi_interface/-/archive/v2.11.0/'] +sources = ['elsi_interface-v%(version)s.tar.gz'] +patches = [ + 'ELSI-2.11.0_bison_3.8_compat.patch', +] +checksums = [ + {'elsi_interface-v2.11.0.tar.gz': '2e6929827ed9c99a32381ed9da40482e862c28608d59d4f27db7dcbcaed1520d'}, + {'ELSI-2.11.0_bison_3.8_compat.patch': 'a1284f5c0f442129610aa0fb463cc2b54450e3511a2fd6c871fadc21a16e9504'}, +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('ELPA', '2023.05.001'), + ('NTPoly', '3.1.0'), +] + +abs_path_compilers = True +build_internal_pexsi = True + +configopts = '-DENABLE_BSEPACK=ON ' + +# Tests use 4 MPI ranks, they require a minimum of 4 cores +# Map each MPI process to a single CPU core to avoid tests fails +pretestopts = "export OMPI_MCA_rmaps_base_mapping_policy=slot:PE=1 && " + +runtest = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch new file mode 100644 index 00000000000..255ed4a5575 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch @@ -0,0 +1,14 @@ +Make it compatible with Bison 3.7 +Author: Åke Sandgren, 20211020 +Update: Cintia Willemyns (Vrije Universiteit Brussel) +--- elsi_interface-v2.11.0.orig/external/SCOTCH/CMakeLists.txt 2024-09-10 19:01:11.447551000 +0200 ++++ elsi_interface-v2.11.0/external/SCOTCH/CMakeLists.txt 2024-09-10 19:08:44.913993743 +0200 +@@ -56,7 +56,7 @@ + COMMAND mv ${PROJECT_BINARY_DIR}/generated/tmp2.c ${PROJECT_BINARY_DIR}/generated/parser_yy.c + # Versions of bison > 2.X insert a '#include tmp2.h' in tmp2.c. A simple 'mv' will not work. + # The file needs to remain in the directory with the old name. Hence the 'cp' +- COMMAND cp ${PROJECT_BINARY_DIR}/generated/tmp2.h ${PROJECT_BINARY_DIR}/generated/parser_ly.h ++ COMMAND ln -s ${PROJECT_BINARY_DIR}/generated/tmp2.h ${PROJECT_BINARY_DIR}/generated/parser_ly.h + COMMAND flex -Pscotchyy -o${PROJECT_BINARY_DIR}/generated/tmp1.c ${SCOTCH_DIR}/parser_ll.l + COMMAND mv ${PROJECT_BINARY_DIR}/generated/tmp1.c ${PROJECT_BINARY_DIR}/generated/parser_ll.c + DEPENDS ${SCOTCH_DIR}/parser_yy.y ${SCOTCH_DIR}/parser_ll.l ${SCOTCH_DIR}/parser_yy.h ${SCOTCH_DIR}/parser_ll.h diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb new file mode 100644 index 00000000000..d5ef7e3da14 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb @@ -0,0 +1,45 @@ +name = 'ELSI' +version = '2.9.1' +versionsuffix = '-PEXSI' + +homepage = 'https://wordpress.elsi-interchange.org/' +description = """ELSI provides and enhances scalable, open-source software library solutions for + electronic structure calculations in materials science, condensed matter physics, chemistry, and many other fields. + ELSI focuses on methods that solve or circumvent eigenvalue problems in electronic structure theory. + The ELSI infrastructure should also be useful for other challenging eigenvalue problems. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True, 'cstd': 'c++11', 'extra_fflags': '-fallow-argument-mismatch'} + +source_urls = ['https://wordpress.elsi-interchange.org/wp-content/uploads/2022/05'] +sources = ['elsi_interface-v%(version)s.tar.gz'] +patches = [ + 'pexsi-1.2.0-mpi30.patch', + 'ELSI-2.7.1_bison_3.7_compat.patch', +] +checksums = [ + {'elsi_interface-v2.9.1.tar.gz': 'ad3dc163159a79f7a83f360265f2446920c151ecce9c294136e630fe424f1d29'}, + {'pexsi-1.2.0-mpi30.patch': 'd5580de710cee652c27622f167a10933f792546481d9c08d62f452885cb63abb'}, + {'ELSI-2.7.1_bison_3.7_compat.patch': '986f95c2eb22c8a8bef13357a10242dcf0a0fac562c88bdc9bdf46cc6e7a1edb'}, +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('NTPoly', '2.7.1'), +] + +abs_path_compilers = True +build_internal_pexsi = True + +configopts = '-DENABLE_BSEPACK=ON ' + +runtest = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..1382c12efc6 --- /dev/null +++ b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'ESM3' +version = '3.0.0.post2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.evolutionaryscale.ai/' +description = """ESM3 is a frontier generative model for biology, able to jointly reason across +three fundamental biological properties of proteins: sequence, structure, and +function. These three data modalities are represented as tracks of discrete +tokens at the input and output of ESM3. You can present the model with a +combination of partial inputs across the tracks, and ESM3 will provide output +predictions for all the tracks. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('Transformers', '4.39.3'), + ('Biopython', '1.83'), + ('Biotite', '0.41.0'), + ('Brotli-python', '1.0.9'), + ('einops', '0.7.0'), + ('IPython', '8.14.0'), + ('scikit-learn', '1.3.1'), +] + +use_pip = True + +exts_list = [ + ('msgpack-numpy', '0.4.8', { + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + }), + ('cloudpathlib', '0.16.0', { + 'checksums': ['cdfcd35d46d529587d744154a0bdf962aca953b725c8784cd2ec478354ea63a3'], + }), + ('esm', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['5544b6974945d791205226408100429c2ea6e49b30265aea1d359caabe20bb14'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'import esm'", + "python -c 'from esm.models.esm3 import ESM3'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb new file mode 100644 index 00000000000..60125c1af46 --- /dev/null +++ b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'ESM3' +version = '3.0.0.post2' + +homepage = 'https://www.evolutionaryscale.ai/' +description = """ESM3 is a frontier generative model for biology, able to jointly reason across +three fundamental biological properties of proteins: sequence, structure, and +function. These three data modalities are represented as tracks of discrete +tokens at the input and output of ESM3. You can present the model with a +combination of partial inputs across the tracks, and ESM3 will provide output +predictions for all the tracks. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch-bundle', '2.1.2'), + ('Transformers', '4.39.3'), + ('Biopython', '1.83'), + ('Biotite', '0.41.0'), + ('Brotli-python', '1.0.9'), + ('einops', '0.7.0'), + ('IPython', '8.14.0'), + ('scikit-learn', '1.3.1'), +] + +use_pip = True + +exts_list = [ + ('msgpack-numpy', '0.4.8', { + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + }), + ('cloudpathlib', '0.16.0', { + 'checksums': ['cdfcd35d46d529587d744154a0bdf962aca953b725c8784cd2ec478354ea63a3'], + }), + ('esm', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['5544b6974945d791205226408100429c2ea6e49b30265aea1d359caabe20bb14'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'import esm'", + "python -c 'from esm.models.esm3 import ESM3'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.3.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.3.eb new file mode 100644 index 00000000000..4059b342213 --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.3.eb @@ -0,0 +1,56 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.9.3' + +homepage = 'https://easybuilders.github.io/easybuild' +description = """EasyBuild is a software build and installation framework + written in Python that allows you to install software in a structured, + repeatable and robust way.""" + +toolchain = SYSTEM + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/10/a0/e5484d4078f7450042cd7b7a1af24fd3f8d0cb4818f4578e4c322ba488d8/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/ee/40/4f6412917f83429f9389b977903c8905f216cb211c8bf3111f28c3017677/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/13/95/44d1e10ceaaf08219ef50d1d97d500ba3b6b34f2d76dd1ff64def71612dc/', +] +# note: subdirectory for each unpacked source tarball is renamed because custom easyblock in older EasyBuild version +# that is used for installing EasyBuild with EasyBuild expects subdirectories with '-' rather than '_'; +# see also https://github.com/easybuilders/easybuild-easyblocks/pull/3358 +sources = [ + { + 'filename': 'easybuild_framework-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_framework-%(version)s easybuild-framework-%(version)s", + }, + { + 'filename': 'easybuild_easyblocks-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyblocks-%(version)s easybuild-easyblocks-%(version)s", + }, + { + 'filename': 'easybuild_easyconfigs-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyconfigs-%(version)s easybuild-easyconfigs-%(version)s", + }, +] +checksums = [ + {'easybuild_framework-4.9.3.tar.gz': '43bbcaa0a7b075eb6483054428ef4b1279a9fc850301171688f86899eaebfff8'}, + {'easybuild_easyblocks-4.9.3.tar.gz': '4f036be918f88fe2dadba87f15d696e9b4d3f8f06986c675b9fafc77b591649d'}, + {'easybuild_easyconfigs-4.9.3.tar.gz': 'f7f501c87cb16a8eb393f5e98cb3cd5f8e84314901e81ff50f8140681b415676'}, +] + +# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?) +# EasyBuild is a (set of) Python packages, so it depends on Python +# usually, we want to use the system Python, so no actual Python dependency is listed +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2]) + +sanity_check_paths = { + 'files': ['bin/eb'], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b44229828a4 --- /dev/null +++ b/easybuild/easyconfigs/f/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb @@ -0,0 +1,42 @@ +# Updated from previous config +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'CmdCp' + +name = 'FastTree' +version = '2.1.11' + +homepage = 'http://www.microbesonline.org/fasttree/' +description = """FastTree infers approximately-maximum-likelihood phylogenetic trees from alignments of nucleotide + or protein sequences. FastTree can handle alignments with up to a million of sequences in a reasonable amount of + time and memory. """ + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'openmp': True} + +# HTTPS cert error: +# hostname 'www.microbesonline.org' doesn't match either of 'genomics.lbl.gov', 'mojave.qb3.berkeley.edu', ... +source_urls = ['http://www.microbesonline.org/fasttree/'] +sources = [{'filename': '%(name)s-%(version)s.c', 'extract_cmd': 'cp %s FastTree.c'}] +checksums = ['9026ae550307374be92913d3098f8d44187d30bea07902b9dcbfb123eaa2050f'] + +builddependencies = [('binutils', '2.40')] + +cmds_map = [('%(name)s-%(version)s.c', '$CC -DOPENMP $CFLAGS $LIBS %%(source)s -o %(name)s')] + +files_to_copy = [(['FastTree'], 'bin')] + +# as FastTree is built with OpenMP, the correct binary is FastTreeMP +# the FastTree binary should normally be built without OpenMP, but let’s keep it as is for backward compatibility +# see http://www.microbesonline.org/fasttree/#OpenMP +postinstallcmds = ['cd %(installdir)s/bin && ln -s FastTree FastTreeMP'] + +sanity_check_paths = { + 'files': ['bin/FastTree'], + 'dirs': [], +} + +sanity_check_commands = ['FastTree 2>&1 | grep "FastTree Version %(version)s"'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb b/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb new file mode 100644 index 00000000000..6fd245d2079 --- /dev/null +++ b/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb @@ -0,0 +1,29 @@ +name = 'GATE' +version = '9.4' + +homepage = 'http://www.opengatecollaboration.org/' +description = """GATE is an advanced opensource software developed by the international OpenGATE collaboration and + dedicated to the numerical simulations in medical imaging. It currently supports simulations of Emission Tomography + (Positron Emission Tomography - PET and Single Photon Emission Computed Tomography - SPECT), and Computed Tomography""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/OpenGATE/Gate/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['96c53f6ab1b25c0e540d8f9564bce0049371b378de80a7118a0ff8834c6c117c'] + +builddependencies = [ + ('CMake', '3.26.3'), +] +dependencies = [ + ('Geant4', '11.2.2'), + ('CLHEP', '2.4.7.1'), + ('ROOT', '6.30.06'), +] + +preinstallopts = "sed -i 's|/usr/local/bin|%(installdir)s/bin|g' Makefile &&" + +# enable extra capabilities (Davis requires Geant4 10.04 or newer) +configopts = "-DGATE_USE_OPTICAL=1 -DGATE_USE_DAVIS=1" + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb new file mode 100644 index 00000000000..fbe1458a01a --- /dev/null +++ b/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'GOMC' +version = '2.76-20230613' +versionsuffix = '-CUDA-%(cudaver)s' +_commit = '9fc85fb' + +homepage = 'https://gomc-wsu.org/' +description = """GPU Optimized Monte Carlo (GOMC) is a parallel molecular +simulation code designed for high-performance simulation of large systems.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +sources = [ + { + 'source_urls': ['https://github.com/GOMC-WSU/GOMC/archive'], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }, +] +checksums = ['14725836707e4525cc7daea219a6eb47a8aeb675d01ef6d16ad60a9986dd3c1e'] + +builddependencies = [ + ('CMake', '3.23.1'), +] +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', versionsuffix), +] + +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['6.0', '7.0', '7.5', '8.0', '8.6'] +configopts = '-DCMAKE_CUDA_ARCHITECTURES="%(cuda_cc_cmake)s" ' + +preinstallopts = 'mkdir %(installdir)s/bin &&' +install_cmd = 'cp' +installopts = '%(builddir)s/easybuild_obj/%(name)s_{CPU,GPU}_* %(installdir)s/bin' + +_gomc_exe = ['GOMC_CPU_GCMC', 'GOMC_CPU_GEMC', 'GOMC_CPU_NPT', 'GOMC_CPU_NVT', 'GOMC_GPU_GCMC', + 'GOMC_GPU_GEMC', 'GOMC_GPU_NPT', 'GOMC_GPU_NVT'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _gomc_exe], + 'dirs': [], +} + +sanity_check_commands = ['%s | grep "Info: GOMC"' % x for x in _gomc_exe] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..83ab6981ae3 --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'GObject-Introspection' +version = '1.80.1' + +homepage = 'https://gi.readthedocs.io/en/latest/' +description = """GObject introspection is a middleware layer between C libraries + (using GObject) and language bindings. The C library can be scanned at + compile time and generate a metadata file, in addition to the actual + native C library. Then at runtime, language bindings can read this + metadata and automatically provide bindings to call into the C library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +patches = ['GObject-Introspection-1.80.1_install-GLib-GIR-files.patch'] +checksums = [ + {'gobject-introspection-1.80.1.tar.xz': 'a1df7c424e15bda1ab639c00e9051b9adf5cea1a9e512f8a603b53cd199bc6d8'}, + {'GObject-Introspection-1.80.1_install-GLib-GIR-files.patch': + 'c1909f1b7fd30784ae789ac0b5e45e0ca3dd2456890b864efa86a2f8c2e563aa'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('Python', '3.12.3'), + ('Bison', '3.8.2'), + ('cairo', '1.18.0'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('libffi', '3.4.5'), + ('util-linux', '2.40'), +] + +preconfigopts = "env GI_SCANNER_DISABLE_CACHE=true " +configopts = "-Dcairo=enabled" + +sanity_check_paths = { + 'files': ['bin/g-ir-%s' % x for x in ['annotation-tool', 'compiler', 'generate', 'scanner']] + + ['lib/libgirepository-1.0.' + SHLIB_EXT], + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch new file mode 100644 index 00000000000..5c09ded1cb2 --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch @@ -0,0 +1,52 @@ +This reverts a commit from upstream +> build: Do not install generated GLib GIR files +> +> GLib 2.79 ships its own introspection data. + +However GObject-Introspection requires (optionally) Cairo, which requires GLib +which requires GLib-Introspection for generating the introspection data. + +So there is a cyclic dependency, see https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/517 + +Author: Alexander Grund (TU Dresden) + +diff --git a/gir/meson.build b/gir/meson.build +index 3a016831..312aa886 100644 +--- a/gir/meson.build ++++ b/gir/meson.build +@@ -241,6 +241,8 @@ glib_gir = custom_target('gir-glib', + output: 'GLib-2.0.gir', + depends: [gir_giscanner_pymod, glib_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: glib_command + [ + '--cflags-begin'] + glib_includes + extra_giscanner_cflags + [ +@@ -308,6 +310,8 @@ gobject_gir = custom_target('gir-gobject', + output: 'GObject-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gobject_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gobject_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -360,6 +364,8 @@ uninstalled_gir_files += custom_target('gir-gmodule', + output: 'GModule-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gmodule_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gmodule_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -455,6 +461,8 @@ gio_gir = custom_target('gir-gio', + output: 'Gio-2.0.gir', + depends: [gobject_gir, gir_giscanner_pymod, gio_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gio_command + [ + '--include-uninstalled=' + gobject_gir.full_path(), diff --git a/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2ac4237f4c0 --- /dev/null +++ b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MesonNinja' + +name = 'Gdk-Pixbuf' +version = '2.42.11' + +homepage = 'https://docs.gtk.org/gdk-pixbuf/' +description = """ + The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation. + It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it + was distributed as part of GTK+ 2 but it was split off into a separate package + in preparation for the change to GTK+ 3. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['49dcb402388708647e8c321d56b6fb30f21e51e515d0c5a942268d23052a2f00'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), + ('X11', '20240607'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dgio_sniffing=false -Dintrospection=enabled -Dman=false" + +sanity_check_paths = { + 'files': ['lib/libgdk_pixbuf-%(version_major)s.0.a', 'lib/libgdk_pixbuf-%%(version_major)s.0.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include/gdk-pixbuf-%(version_major)s.0', 'lib/gdk-pixbuf-%(version_major)s.0', 'share'], +} + +sanity_check_commands = ["gdk-pixbuf-pixdata --help"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb b/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb new file mode 100644 index 00000000000..a085843d7d2 --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb @@ -0,0 +1,54 @@ +easyblock = 'Tarball' +name = 'Geant4-data' +version = '11.2' # version should somewhat match the Geant4 version it should be used in + +homepage = 'https://geant4.web.cern.ch/' +description = """Datasets for Geant4.""" + +toolchain = SYSTEM + +# Pick up the correct sets and versions from cmake/Modules/G4DatasetDefinitions.cmake +# in the Geant source, +# see also https://github.com/Geant4/geant4/blob/v11.2.2/cmake/Modules/G4DatasetDefinitions.cmake +local_datasets = [ + ('G4NDL', '4.7.1', 'G4NDL', 'G4NEUTRONHPDATA'), # NDL + ('G4EMLOW', '8.5', 'G4EMLOW', 'G4LEDATA'), # Low energy electromagnetics + ('PhotonEvaporation', '5.7', 'G4PhotonEvaporation', 'G4LEVELGAMMADATA'), # Photon evaporation + ('RadioactiveDecay', '5.6', 'G4RadioactiveDecay', 'G4RADIOACTIVEDATA'), # Radioisotopes + ('G4SAIDDATA', '2.0', 'G4SAIDDATA', 'G4SAIDXSDATA'), # SAID + ('G4PARTICLEXS', '4.0', 'G4PARTICLEXS', 'G4PARTICLEXSDATA'), # Particle XS - replaces Neutron XS + ('G4PII', '1.3', 'G4PII', 'G4PIIDATA'), # PII + ('RealSurface', '2.2', 'G4RealSurface', 'G4REALSURFACEDATA'), # Optical Surfaces + ('G4ABLA', '3.3', 'G4ABLA', 'G4ABLADATA'), # ABLA + ('G4INCL', '1.2', 'G4INCL', 'G4INCLDATA'), # INCL + ('G4ENSDFSTATE', '2.3', 'G4ENSDFSTATE', 'G4ENSDFSTATEDATA'), # ENSDFSTATE + ('G4TENDL', '1.4', 'G4TENDL', 'G4PARTICLEHPDATA'), # TENDL +] + +source_urls = ['https://cern.ch/geant4-data/datasets'] +sources = ['%s.%s.tar.gz' % (x[2], x[1]) for x in local_datasets] +checksums = [ + {'G4NDL.4.7.1.tar.gz': 'd3acae48622118d2579de24a54d533fb2416bf0da9dd288f1724df1485a46c7c'}, + {'G4EMLOW.8.5.tar.gz': '66baca49ac5d45e2ac10c125b4fb266225e511803e66981909ce9cd3e9bcef73'}, + {'G4PhotonEvaporation.5.7.tar.gz': '761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5'}, + {'G4RadioactiveDecay.5.6.tar.gz': '3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1'}, + {'G4SAIDDATA.2.0.tar.gz': '1d26a8e79baa71e44d5759b9f55a67e8b7ede31751316a9e9037d80090c72e91'}, + {'G4PARTICLEXS.4.0.tar.gz': '9381039703c3f2b0fd36ab4999362a2c8b4ff9080c322f90b4e319281133ca95'}, + {'G4PII.1.3.tar.gz': '6225ad902675f4381c98c6ba25fc5a06ce87549aa979634d3d03491d6616e926'}, + {'G4RealSurface.2.2.tar.gz': '9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820'}, + {'G4ABLA.3.3.tar.gz': '1e041b3252ee9cef886d624f753e693303aa32d7e5ef3bba87b34f36d92ea2b1'}, + {'G4INCL.1.2.tar.gz': 'f880b16073ee0a92d7494f3276a6d52d4de1d3677a0d4c7c58700396ed0e1a7e'}, + {'G4ENSDFSTATE.2.3.tar.gz': '9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203'}, + {'G4TENDL.1.4.tar.gz': '4b7274020cc8b4ed569b892ef18c2e088edcdb6b66f39d25585ccee25d9721e0'}, +] + +start_dir = '..' + +modextrapaths = {x[3]: x[0] + x[1] for x in local_datasets} + +sanity_check_paths = { + 'files': [], + 'dirs': [x[0] + x[1] for x in local_datasets], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb b/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb new file mode 100644 index 00000000000..d4cdf6c78cb --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb @@ -0,0 +1,48 @@ +name = 'Geant4' +version = '11.2.2' + +homepage = 'https://geant4.web.cern.ch/' +description = """Geant4 is a toolkit for the simulation of the passage of particles through matter. + Its areas of application include high energy, nuclear and accelerator physics, + as well as studies in medical and space science.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'Geant4' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = [ + 'Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch', +] +checksums = [ + {'geant4-11.2.2.tar.gz': '0b0cfce14e9143079c4440d27ee21f889c4c4172ac5ee7586746b940ffcf812a'}, + {'Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch': + '822265b7cbcaacdffd28b1094786a3c94122aff63338e514d5d3810cdf9218a6'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('expat', '2.5.0'), + # recommended CLHEP version, see https://geant4.web.cern.ch/download/release-notes/notes-v11.1.0.html + ('CLHEP', '2.4.7.1'), + ('Xerces-C++', '3.2.4'), + ('Qt5', '5.15.10'), + ('Geant4-data', '11.2', '', SYSTEM), +] + +_copts = [ + "-DGEANT4_INSTALL_DATA=OFF", + "-DGEANT4_USE_SYSTEM_ZLIB=ON", + "-DGEANT4_USE_SYSTEM_EXPAT=ON", + "-DGEANT4_USE_SYSTEM_CLHEP=ON", + "-DGEANT4_USE_QT=ON", + "-DGEANT4_USE_GDML=ON", + "-DGEANT4_USE_OPENGL_X11=ON", + "-DGEANT4_USE_RAYTRACER_X11=ON", +] +configopts = ' '.join(_copts) + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..174aec3f515 --- /dev/null +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb @@ -0,0 +1,58 @@ +easyblock = 'ConfigureMake' + +name = 'Ghostscript' +version = '10.03.1' + +homepage = 'https://ghostscript.com' +description = """Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to + different targets. It used to be part of the cups printing stack, but is no longer used for that.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs%s/' % version.replace('.', ''), +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['31cd01682ad23a801cc3bbc222a55f07c4ea3e068bdfb447792d54db21a2e8ad'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('libpng', '1.6.43'), + ('freetype', '2.13.2'), + ('libjpeg-turbo', '3.0.1'), + ('expat', '2.6.2'), + ('GLib', '2.80.4'), + ('cairo', '1.18.0'), + ('LibTIFF', '4.6.0'), +] + +# Do not use local copies of zlib, jpeg, freetype, and png +preconfigopts = 'mv zlib zlib.no && mv jpeg jpeg.no && mv freetype freetype.no && ' +preconfigopts += 'mv libpng libpng.no && export LIBS="$LIBS -L$EBROOTZLIB/lib -lz" && ' +configopts = "--with-system-libtiff --enable-dynamic --disable-hidden-visibility" + +# also build and install shared libs +build_cmd_targets = ['', 'so'] +installopts = 'soinstall' + +postinstallcmds = [ + # install header files + "mkdir -p %(installdir)s/include/%(namelower)s", + "install -v -m644 base/*.h %(installdir)s/include/%(namelower)s", + "install -v -m644 psi/*.h %(installdir)s/include/%(namelower)s", +] + +sanity_check_paths = { + 'files': ['bin/gs', 'lib/libgs.%s' % SHLIB_EXT], + 'dirs': ['lib/%(namelower)s', 'include/%(namelower)s', 'share/man'], +} + +sanity_check_commands = ["gs --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e6ca0d7b0aa --- /dev/null +++ b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonBundle' + +name = 'GitPython' +version = '3.1.43' + +homepage = 'https://gitpython.readthedocs.org' +description = """ GitPython is a python library used to interact with Git repositories """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('git', '2.45.1'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('smmap', '5.0.1', {'checksums': ['dceeb6c0028fdb6734471eb07c0cd2aae706ccaecab45965ee83f11c8d3b1f62']}), + ('gitdb', '4.0.11', {'checksums': ['bf5421126136d6d0af55bc1e7c1af1c397a34f5b7bd79e776cd3e89785c2b04b']}), + (name, version, { + 'modulename': 'git', + 'checksums': ['35f314a9f878467f5453cc1fee295c3e18e52f1b99f10f6cf5b1682e968a9e7c'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..eba4233b57f --- /dev/null +++ b/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +easyblock = 'MakeCp' + +name = 'gffread' +version = '0.12.7' + +homepage = 'https://ccb.jhu.edu/software/stringtie/gff.shtml#gffread' +description = """GFF/GTF parsing utility providing format conversions, +region filtering, FASTA sequence extraction and more.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/gpertea/%(namelower)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['bfde1c857495e578f5b3af3c007a9aa40593e69450eafcc6a42c3e8ef08ed1f5'] + +builddependencies = [('binutils', '2.40')] + +buildopts = " release" + +files_to_copy = [ + (['%(name)s'], 'bin'), + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [] +} + +sanity_check_commands = ['%(name)s'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d8db77830fe --- /dev/null +++ b/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'giflib' +version = '5.2.2' + +homepage = 'http://giflib.sourceforge.net/' +description = """giflib is a library for reading and writing gif images. +It is API and ABI compatible with libungif which was in wide use while +the LZW compression algorithm was patented.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['be7ffbd057cadebe2aa144542fd90c6838c6a083b5e8a9048b8ee3b66b29d5fb'] + +builddependencies = [ + ('binutils', '2.42'), + ('ImageMagick', '7.1.1-38'), +] + +skipsteps = ['configure'] + +installopts = 'PREFIX=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/giftool'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb index 2e2696826f6..0e64dba099a 100644 --- a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb @@ -16,6 +16,7 @@ dependencies = [ ('GHC', '9.2.2', '-x86_64', SYSTEM), ('Stack', '2.11.1', '-x86_64', SYSTEM), ('git', '2.38.1', '-nodocs'), + ('libnsl', '2.0.0'), ] sources = [{ @@ -29,7 +30,7 @@ sources = [{ checksums = [None] -prebuildopts = "stack setup && stack build && " +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" files_to_copy = [ diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb index 6b6af7f9eba..d21f13320b1 100644 --- a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb @@ -18,6 +18,7 @@ dependencies = [ ('GHC', '9.4.6', '-x86_64', SYSTEM), ('Stack', '2.13.1', '-x86_64', SYSTEM), ('git', '2.41.0', '-nodocs'), + ('libnsl', '2.0.1'), ] sources = [{ @@ -31,7 +32,7 @@ sources = [{ checksums = [None] -prebuildopts = "stack setup && stack build && " +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" files_to_copy = [ diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb index 89c70af2f45..9701f4ce94d 100644 --- a/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb @@ -18,6 +18,7 @@ dependencies = [ ('GHC', '9.10.1', '-x86_64', SYSTEM), ('Stack', '3.1.1', '-x86_64', SYSTEM), ('git', '2.45.1'), + ('libnsl', '2.0.1'), ] sources = [{ @@ -31,7 +32,7 @@ sources = [{ checksums = [None] -prebuildopts = "stack setup && stack build && " +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" files_to_copy = [ diff --git a/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb b/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb new file mode 100644 index 00000000000..bb76dc1e937 --- /dev/null +++ b/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb @@ -0,0 +1,78 @@ +## +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Nils Christian , +# Fotis Georgatos +# Updated by: Filip Kružík (INUITS) +# 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 = 'HMMER' +version = '3.4' + +homepage = 'http://hmmer.org/' +description = """HMMER is used for searching sequence databases for homologs + of protein sequences, and for making protein sequence alignments. It + implements methods using probabilistic models called profile hidden Markov + models (profile HMMs). Compared to BLAST, FASTA, and other sequence + alignment and database search tools based on older scoring methodology, + HMMER aims to be significantly more accurate and more able to detect remote + homologs because of the strength of its underlying mathematical models. In the + past, this strength came at significant computational expense, but in the new + HMMER3 project, HMMER is now essentially as fast as BLAST.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +source_urls = [ + 'http://eddylab.org/software/hmmer/', + 'http://eddylab.org/software/hmmer%(version_major)s/%(version)s/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ca70d94fd0cf271bd7063423aabb116d42de533117343a9b27a65c17ff06fbf3'] + +builddependencies = [ + ('Python', '3.11.5'), + ('Perl', '5.38.0'), +] + +# replace hardcoded /usr/bin/perl shebang lines with '/usr/bin/env perl' across all files +preconfigopts = "grep '/usr/bin/perl' . | cut -f1 -d: | xargs echo sed -i 's@/usr/bin/perl@/usr/bin/env perl@g' && " + +configopts = '--enable-mpi' + +buildopts = ' V=1 ' + +testopts = buildopts +runtest = 'check' + +installopts = ' && cd easel && make install' + +local_bin_files = ['alimask', 'esl-afetch', 'esl-alimanip', 'esl-alimap', 'esl-alimask', + 'esl-alimerge', 'esl-alipid', 'esl-alirev', 'esl-alistat', 'esl-compalign', + 'esl-compstruct', 'esl-construct', 'esl-histplot', 'esl-mask', 'esl-reformat', + 'esl-selectn', 'esl-seqrange', 'esl-seqstat', 'esl-sfetch', 'esl-shuffle', + 'esl-ssdraw', 'esl-translate', 'esl-weight', 'hmmalign', 'hmmbuild', + 'hmmconvert', 'hmmemit', 'hmmfetch', 'hmmlogo', 'hmmpgmd', 'hmmpress', + 'hmmscan', 'hmmsearch', 'hmmsim', 'hmmstat', 'jackhmmer', 'makehmmerdb', + 'nhmmer', 'nhmmscan', 'phmmer'] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in local_bin_files], + 'dirs': ['bin', 'share'], +} + +sanity_check_commands = [ + "esl-construct -h", + "hmmsearch -h", + "nhmmer -h", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..40540c3fcdc --- /dev/null +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'HarfBuzz' +version = '9.0.0' + +homepage = 'https://www.freedesktop.org/wiki/Software/HarfBuzz' +description = """HarfBuzz is an OpenType text shaping engine.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'harfbuzz' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +patches = ['HarfBuzz-9.0.0_fix-subset-test.patch'] +checksums = [ + {'9.0.0.tar.gz': 'b7e481b109d19aefdba31e9f5888aa0cdfbe7608fed9a43494c060ce1f8a34d2'}, + {'HarfBuzz-9.0.0_fix-subset-test.patch': '1635505c27c312dca507863f2a865eb88d42e35ff4cc241cfa0e90c0ade8b790'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('GObject-Introspection', '1.80.1'), + ('pkgconf', '2.2.0'), + ('Ninja', '1.12.1'), + ('Meson', '1.4.0'), + ('fonttools', '4.53.1'), # For tests +] + +dependencies = [ + ('GLib', '2.80.4'), + ('ICU', '75.1'), + ('cairo', '1.18.0'), + ('freetype', '2.13.2'), +] + +configopts = '--default-library=both' # static and shared library +configopts += ' -Dgobject=enabled -Dintrospection=enabled' +configopts += ' -Dglib=enabled' +configopts += ' -Dicu=enabled' +configopts += ' -Dcairo=enabled' +configopts += ' -Dfreetype=enabled' + +runtest = 'meson' +testopts = 'test -C %(builddir)s/easybuild_obj -t 60' + +sanity_check_paths = { + 'files': ['lib/libharfbuzz.%s' % SHLIB_EXT, 'bin/hb-view'], + 'dirs': [] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch new file mode 100644 index 00000000000..25a2b619fc8 --- /dev/null +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch @@ -0,0 +1,26 @@ +The test "feature_variation_instance_collect_lookups" fails when run in environments +where the decimal separator is not a dot ("."). +Fix this by using the C locale. +See https://github.com/harfbuzz/harfbuzz/pull/4857 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/subset/run-tests.py b/test/subset/run-tests.py +index 9e09d95d1d9..c0c256d8974 100755 +--- a/test/subset/run-tests.py ++++ b/test/subset/run-tests.py +@@ -135,10 +135,13 @@ def check_ots (path): + + has_ots = has_ots() + ++env = os.environ.copy() ++env['LC_ALL'] = 'C' + process = subprocess.Popen ([hb_subset, '--batch'], + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, +- stderr=sys.stdout) ++ stderr=sys.stdout, ++ env=env) + + fails = 0 + for path in args: diff --git a/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb b/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb new file mode 100644 index 00000000000..f2072785aa5 --- /dev/null +++ b/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb @@ -0,0 +1,84 @@ +easyblock = 'JuliaBundle' + +name = 'IJulia' +version = '1.24.2' +_julia_ver = '1.10.3' +versionsuffix = "-Julia-%s" % _julia_ver + +homepage = 'https://github.com/JuliaLang/IJulia.jl' +description = "Julia kernel for Jupyter" + +toolchain = SYSTEM + +dependencies = [ + ('Julia', _julia_ver, '-linux-%s' % ARCH, SYSTEM), +] + +exts_list = [ + ('Preferences', '1.4.3', { + 'source_urls': ['https://github.com/JuliaPackaging/Preferences.jl/archive/'], + 'checksums': ['02b995891818b91266f98bcb46eefc513dfb66b177b5a6a0d1cff97be3e4582d'], + }), + ('JLLWrappers', '1.5.0', { + 'source_urls': ['https://github.com/JuliaPackaging/JLLWrappers.jl/archive/'], + 'checksums': ['6e83b81afd0c57636e80bcf52ad51f6ba43d98643cac999727b958d9ab3d4a01'], + }), + ('SnoopPrecompile', '2.10.8', { + 'source_urls': ['https://github.com/timholy/SnoopCompile.jl/archive/'], + 'start_dir': '%(name)s', + 'checksums': ['9b3204ce72fa3d0f1a359428e9f2ae43db2ee91f7ba77407056aced39d74d9d6'], + }), + ('PrecompileTools', '1.2.1', { + 'source_urls': ['https://github.com/JuliaLang/PrecompileTools.jl/archive/'], + 'checksums': ['af58b384e08b488b2da5ad19e72817b8b0ddb026997f8cf85f2964cc2c26cd34'], + }), + ('Parsers', '2.8.1', { + 'source_urls': ['https://github.com/JuliaData/Parsers.jl/archive/'], + 'checksums': ['6ea035be48ef5daaecdff62ac8f29c6110aaf20f3349058a4f96e2503f55b693'], + }), + ('JSON', '0.21.4', { + 'source_urls': ['https://github.com/JuliaIO/JSON.jl/archive/'], + 'checksums': ['c6b620ad4150ec5a154367f50c9579af800e3a89a6d8f9cb5dd30215a5d3f552'], + }), + ('MbedTLS', '1.1.9', { + 'source_urls': ['https://github.com/JuliaLang/MbedTLS.jl/archive/'], + 'checksums': ['d421bb36f9eb7f8840bd7108c2c33a9a5532454ac9465861e2f7797f89c1f56b'], + }), + ('VersionParsing', '1.3.0', { + 'source_urls': ['https://github.com/JuliaInterop/VersionParsing.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('Conda', '1.10.0', { + 'source_urls': ['https://github.com/JuliaPy/Conda.jl/archive/'], + 'checksums': ['2007170cad58d6f27626500abd52bd782023b8ecb7a7d05a678d7aec3c0f9948'], + }), + ('SoftGlobalScope', '1.1.0', { + 'source_urls': ['https://github.com/stevengj/SoftGlobalScope.jl/archive/'], + 'checksums': ['8d4264386c859403938498cd9ddd5e94e10181deba4a3e71d391b16750e3848b'], + }), + ('libsodium_jll', '1.0.20+0', { + 'source_urls': ['https://github.com/JuliaBinaryWrappers/libsodium_jll.jl/archive/'], + 'sources': [{'filename': 'libsodium-v%(version)s.tar.gz'}], + 'checksums': ['f7c3a17acc3a478ec10a4a49a0dd04694140f4483644ec9db638706ea9844aba'], + }), + ('ZeroMQ_jll', '4.3.5+0', { + 'source_urls': ['https://github.com/JuliaBinaryWrappers/ZeroMQ_jll.jl/archive/'], + 'sources': [{'filename': 'ZeroMQ-v%(version)s.tar.gz'}], + 'checksums': ['29d1f35e48c1436743a6da28518cb7aeccb32af4b439c3976df1967c6a252e87'], + }), + ('ZMQ', '1.2.4', { + 'source_urls': ['https://github.com/JuliaInterop/ZMQ.jl/archive/'], + 'checksums': ['a15fe752d2b049ad7521d03909ae8ad6c28e4cf46fc823f666cbc1cc6f5795ba'], + }), + (name, version, { + 'preinstallopts': "mkdir -p %(installdir)s/jupyter && export JUPYTER_DATA_DIR=%(installdir)s/jupyter && ", + 'source_urls': ['https://github.com/JuliaLang/IJulia.jl/archive/'], + 'checksums': ['de215348c7c41e1ca15c0d21f5f9a78bedce77b02ef89d67f38702c4d57ee80d'], + }), +] + +modextrapaths = { + 'JUPYTER_PATH': 'jupyter', +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1e79d2b10db --- /dev/null +++ b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'ConfigureMake' + +name = 'ISA-L' +version = '2.31.0' + +homepage = 'https://github.com/intel/isa-l' +description = "Intelligent Storage Acceleration Library" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'intel' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['e218b7b2e241cfb8e8b68f54a6e5eed80968cc387c4b1af03708b54e9fb236f1'] + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [('NASM', '2.16.03')] + +preconfigopts = "autoreconf -i -f &&" + +runtest = 'check' + +local_bins = ['bin/igzip'] +local_includes = ['include/%(namelower)s.h'] +local_includes += ['include/isa-l/%s.h' % i for i in ['crc64', 'crc', 'erasure_code', 'gf_vect_mul', 'igzip_lib', + 'mem_routines', 'raid', 'test']] +local_libs = ['lib/libisal.%s' % k for k in ['a', 'la', SHLIB_EXT]] + +sanity_check_paths = { + 'files': local_bins + local_includes + local_libs, + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = [ + "igzip --help", + "igzip --version", +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..776471b14b2 --- /dev/null +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'ConfigureMake' + +name = 'ImageMagick' +version = '7.1.1-38' + +homepage = 'https://www.imagemagick.org/' +description = "ImageMagick is a software suite to create, edit, compose, or convert bitmap images" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(name)s/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['ImageMagick-7.1.1-38_fix-linking.patch'] +checksums = [ + {'7.1.1-38.tar.gz': '5e449530ccec8b85ae2bfd1ad773184fb7a4737d40fd9439db8a5d4beee4403e'}, + {'ImageMagick-7.1.1-38_fix-linking.patch': '0fbe8e3b6621e3e0d1efec59949fecb45924bc6e65851b9b6399bb3eff8d55d9'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('bzip2', '1.0.8'), + ('X11', '20240607'), + ('Ghostscript', '10.03.1'), + ('JasPer', '4.2.4'), + ('libjpeg-turbo', '3.0.1'), + ('LibTIFF', '4.6.0'), + ('LittleCMS', '2.16'), + ('Pango', '1.54.0'), + ('pixman', '0.43.4'), + ('FriBidi', '1.0.15'), +] + +preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' +configopts = "--with-gslib --with-x" + +sanity_check_paths = { + 'files': ['bin/magick'], + 'dirs': ['etc/%(name)s-%(version_major)s', 'include/%(name)s-%(version_major)s', 'lib', 'share'], +} + +sanity_check_commands = [ + 'magick --help', +] + +modextravars = {'MAGICK_HOME': '%(installdir)s'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch new file mode 100644 index 00000000000..2c9d54a4ac0 --- /dev/null +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch @@ -0,0 +1,27 @@ +The configure script sets this to a path inside the install location which is empty during build. +However this path(s) is/are used by the compiler/linker to find libraries. `pkg-config` used during configure assumes this is the same during build as on invocation of itself and omits any path already contained in the variable. + +This combination causes build failures due to dependent libraries not being found in the link step unless there happens to be some other way the paths get pulled in. E.g. if HarfBuzz is built using (the deprecated) configure&make it has `*.la` files which contain the required link flags. If HarfBuzz is built using the new Meson build system those files are no longer present and the linker paths will be missing. + +As there doesn't seem to be a specific reason for the variable to be set to an empty directory in the Makefile just remove it. + +See https://github.com/ImageMagick/ImageMagick/pull/7613 + +Author: Alexander Grund (TU Dresden) + +--- + Makefile.in | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index 47b78566f0c..3a9761cfd5b 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -3288,7 +3288,6 @@ LIBOBJS = @LIBOBJS@ + LIBOPENJP2_CFLAGS = @LIBOPENJP2_CFLAGS@ + LIBOPENJP2_LIBS = @LIBOPENJP2_LIBS@ + LIBRARY_EXTRA_CPPFLAGS = @LIBRARY_EXTRA_CPPFLAGS@ +-LIBRARY_PATH = @LIBRARY_PATH@ + LIBS = @LIBS@ + LIBSTDCLDFLAGS = @LIBSTDCLDFLAGS@ + LIBTOOL = @LIBTOOL@ diff --git a/easybuild/easyconfigs/j/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..14ce45ca6ad --- /dev/null +++ b/easybuild/easyconfigs/j/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'JasPer' +version = '4.2.4' + +homepage = 'https://www.ece.uvic.ca/~frodo/jasper/' + +description = """ + The JasPer Project is an open-source initiative to provide a free + software-based reference implementation of the codec specified in + the JPEG-2000 Part-1 standard. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'jasper-software' +source_urls = [GITHUB_SOURCE] +sources = ['version-%(version)s.tar.gz'] +checksums = ['23a3d58cdeacf3abdf9fa1d81dcefee58da6ab330940790c0f27019703bfd2cd'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = '-DJAS_ENABLE_DOC=OFF ' + +sanity_check_paths = { + 'files': ['bin/jasper', ('lib/libjasper.%s' % SHLIB_EXT, 'lib64/libjasper.%s' % SHLIB_EXT)], + 'dirs': ['include'], +} + +sanity_check_commands = ['jasper --version'] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.3-linux-x86_64.eb new file mode 100644 index 00000000000..599edfd33ea --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.3-linux-x86_64.eb @@ -0,0 +1,30 @@ +easyblock = 'Tarball' + +name = 'Julia' +version = '1.10.3' +versionsuffix = '-linux-x86_64' + +homepage = 'https://julialang.org' +description = "Julia is a high-level, high-performance dynamic programming language for numerical computing" + +toolchain = SYSTEM + +source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.3-linux-x86_64.tar.gz': '81b910c922fff0e27ae1f256f2cc803db81f3960215281eddd2d484721928c70'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] + +sanity_check_paths = { + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] +} + +sanity_check_commands = ['julia --help'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb b/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb new file mode 100644 index 00000000000..db6e77ea520 --- /dev/null +++ b/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb @@ -0,0 +1,28 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'joypy' +version = '0.2.6' + +homepage = 'https://github.com/sbebo/joypy' +description = "Joyplots in Python with matplotlib & pandas" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_WHL] +checksums = ['fffe882e8281e56e08b374a3148436cb448562ba39e4d566204c7e8ee2caddab'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb new file mode 100644 index 00000000000..03dceec3b87 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb @@ -0,0 +1,32 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'json-fortran' +version = '9.0.2' + +homepage = 'https://github.com/jacobwilliams/json-fortran' +description = "JSON-Fortran: A Modern Fortran JSON API" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['a599a77e406e59cdb7672d780e69156b6ce57cb8ce515d21d1744c4065a85976'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..f0d3a361152 --- /dev/null +++ b/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeNinja' + +name = 'LDC' +version = '1.39.0' + +homepage = 'https://wiki.dlang.org/LDC' +description = "The LLVM-based D Compiler" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/ldc-developers/ldc/releases/download/v%(version)s'] +sources = ['ldc-%(version)s-src.tar.gz'] +checksums = ['839bac36f6073318e36f0b163767e03bdbd3f57d99256b97494ac439b59a4562'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), + # building LDC from source requires LDC + ('LDC', '1.24.0', '-%(arch)s', SYSTEM), +] + +dependencies = [ + ('LLVM', '16.0.6'), +] + +configopts = "-DLLVM_ROOT_DIR=$EBROOTLLVM" + +sanity_check_paths = { + 'files': ['bin/ldc2', 'bin/ldmd2'], + 'dirs': ['include/d', 'lib'], +} + +sanity_check_commands = [ + "ldc2 --help", + "ldmd2 --help", +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ee92fb98c62 --- /dev/null +++ b/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'Leptonica' +version = '1.84.1' + +homepage = 'http://www.leptonica.org' +description = """Leptonica is a collection of pedagogically-oriented open source software + that is broadly useful for image processing and image analysis applications.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/DanBloomberg/leptonica/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2b3e1254b1cca381e77c819b59ca99774ff43530209b9aeb511e1d46588a64f6'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('libpng', '1.6.39'), + ('LibTIFF', '4.5.0'), + ('libjpeg-turbo', '2.1.5.1'), + ('giflib', '5.2.1'), + ('libwebp', '1.3.1'), + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['bin/convertformat'], + 'dirs': ['include/leptonica', 'lib/pkgconfig'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8a01a3ac439 --- /dev/null +++ b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'MesonNinja' + +name = 'libGLU' +version = '9.0.3' + +homepage = 'https://mesa.freedesktop.org/archive/glu/' +description = """The OpenGL Utility Library (GLU) is a computer graphics library for OpenGL. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://mesa.freedesktop.org/archive/glu/'] +sources = ['glu-%(version)s.tar.xz'] +checksums = ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), + ('Ninja', '1.12.1'), + ('Meson', '1.4.0'), +] + +dependencies = [('Mesa', '24.1.3')] + +sanity_check_paths = { + 'files': ['lib/libGLU.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb new file mode 100644 index 00000000000..e0e689460f9 --- /dev/null +++ b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'libmbd' +version = '0.12.6' + +homepage = 'https://libmbd.github.io/index.html' +description = """ +Libmbd implements the many-body dispersion (MBD) method in several programming languages and frameworks: + + - The Fortran implementation is the reference, most advanced implementation, with support for analytical + gradients and distributed parallelism, and additional functionality beyond the MBD method itself. + It provides a low-level and a high-level Fortran API, as well as a C API. Furthermore, Python bindings + to the C API are provided. + - The Python/Numpy implementation is intended for prototyping, and as a high-level language reference. + - The Python/Tensorflow implementation is an experiment that should enable rapid prototyping of machine + learning applications with MBD. + +The Python-based implementations as well as Python bindings to the Libmbd C API are accessible from the +Python package called Pymbd. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'libmbd' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['9f8154b6b2f57e78a8e33d3b315a244185e8e5ecb03661a469808af7512e761e'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('ELSI', '2.9.1', '-PEXSI'), +] + +# build scripts expect either a git repo or a defined version string in a file +_versiontag_file = '%(builddir)s/%(name)s-%(version)s/cmake/LibmbdVersionTag.cmake' +preconfigopts = "echo 'set(VERSION_TAG \"%%(version)s\")' > %s && " % _versiontag_file + +configopts = "-DENABLE_SCALAPACK_MPI=ON -DENABLE_ELSI=ON " +configopts += "-DMPIEXEC_MAX_NUMPROCS=1 " # number of procs in the tests + +# make sure that built libraries (libmbd.so) in build directory are picked when running tests +# this is required when RPATH linking is used +pretestopts = "export LD_LIBRARY_PATH=%(builddir)s/easybuild_obj:$LD_LIBRARY_PATH && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libmbd.%s' % SHLIB_EXT, 'include/mbd/mbd.h', 'include/mbd/mbd.mod'], + 'dirs': ['lib/cmake/mbd'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb new file mode 100644 index 00000000000..260ecb98ddb --- /dev/null +++ b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'libmbd' +version = '0.12.6' + +homepage = 'https://libmbd.github.io/index.html' +description = """ +Libmbd implements the many-body dispersion (MBD) method in several programming languages and frameworks: + + - The Fortran implementation is the reference, most advanced implementation, with support for analytical + gradients and distributed parallelism, and additional functionality beyond the MBD method itself. + It provides a low-level and a high-level Fortran API, as well as a C API. Furthermore, Python bindings + to the C API are provided. + - The Python/Numpy implementation is intended for prototyping, and as a high-level language reference. + - The Python/Tensorflow implementation is an experiment that should enable rapid prototyping of machine + learning applications with MBD. + +The Python-based implementations as well as Python bindings to the Libmbd C API are accessible from the +Python package called Pymbd. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'libmbd' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['9f8154b6b2f57e78a8e33d3b315a244185e8e5ecb03661a469808af7512e761e'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ELSI', '2.11.0', '-PEXSI'), +] + +# build scripts expect either a git repo or a defined version string in a file +_versiontag_file = '%(builddir)s/%(name)s-%(version)s/cmake/LibmbdVersionTag.cmake' +preconfigopts = "echo 'set(VERSION_TAG \"%%(version)s\")' > %s && " % _versiontag_file + +configopts = "-DENABLE_SCALAPACK_MPI=ON -DENABLE_ELSI=ON " +configopts += "-DMPIEXEC_MAX_NUMPROCS=1 " # number of procs in the tests + +# make sure that built libraries (libmbd.so) in build directory are picked when running tests +# this is required when RPATH linking is used +pretestopts = "export LD_LIBRARY_PATH=%(builddir)s/easybuild_obj:$LD_LIBRARY_PATH && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libmbd.%s' % SHLIB_EXT, 'include/mbd/mbd.h', 'include/mbd/mbd.mod'], + 'dirs': ['lib/cmake/mbd'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..818f1687a15 --- /dev/null +++ b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'libnsl' +version = '2.0.1' + +homepage = 'https://github.com/thkukuk/libnsl' +description = """The libnsl package contains the public client interface for NIS(YP).""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/thkukuk/%(name)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['5c9e470b232a7acd3433491ac5221b4832f0c71318618dc6aa04dd05ffcd8fd9'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('libtirpc', '1.3.5'), +] + +# Provide a symlink for libnsl.so.1, which used to be part of glibc. +# This new version of libnsl should be backwards compatible. +postinstallcmds = ['ln -s libnsl.so %(installdir)s/lib/libnsl.so.1'] + +sanity_check_paths = { + 'files': ['include/rpcsvc/yp.h', 'lib/libnsl.a', + 'lib/libnsl.%s' % SHLIB_EXT, 'lib/libnsl.%s.1' % SHLIB_EXT], + 'dirs': ['include'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb b/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb index 444e2ba800d..c26fed6c2e3 100644 --- a/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb +++ b/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb @@ -27,7 +27,6 @@ use_pip = True exts_list = [ ('soxr', '0.3.7', { - 'preinstallopts': 'python -m build && ', 'checksums': ['436ddff00c6eb2c75b79c19cfdca7527b1e31b5fad738652f044045ba6258593'], }), ('audioread', '3.0.1', { diff --git a/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a9fc2a5d749 --- /dev/null +++ b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'libtirpc' +version = '1.3.5' + +homepage = 'https://sourceforge.net/projects/libtirpc/' +description = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_BZ2] +checksums = ['9b31370e5a38d3391bf37edfa22498e28fe2142467ae6be7a17c9068ec0bf12f'] + +configopts = '--enable-static --enable-shared --disable-gssapi' + +builddependencies = [ + ('binutils', '2.42') +] + +sanity_check_paths = { + 'files': ['lib/libtirpc.%s' % (x,) for x in ['a', SHLIB_EXT]], + 'dirs': ['include/tirpc', 'lib'], +} + +modextrapaths = {'CPATH': 'include/tirpc'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb b/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb new file mode 100644 index 00000000000..5b4aedbdadb --- /dev/null +++ b/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb @@ -0,0 +1,64 @@ +easyblock = 'Bundle' + +name = 'MOKIT' +version = '1.2.6_20240830' +_commit = 'd66560a6a7926e5e21b45cbcc9213aaa26bd997d' + +homepage = 'https://github.com/1234zou/MOKIT' +description = """ +MOKIT offers various utilities and modules to transfer MOs among various quantum chemistry software packages.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} +toolchainopts = {'openmp': True} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +_makefile = 'Makefile.gnu_openblas_conda' +maxparallel = 1 + +default_component_specs = { + 'source_urls': ['https://github.com/1234zou/MOKIT/archive'], + 'checksums': ['b4e7224ac5b56e6d0116f7759a3017c57d527b1d35c32e3b2733904f7f7c4de5'], + 'sources': [{ + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }], +} + +components = [ + (name, version, { + 'easyblock': 'MakeCp', + 'start_dir': 'MOKIT-%s/src' % _commit, + 'prebuildopts': 'sed -i -e "s/^MKL_FLAGS.*/MKL_FLAGS = $LIBBLAS/" %s && ' % _makefile, + 'buildopts': 'all -f %s' % _makefile, + 'files_to_copy': ['../bin'], + }), + ('mokit', version, { + 'easyblock': 'PythonPackage', + 'start_dir': 'MOKIT-%s' % _commit, + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'options': {'modulename': 'mokit'}, + }), +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = [ + 'fch2inp | grep Example', + 'geom_opt | grep Example', + "python -s -c 'from mokit.lib.gaussian import load_mol_from_fch'", +] + +sanity_check_paths = { + 'files': ['bin/geom_opt', 'bin/fch2inp'], + 'dirs': ['lib/python3.11/site-packages/mokit'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb b/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb new file mode 100644 index 00000000000..2b2b2185ecc --- /dev/null +++ b/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb @@ -0,0 +1,21 @@ +name = 'MPICH' +version = '4.2.2' + +homepage = 'https://www.mpich.org/' +description = """MPICH is a high-performance and widely portable implementation +of the Message Passing Interface (MPI) standard (MPI-1, MPI-2 and MPI-3).""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://www.mpich.org/static/downloads/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['883f5bb3aeabf627cb8492ca02a03b191d09836bbe0f599d8508351179781d41'] + +dependencies = [ + ('UCX', '1.16.0'), +] + +configopts = 'FFLAGS="-w -fallow-argument-mismatch -O2" --with-devices=ch4:ucx --with-ucx=$EBROOTUCX' + + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/m/Markdown/Markdown-3.7-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/Markdown/Markdown-3.7-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..04b5629d6bf --- /dev/null +++ b/easybuild/easyconfigs/m/Markdown/Markdown-3.7-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'Markdown' +version = '3.7' + +homepage = 'https://python-markdown.github.io/' +description = """This is a Python implementation of John Gruber's Markdown. +It is almost completely compliant with the reference implementation, though there are a few known issues. +Additional features are supported by the Available Extensions. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2ae2471477cfd02dbbf038d5d9bc226d40def84b4fe2986e49b59b6b472bbed2'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb index 4587e8e91df..ff224b45ba2 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb @@ -62,9 +62,7 @@ sanity_check_paths = { 'dirs': ['libexec'], } -sanity_check_commands = [ - 'python %(installdir)s/bin/runMantaWorkflowDemo.py' -] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb index 8e5943d0213..2d6c80a9b71 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb @@ -41,7 +41,7 @@ sanity_check_paths = { 'dirs': ['lib/python', 'share'], } -sanity_check_commands = ['runMantaWorkflowDemo.py'] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb index 0b2b3af8477..7633e9131e0 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb @@ -41,7 +41,7 @@ sanity_check_paths = { 'dirs': ['lib/python', 'share'], } -sanity_check_commands = ['runMantaWorkflowDemo.py'] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..e8ec2b8435d --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'mctc-lib' +version = '0.3.1' + +homepage = 'https://grimme-lab.github.io/mctc-lib' +description = """Common tool chain for working with molecular structure data in various +applications. This library provides a unified way to perform operations on +molecular structure data, like reading and writing to common geometry file +formats.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('json-fortran', '9.0.2'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/mctc-convert', 'lib/libmctc-lib.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mctc-convert --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-12.3.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..a609b4e373b --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-12.3.0.eb @@ -0,0 +1,37 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'mstore' +version = '0.3.0' + +homepage = 'https://github.com/grimme-lab/mstore' +description = """Molecular structure store for testing""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['56b3d778629eb74b8a515cd53c727d04609f858a07f8d3555fd5fd392a206dcc'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/mstore-fortranize', 'bin/mstore-info', 'lib/libmstore.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mstore-info --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.eb new file mode 100644 index 00000000000..b4ccfa2544f --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.eb @@ -0,0 +1,39 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'multicharge' +version = '0.3.0' + +homepage = 'https://github.com/grimme-lab/multicharge' +description = """Electronegativity equilibration model for atomic partial charges.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['2fcc1f80871f404f005e9db458ffaec95bb28a19516a0245278cd3175b63a6b2'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), + ('binutils', '2.40'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), +] + +sanity_check_paths = { + 'files': ['bin/multicharge', 'lib/libmulticharge.a'], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["multicharge --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NTPoly/NTPoly-2.7.1-foss-2022a.eb b/easybuild/easyconfigs/n/NTPoly/NTPoly-2.7.1-foss-2022a.eb new file mode 100644 index 00000000000..e6ef7ccfb3e --- /dev/null +++ b/easybuild/easyconfigs/n/NTPoly/NTPoly-2.7.1-foss-2022a.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'NTPoly' +version = '2.7.1' + +homepage = 'https://github.com/william-dawson/NTPoly' +description = """is a massively parallel library for computing the functions of sparse, symmetric matrices based on +polynomial expansions. For sufficiently sparse matrices, most of the matrix functions +in NTPoly can be computed in linear time.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': False, 'usempi': True} + +source_urls = ['https://github.com/william-dawson/NTPoly/archive/ntpoly-v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c15d9f51ac054b4ef0565ce5c4c8589c10bdbab4dc3442ebd109691e2bbfc7e2'] + +builddependencies = [('CMake', '3.23.1')] + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['include/%s.mod' % x for x in ['datatypesmodule', 'densitymatrixsolversmodule']] + + ['lib64/libNTPoly.%s' % SHLIB_EXT, 'lib/libNTPoly.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb b/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb new file mode 100644 index 00000000000..8f7a531ce0e --- /dev/null +++ b/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'NTPoly' +version = '3.1.0' + +homepage = 'https://github.com/william-dawson/NTPoly' +description = """is a massively parallel library for computing the functions of sparse, symmetric matrices based on +polynomial expansions. For sufficiently sparse matrices, most of the matrix functions +in NTPoly can be computed in linear time.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': False, 'usempi': True} + +source_urls = ['https://github.com/william-dawson/NTPoly/archive/ntpoly-v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['71cd6827f20c68e384555dbcfc85422d0690e21d21d7b5d4f7375544a2755271'] + +builddependencies = [('CMake', '3.26.3')] + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['include/%s.mod' % x for x in ['datatypesmodule', 'densitymatrixsolversmodule']] + + ['lib64/libNTPoly.%s' % SHLIB_EXT, 'lib/libNTPoly.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/NanoComp/NanoComp-1.24.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoComp/NanoComp-1.24.0-foss-2023a.eb new file mode 100644 index 00000000000..94de23b83da --- /dev/null +++ b/easybuild/easyconfigs/n/NanoComp/NanoComp-1.24.0-foss-2023a.eb @@ -0,0 +1,42 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'NanoComp' +version = '1.24.0' + +homepage = 'https://github.com/wdecoster/NanoComp' +description = "Comparing runs of Oxford Nanopore sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2ce02bb38c76137ee00ebcc68b6b2654a4a459993e901aebde436c4d54287b09'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), + ('nanoget', '1.19.3'), + ('NanoPlot', '1.43.0'), + ('plotly.py', '5.16.0'), + ('plotly-orca', '1.3.1'), + ('joypy', '0.2.6'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/NanoComp'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoComp --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb new file mode 100644 index 00000000000..fed069c1e75 --- /dev/null +++ b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'NanoFilt' +version = '2.8.0' + +homepage = 'https://github.com/wdecoster/nanofilt' +description = """Filtering and trimming of long read sequencing data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['47f4f4f8be834f011570a8d76d07cc12abe0686c8917607316a8ccfb3e20758c'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_commands = ["NanoFilt --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb b/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb new file mode 100644 index 00000000000..1b21ec42201 --- /dev/null +++ b/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb @@ -0,0 +1,48 @@ +## +# This is a contribution from SIB Swiss Institute of Bioinformatics +# Homepage: https://www.sib.swiss/research-infrastructure/competence-centers/vital-it +# +# Authors:: Sebastien Moretti +# +# Update: Petr Král (INUITS) +## + +easyblock = 'PythonBundle' + +name = 'NanoLyse' +version = '1.2.1' + +homepage = 'https://github.com/wdecoster/nanolyse' +description = """Remove reads mapping to the lambda phage genome from a fastq file.""" +software_license = 'LicenseGPLv3' + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('minimap2', '2.26'), +] + +use_pip = True + +# Fetch the tar.gz, not the whl files! +exts_list = [ + ('mappy', '2.28', { + 'checksums': ['0ebf7a5d62bd668f5456028215e26176e180ca68161ac18d4f7b48045484cebb'], + }), + (name, version, { + 'checksums': ['933ee668da805fc9ec9fa86c9fca81a073438d45b5f64e23cf606c01e715b1d5'], + }), +] + +sanity_check_paths = { + 'files': ['bin/NanoLyse'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoLyse --version"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb new file mode 100644 index 00000000000..4e547b9963b --- /dev/null +++ b/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb @@ -0,0 +1,43 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'NanoPlot' +version = '1.43.0' + +homepage = 'https://github.com/wdecoster/NanoPlot' +description = "Plotting suite for long read sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['0f94096d689b552c32fd7246ad87cb6d5e5e2499dad5acc551091e0ff67f48df'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), + ('nanoget', '1.19.3'), + ('plotly.py', '5.16.0'), + ('statsmodels', '0.14.1'), + ('Arrow', '14.0.1'), # for pyarrow + ('Kaleido', '0.2.1'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/NanoPlot'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoPlot --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb new file mode 100644 index 00000000000..8f0fa5a053c --- /dev/null +++ b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'NanoStat' +version = '1.6.0' + +homepage = 'https://github.com/wdecoster/nanostat' +description = """Calculate various statistics from a long read sequencing dataset in fastq, + bam or albacore sequencing summary format.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e45fa8d1ab49bdaed17596c26c0af148b44e4af46238391a8bb7a1b4cc940079'] + +dependencies = [ + ('Python', '3.11.3'), + ('nanoget', '1.19.3'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/NanoStat'], + 'dirs': [], +} + +sanity_check_commands = ["NanoStat --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb new file mode 100644 index 00000000000..264a822a3ca --- /dev/null +++ b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'nanoQC' +version = '0.9.4' + +homepage = 'https://github.com/wdecoster/nanoQC' +description = """Quality control tools for long read sequencing + data aiming to replicate some of the plots made by fastQC.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['05685656138cbaf099b18831d1ceeaca93faf3399881cc2efda44c04d3b316e3'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('SciPy-bundle', '2023.07'), + ('bokeh', '3.2.2'), +] + +download_dep_fail = True +use_pip = True + +options = {'modulename': 'nanoQC'} + +sanity_check_commands = ["nanoQC --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb new file mode 100644 index 00000000000..2aeb2ceaf26 --- /dev/null +++ b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb @@ -0,0 +1,30 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'nanoget' +version = '1.19.3' + +homepage = 'https://github.com/wdecoster/nanoget' +description = "Functions to extract information from Oxford Nanopore sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['da981810edb1cbe42cbbfbe5fcf753f29bf5555204cd51256b28a284a036a71b'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb new file mode 100644 index 00000000000..2a2f56955cc --- /dev/null +++ b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb @@ -0,0 +1,33 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'nanomath' +version = '1.4.0' + +homepage = 'https://github.com/wdecoster/nanomath' +description = "A few simple math functions for other Oxford Nanopore processing scripts" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('Python-Deprecated', '1.1.0', { + 'modulename': 'deprecated', + 'checksums': ['a242b3c1721f97912330b12cd5529abfa5b3876084a6c60a2c683a87d4b0dd6f'], + }), + (name, version, { + 'checksums': ['ed7a38fbb156d9a68a95c2570fe3c2035321d0a3e234580496750afca4927ced'], + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb b/easybuild/easyconfigs/p/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb new file mode 100644 index 00000000000..d534bfa0f78 --- /dev/null +++ b/easybuild/easyconfigs/p/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'PCAngsd' +version = '1.2' + +homepage = "https://www.popgen.dk/software/index.php/PCAngsd" +description = "Framework for analyzing low depth NGS data in heterogeneous populations using PCA." + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Cython', '3.0.8'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': False, + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/Rosemeis/pcangsd/archive/refs/tags/'], + 'checksums': ['286f09851c37e380c9abf5859595e7cd0ad8cb49f1d48b1b0ae409aab0eae62e'], + }), +] + +sanity_check_commands = [ + 'pcangsd --help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb b/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb new file mode 100644 index 00000000000..51357650dbb --- /dev/null +++ b/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb @@ -0,0 +1,22 @@ +easyblock = 'PackedBinary' + +name = 'PLINK' +version = '1.90-beta-7.4-x86_64' + +homepage = 'https://www.cog-genomics.org/plink/1.9/' +description = 'plink-1.9-x86_64: Whole-genome association analysis toolset' + +toolchain = SYSTEM + +source_urls = ['https://s3.amazonaws.com/plink1-assets/'] +sources = ['plink_linux_x86_64_20240818.zip'] +checksums = ['0ac294ffcd5d82f5b0d2d7f579ac85a87017f6fc46485b21793f5aff9c719e3d'] + +sanity_check_paths = { + 'files': ['plink', 'prettify', 'toy.map', 'toy.ped'], + 'dirs': [], +} + +sanity_check_commands = ["plink --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1307155f8f7 --- /dev/null +++ b/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,49 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2014-2015 The Cyprus Institute +# Authors:: Thekla Loizou +# License:: MIT/GPL +# +## +easyblock = 'CMakeMake' + +name = 'PROJ' +version = '9.4.1' + +homepage = 'https://proj.org' +description = """Program proj is a standard Unix filter function which converts +geographic longitude and latitude coordinates into cartesian coordinates""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://download.osgeo.org/proj/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ffe20170ee2b952207adf8a195e2141eab12cda181e49fdeb54425d98c7171d7'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('googletest', '1.15.2'), +] + +dependencies = [ + ('SQLite', '3.45.3'), + ('LibTIFF', '4.6.0'), + ('cURL', '8.7.1'), + ('XZ', '5.4.5'), + ('nlohmann_json', '3.11.3'), +] + +# build twice, once for static, once for shared libraries +configopts = ['', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/cct', 'bin/cs2cs', 'bin/geod', 'bin/gie', 'bin/proj', 'bin/projinfo', + 'lib/libproj.a', 'lib/libproj.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..cfbbc1eb16b --- /dev/null +++ b/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'MesonNinja' + +name = 'Pango' +version = '1.54.0' + +homepage = 'https://pango.gnome.org/' +description = """Pango is a library for laying out and rendering of text, with an emphasis on internationalization. +Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the +context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['8a9eed75021ee734d7fc0fdf3a65c3bba51dfefe4ae51a9b414a60c70b2d1ed8'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('GObject-Introspection', '1.80.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('X11', '20240607'), + ('GLib', '2.80.4'), + ('cairo', '1.18.0'), + ('HarfBuzz', '9.0.0'), + ('FriBidi', '1.0.15'), +] + +configopts = "--buildtype=release --default-library=both " + +sanity_check_paths = { + 'files': ['bin/pango-view', 'lib/libpango-1.0.%s' % SHLIB_EXT, 'lib/libpangocairo-1.0.%s' % SHLIB_EXT, + 'lib/libpangoft2-1.0.%s' % SHLIB_EXT, 'lib/libpangoxft-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..34c086c859a --- /dev/null +++ b/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonPackage' + +name = 'Pillow' +version = '10.4.0' + +homepage = 'https://pillow.readthedocs.org/' +description = """Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. + PIL is the Python Imaging Library by Fredrik Lundh and Contributors.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['166c1cd4d24309b30d61f79f4a9114b7b2313d7450912277855ff5dfd7cd4a06'] + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('LibTIFF', '4.6.0'), + ('freetype', '2.13.2'), + ('libwebp', '1.4.0'), + ('OpenJPEG', '2.5.2'), + ('LittleCMS', '2.16'), +] + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + +# avoid that hardcoded paths like /usr/include are used in build commands +installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'PIL'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb b/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb new file mode 100644 index 00000000000..47fce7ec459 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'PyBullet' +version = '3.2.6' + +homepage = 'https://github.com/bulletphysics/bullet3' +description = """Bullet Physics SDK: real-time collision detection and +multi-physics simulation for VR, games, visual effects, robotics, +machine learning etc.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pybullet', version, { + 'checksums': ['da27525433c88698dc9fd8bc20fa4ae4d07738b4656633659ebd82c2d2884e08'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb b/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..bc9d066a13d --- /dev/null +++ b/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb @@ -0,0 +1,393 @@ +easyblock = 'Cargo' + +name = 'phasius' +version = '0.2.0' + +homepage = 'https://github.com/wdecoster/phasius' +description = """A tool to visualize phase block structure from (many) BAM, + CRAM or VCF files together with BED annotation""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wdecoster/phasius/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.2.0.tar.gz': 'a5b320303383b473661fccf7ec93f3b555b21d86d78d9cdaf5317cc9bcf3cb0e'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'anstream-0.6.15.tar.gz': '64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'anstyle-parse-0.2.5.tar.gz': 'eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb'}, + {'anstyle-query-1.1.1.tar.gz': '6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a'}, + {'anstyle-wincon-3.0.4.tar.gz': '5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8'}, + {'askama-0.12.1.tar.gz': 'b79091df18a97caea757e28cd2d5fda49c6cd4bd01ddffd7ff01ace0c0ad2c28'}, + {'askama_derive-0.12.5.tar.gz': '19fe8d6cb13c4714962c072ea496f3392015f0989b1a2847bb4b2d9effd71d83'}, + {'askama_escape-0.10.3.tar.gz': '619743e34b5ba4e9703bba34deac3427c72507c7159f5fd030aea8cac0cfe341'}, + {'askama_parser-0.2.1.tar.gz': 'acb1161c6b64d1c3d83108213c2a2533a342ac225aabd0bda218278c2ddb00c0'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'basic-toml-0.1.9.tar.gz': '823388e228f614e9558c6804262db37960ec8821856535f5c3f59913140558f8'}, + {'bindgen-0.69.4.tar.gz': 'a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0'}, + {'bio-types-1.0.4.tar.gz': 'f4dcf54f8b7f51450207d54780bab09c05f30b8b0caa991545082842e466ad7e'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.1.15.tar.gz': '57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6'}, + {'cexpr-0.6.0.tar.gz': '6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'chrono-0.4.38.tar.gz': 'a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401'}, + {'clang-sys-1.8.1.tar.gz': '0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4'}, + {'clap-3.2.25.tar.gz': '4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123'}, + {'clap_derive-3.2.25.tar.gz': 'ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008'}, + {'clap_lex-0.2.4.tar.gz': '2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'colorchoice-1.0.2.tar.gz': 'd3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'ctor-0.2.8.tar.gz': 'edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f'}, + {'curl-sys-0.4.74+curl-8.9.0.tar.gz': '8af10b986114528fcdc4b63b6f5f021b7057618411046a4de2ba0f0149a097bf'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'darling-0.20.10.tar.gz': '6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989'}, + {'darling_core-0.20.10.tar.gz': '95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5'}, + {'darling_macro-0.20.10.tar.gz': 'd336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806'}, + {'deranged-0.3.11.tar.gz': 'b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'derive-new-0.6.0.tar.gz': 'd150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad'}, + {'dyn-clone-1.0.17.tar.gz': '0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'env_filter-0.1.2.tar.gz': '4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab'}, + {'env_logger-0.11.5.tar.gz': 'e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d'}, + {'erased-serde-0.4.5.tar.gz': '24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'hex-0.4.3.tar.gz': '7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70'}, + {'hts-sys-2.1.4.tar.gz': 'e9f348d14cb4e50444e39fcd6b00302fe2ed2bc88094142f6278391d349a386d'}, + {'humansize-2.1.3.tar.gz': '6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.60.tar.gz': 'e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'ident_case-1.0.1.tar.gz': 'b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'is_terminal_polyfill-1.70.1.tar.gz': '7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'js-sys-0.3.70.tar.gz': '1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'lazycell-1.3.0.tar.gz': '830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'libloading-0.8.5.tar.gz': '4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libz-sys-1.1.20.tar.gz': 'd2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'mime-0.3.17.tar.gz': '6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a'}, + {'mime_guess-2.0.5.tar.gz': 'f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-conv-0.1.0.tar.gz': '51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'openssl-src-300.3.1+3.3.1.tar.gz': '7259953d42a81bf137fbbd73bd30a8e1914d6dce43c2b90ed575783a22608b91'}, + {'openssl-sys-0.9.103.tar.gz': '7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6'}, + {'os_str_bytes-6.6.1.tar.gz': 'e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'plotly-0.9.0.tar.gz': '25b8fd16c14ce31e4d48a31970530c2e3152b965e8567469e292712af7c9536f'}, + {'plotly_derive-0.9.0.tar.gz': '7817cbbd497db67dc5d21206fd0f4cab0cd6974b6fd2791f012c5455245b0e65'}, + {'powerfmt-0.2.0.tar.gz': '439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro-error-1.0.4.tar.gz': 'da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c'}, + {'proc-macro-error-attr-1.0.4.tar.gz': 'a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'regex-1.10.6.tar.gz': '4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619'}, + {'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}, + {'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}, + {'rust-htslib-0.47.0.tar.gz': '41f1796800e73ebb282c6fc5c03f1fe160e867e01114a58a7e115ee3c1d02482'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustversion-1.0.17.tar.gz': '955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.209.tar.gz': '99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09'}, + {'serde_derive-1.0.209.tar.gz': 'a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170'}, + {'serde_json-1.0.127.tar.gz': '8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad'}, + {'serde_repr-0.1.19.tar.gz': '6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9'}, + {'serde_with-2.3.3.tar.gz': '07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe'}, + {'serde_with_macros-2.3.3.tar.gz': '881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.76.tar.gz': '578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525'}, + {'termcolor-1.4.1.tar.gz': '06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755'}, + {'textwrap-0.16.1.tar.gz': '23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9'}, + {'thiserror-1.0.63.tar.gz': 'c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724'}, + {'thiserror-impl-1.0.63.tar.gz': 'a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261'}, + {'time-0.3.36.tar.gz': '5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885'}, + {'time-core-0.1.2.tar.gz': 'ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3'}, + {'time-macros-0.2.18.tar.gz': '3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'typeid-1.0.2.tar.gz': '0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e'}, + {'unicase-2.7.0.tar.gz': 'f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89'}, + {'unicode-bidi-0.3.15.tar.gz': '08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.23.tar.gz': 'a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5'}, + {'unzip-n-0.1.2.tar.gz': 'c2e7e85a0596447f0f2ac090e16bc4c516c6fe91771fb0c0ccf7fa3dae896b9c'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.93.tar.gz': 'a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5'}, + {'wasm-bindgen-backend-0.2.93.tar.gz': '9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b'}, + {'wasm-bindgen-macro-0.2.93.tar.gz': '585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf'}, + {'wasm-bindgen-macro-support-0.2.93.tar.gz': 'afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836'}, + {'wasm-bindgen-shared-0.2.93.tar.gz': 'c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.9.tar.gz': 'cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, +] + +crates = [ + ('aho-corasick', '1.1.3'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('anstream', '0.6.15'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.5'), + ('anstyle-query', '1.1.1'), + ('anstyle-wincon', '3.0.4'), + ('askama', '0.12.1'), + ('askama_derive', '0.12.5'), + ('askama_escape', '0.10.3'), + ('askama_parser', '0.2.1'), + ('atty', '0.2.14'), + ('autocfg', '1.3.0'), + ('base64', '0.13.1'), + ('basic-toml', '0.1.9'), + ('bindgen', '0.69.4'), + ('bio-types', '1.0.4'), + ('bitflags', '1.3.2'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.15'), + ('cexpr', '0.6.0'), + ('cfg-if', '1.0.0'), + ('chrono', '0.4.38'), + ('clang-sys', '1.8.1'), + ('clap', '3.2.25'), + ('clap_derive', '3.2.25'), + ('clap_lex', '0.2.4'), + ('cmake', '0.1.51'), + ('colorchoice', '1.0.2'), + ('core-foundation-sys', '0.8.7'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.20'), + ('ctor', '0.2.8'), + ('curl-sys', '0.4.74+curl-8.9.0'), + ('custom_derive', '0.1.7'), + ('darling', '0.20.10'), + ('darling_core', '0.20.10'), + ('darling_macro', '0.20.10'), + ('deranged', '0.3.11'), + ('derive-new', '0.5.9'), + ('derive-new', '0.6.0'), + ('dyn-clone', '1.0.17'), + ('either', '1.13.0'), + ('env_filter', '0.1.2'), + ('env_logger', '0.11.5'), + ('erased-serde', '0.4.5'), + ('fnv', '1.0.7'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('getrandom', '0.2.15'), + ('glob', '0.3.1'), + ('hashbrown', '0.12.3'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('hex', '0.4.3'), + ('hts-sys', '2.1.4'), + ('humansize', '2.1.3'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.60'), + ('iana-time-zone-haiku', '0.1.2'), + ('ident_case', '1.0.1'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '1.9.3'), + ('is_terminal_polyfill', '1.70.1'), + ('itertools', '0.12.1'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.5.0'), + ('lazycell', '1.3.0'), + ('libc', '0.2.158'), + ('libloading', '0.8.5'), + ('libm', '0.2.8'), + ('libz-sys', '1.1.20'), + ('linear-map', '1.2.0'), + ('log', '0.4.22'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.4'), + ('mime', '0.3.17'), + ('mime_guess', '2.0.5'), + ('minimal-lexical', '0.2.1'), + ('newtype_derive', '0.1.6'), + ('nom', '7.1.3'), + ('num-conv', '0.1.0'), + ('num-traits', '0.2.19'), + ('once_cell', '1.19.0'), + ('openssl-src', '300.3.1+3.3.1'), + ('openssl-sys', '0.9.103'), + ('os_str_bytes', '6.6.1'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('plotly', '0.9.0'), + ('plotly_derive', '0.9.0'), + ('powerfmt', '0.2.0'), + ('ppv-lite86', '0.2.20'), + ('proc-macro-error', '1.0.4'), + ('proc-macro-error-attr', '1.0.4'), + ('proc-macro2', '1.0.86'), + ('quick-error', '1.2.3'), + ('quote', '1.0.37'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('rust-htslib', '0.47.0'), + ('rustc-hash', '1.1.0'), + ('rustc_version', '0.1.7'), + ('rustversion', '1.0.17'), + ('ryu', '1.0.18'), + ('semver', '0.1.20'), + ('serde', '1.0.209'), + ('serde_derive', '1.0.209'), + ('serde_json', '1.0.127'), + ('serde_repr', '0.1.19'), + ('serde_with', '2.3.3'), + ('serde_with_macros', '2.3.3'), + ('shlex', '1.3.0'), + ('strsim', '0.10.0'), + ('strsim', '0.11.1'), + ('strum_macros', '0.26.4'), + ('syn', '1.0.109'), + ('syn', '2.0.76'), + ('termcolor', '1.4.1'), + ('textwrap', '0.16.1'), + ('thiserror', '1.0.63'), + ('thiserror-impl', '1.0.63'), + ('time', '0.3.36'), + ('time-core', '0.1.2'), + ('time-macros', '0.2.18'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('typeid', '1.0.2'), + ('unicase', '2.7.0'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unzip-n', '0.1.2'), + ('url', '2.5.2'), + ('utf8parse', '0.2.2'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.93'), + ('wasm-bindgen-backend', '0.2.93'), + ('wasm-bindgen-macro', '0.2.93'), + ('wasm-bindgen-macro-support', '0.2.93'), + ('wasm-bindgen-shared', '0.2.93'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.9'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-core', '0.52.0'), + ('windows-sys', '0.52.0'), + ('windows-sys', '0.59.0'), + ('windows-targets', '0.52.6'), + ('windows_aarch64_gnullvm', '0.52.6'), + ('windows_aarch64_msvc', '0.52.6'), + ('windows_i686_gnu', '0.52.6'), + ('windows_i686_gnullvm', '0.52.6'), + ('windows_i686_msvc', '0.52.6'), + ('windows_x86_64_gnu', '0.52.6'), + ('windows_x86_64_gnullvm', '0.52.6'), + ('windows_x86_64_msvc', '0.52.6'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + +builddependencies = [ + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), + ('Clang', '16.0.6'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('OpenSSL', '1.1', '', SYSTEM), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s --version"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..fcf1a67d7ff --- /dev/null +++ b/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'Binary' + +name = 'plotly-orca' +version = '1.3.1' + +homepage = 'https://github.com/plotly/orca' +description = """Orca is an Electron app that generates images and reports of Plotly things like + plotly.js graphs, dash apps, dashboards from the command line.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/plotly/orca/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['25ebf207d75769c140dcea033a984e7a3a6d919bb8e110a14c890c8cf430f14d'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('nodejs', '18.17.1'), +] + +install_cmd = 'npm install --no-package-lock -g --prefix %(installdir)s electron@6.1.4 v%(version)s.tar.gz' + +sanity_check_paths = { + 'files': ['bin/orca'], + 'dirs': ['lib/node_modules/orca'], +} +sanity_check_commands = ['orca --help'] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb b/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb new file mode 100644 index 00000000000..4a188f7473b --- /dev/null +++ b/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb @@ -0,0 +1,48 @@ +# https://github.com/pocl/pocl/issues/1219 +# "PoCL 3.1 supports LLVM only up to 15", so need 4.0 for working with Clang 16 +easyblock = 'CMakeNinja' + +name = 'pocl' +version = '6.0' + +homepage = 'http://portablecl.org' +description = """PoCL is a portable open source (MIT-licensed) implementation +of the OpenCL standard (1.2 with some 2.0 features supported).""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/pocl/pocl/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [] +checksums = [ + 'de9710223fc1855f833dbbf42ea2681e06aa8ec0464f0201104dc80a74dfd1f2', # v6.0.tar.gz +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('Clang', '18.1.8'), + ('hwloc', '2.10.0'), + ('libtool', '2.4.7'), + ('libxml2', '2.12.7'), +] + +separate_build_dir = True + +# disable attempt to find an ICD loader, always build libOpenCL.so +configopts = "-DENABLE_ICD=0 -DINSTALL_OPENCL_HEADERS=1 " +# make sure we use the easybuild Clang +configopts += "-DWITH_LLVM_CONFIG=$EBROOTCLANG/bin/llvm-config -DSTATIC_LLVM=ON " +# avoid host CPU auto-detection (which may fail on recent CPUs) +configopts += "-DLLC_HOST_CPU=native " + +sanity_check_paths = { + 'files': ['bin/poclcc', 'lib64/libOpenCL.%s' % SHLIB_EXT], + 'dirs': ['include/CL', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8cbde894708 --- /dev/null +++ b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'prompt-toolkit' +version = '3.0.36' + +homepage = 'https://github.com/jonathanslenders/python-prompt-toolkit' +description = """prompt_toolkit is a Python library for building powerful interactive command lines and + terminal applications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sources = ['prompt_toolkit-%(version)s-py3-none-any.whl'] +checksums = ['aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'prompt_toolkit'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ed4aac1448e --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'protobuf-python' +version = '5.28.0' + +homepage = 'https://github.com/google/protobuf/' +description = "Python Protocol Buffers runtime library." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/p/protobuf'] +sources = ['protobuf-%(version)s.tar.gz'] +checksums = ['dde74af0fa774fa98892209992295adbfb91da3fa98c8f67a88afe8f5a349add'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('protobuf', version[2:]), # Major version is only used for the Python bindings +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'google.protobuf'} + +# Make sure protobuf is installed as a regular folder or it will not be found if +# other google packages are installed in other site-packages folders +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/google/protobuf'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b5f959fc06b --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'protobuf' +version = '28.0' + +homepage = 'https://github.com/protocolbuffers/protobuf' +description = """Protocol Buffers (a.k.a., protobuf) are Google's +language-neutral, platform-neutral, extensible mechanism for +serializing structured data.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'protocolbuffers' +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_GZ] +checksums = ['13e7749c30bc24af6ee93e092422f9dc08491c7097efa69461f88eb5f61805ce'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] +dependencies = [ + ('Abseil', '20240722.0'), +] + +srcdir = '.' + +configopts = '-Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON -Dprotobuf_ABSL_PROVIDER="package" ' + +sanity_check_paths = { + 'files': ['bin/protoc', 'lib/libprotobuf.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..7a512df4e25 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'pytest-flakefinder' +version = '1.1.0' + +homepage = 'https://github.com/dropbox/pytest-flakefinder' +description = "Runs tests multiple times to expose flakiness." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sources = [SOURCE_TAR_GZ] +checksums = ['e2412a1920bdb8e7908783b20b3d57e9dad590cc39a93e8596ffdd493b403e0e'] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..25aaab957da --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'pytest-workflow' +version = '2.1.0' + +homepage = 'https://github.com/LUMC/pytest-workflow' +description = """Configure workflow/pipeline tests using yaml files. + +pytest-workflow is a workflow-system agnostic testing framework that aims to make pipeline/workflow testing easy by +using YAML files for the test configuration. +Whether you write your pipelines in WDL, snakemake, nextflow, bash or any other workflow framework, +pytest-workflow makes testing easy. +pytest-workflow is build on top of the pytest test framework.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('PyYAML', '6.0.2'), + ('python-isal', '1.7.0'), + ('zlib-ng', '2.2.1'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('zstandard', '0.23.0', {'checksums': ['b2d8c62d08e7255f68f7a740bae85b3c9b8e5466baa9cbf7f57f1cde0ac6bc09']}), + ('xopen', '2.0.2', {'checksums': ['f19d83de470f5a81725df0140180ec71d198311a1d7dad48f5467b4ad5df6154']}), + (name, version, {'checksums': ['dc86ad9a5f94482aec14926788f6b78b428be68ee0428cbca22f89b6326f8b7a']}), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..96885969511 --- /dev/null +++ b/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'python-isal' +version = '1.7.0' + +homepage = 'https://github.com/pycompression/python-isal' +description = """Faster zlib and gzip compatible compression and decompression + by providing python bindings for the isa-l library. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('versioningit', '3.1.2'), +] +dependencies = [ + ('Python', '3.12.3'), + ('ISA-L', '2.31.0'), +] + +source_urls = [PYPI_SOURCE.replace('%(name)s', 'isal')] +sources = ['isal-%(version)s.tar.gz'] +checksums = ['9eb9457ed27fd0a8a7b403a5f4f9e6c8d1a44c2ca28ecd2f2bf3aed90b0a74bf'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +preinstallopts = 'PYTHON_ISAL_LINK_DYNAMIC=true' + +options = {'modulename': 'isal'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb new file mode 100644 index 00000000000..0c20434dec2 --- /dev/null +++ b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb @@ -0,0 +1,35 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) +easyblock = 'PythonPackage' + +name = 'qcat' +version = '1.1.0' + +homepage = 'https://github.com/nanoporetech/qcat' +description = "qcat is a Python command-line tool for demultiplexing Oxford Nanopore reads from FASTQ files" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['56f225321a48eef43e2b83a33cbbb47bf1b1edcd569f3db4d088a1bc0199e20a'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('python-parasail', '1.3.4'), + ('PyYAML', '6.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/qcat'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["qcat --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb b/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb new file mode 100644 index 00000000000..4981b999b95 --- /dev/null +++ b/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'Bundle' + +name = 'R-tesseract' +version = '5.2.1' + +homepage = 'https://cran.r-project.org/package=tesseract' +description = "The R extension for using tesseract" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('pkgconf', '1.9.5')] + +dependencies = [ + ('R', '4.3.2'), + ('poppler', '23.09.0'), + ('tesseract', '5.3.4'), +] + +exts_defaultclass = 'RPackage' + +exts_default_options = { + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz', +} + +exts_list = [ + ('qpdf', '1.3.3', { + 'checksums': ['415610be6fa73f60a31872b81fea089288b07f9cb6d078088009207c5e60fe53'], + }), + ('pdftools', '3.4.0', { + 'checksums': ['0b9d7b2100a6d7959c56e144285b9638ca6ff4a7f484a31ff814a99d71482c64'], + }), + ('tesseract', version, { + 'preinstallopts': 'INCLUDE_DIR="$EBROOTTESSERACT/include/tesseract -I$EBROOTLEPTONICA/include/leptonica"' + ' LIB_DIR=$EBROOTTESSERACT/lib', + 'checksums': ['ffaba641c5d531a2b6d4ded3608a669206b1e0690cb5e013e3fc9db8aea117fe'], + }), +] + +sanity_check_paths = { + 'files': ['tesseract/libs/tesseract.%s' % SHLIB_EXT, 'tesseract/R/tesseract'], + 'dirs': ['qpdf', 'pdftools'], +} + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb b/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb index d8b9d1c97fe..9d09c819514 100644 --- a/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb +++ b/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb @@ -57,6 +57,10 @@ dependencies = [ osdependencies = [OS_PKG_OPENSSL_DEV] +# Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols. +# Adding it to FLIBS makes sure it is present when needed. +preconfigopts = 'export FLIBS="$FLIBS -lm" && ' + configopts = "--with-pic --enable-threads --enable-R-shlib" # some recommended packages may fail in a parallel build (e.g. Matrix), and # we're installing them anyway below diff --git a/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4be8dccf690 --- /dev/null +++ b/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'RDFlib' +version = '7.0.0' + +homepage = 'https://github.com/RDFLib/rdflib' +description = """RDFLib is a Python library for working with RDF, a simple yet powerful language + for representing information.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True + +exts_list = [ + ('isodate', '0.6.1', { + 'checksums': ['48c5881de7e8b0a0d648cb024c8062dc84e7b840ed81e864c7614fd3c127bde9'], + }), + ('rdflib', version, { + 'checksums': ['9995eb8569428059b8c1affd26b25eac510d64f5043d9ce8c84e0d0036e995ae'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.11-foss-2023a.eb b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.11-foss-2023a.eb new file mode 100644 index 00000000000..d218a83dc02 --- /dev/null +++ b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.11-foss-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'RHEIA' +version = '1.1.11' + +homepage = 'https://github.com/rheia-framework/RHEIA' +description = "Robust design optimization of renewable Hydrogen and dErIved energy cArrier systems" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # deap, numpy, pandas, scipy + ('h5py', '3.9.0'), + ('matplotlib', '3.7.2'), +] + +use_pip = True + +exts_list = [ + ('pvlib', '0.11.0', { + 'checksums': ['88b31c44dc07f0435af1e2d5ddcac067e6ce15917251a9f270366f61e9bd015b'], + }), + ('pyDOE', '0.3.8', { + 'modulename': '%(name)s', + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['cbd6f14ae26d3c9f736013205f53ea1191add4567033c3ee77b7dd356566c4b6'], + }), + ('SobolSequence', '0.2.1', { + 'modulename': 'sobol', + 'checksums': ['b2b4b57451b8d2e79ddb07efa23bc471dfdd436ea357d6368666bdc364df3eb1'], + }), + ('rheia', version, { + 'sources': ['%(namelower)s-%(version)s.tar.gz'], + 'checksums': ['d6b1ea991f6338cca136b59e8e413bae2167c5ebd631163ec68fafe0040aa143'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb b/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb new file mode 100644 index 00000000000..22e6ed85f93 --- /dev/null +++ b/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb @@ -0,0 +1,65 @@ +## +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos , 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 +# +# Update: Petr Král (INUITS) +## + +easyblock = 'ConfigureMake' + +name = 'RMBlast' +version = '2.14.1' + +homepage = 'https://www.repeatmasker.org/rmblast/' +description = """RMBlast is a RepeatMasker compatible version of the standard NCBI BLAST suite. The primary + difference between this distribution and the NCBI distribution is the addition of a new program 'rmblastn' + for use with RepeatMasker and RepeatModeler.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'usempi': True} + +# RMBlast is distributed as a patch that applies on top of BLAST+ +source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/%(version)s/'] +sources = ['ncbi-blast-%(version)s+-src.tar.gz'] +patches = [('https://www.repeatmasker.org/%(namelower)s/isb-%(version)s+-%(namelower)s.patch.gz', 2)] +checksums = [ + {'ncbi-blast-2.14.1+-src.tar.gz': '712c2dbdf0fb13cc1c2d4f4ef5dd1ce4b06c3b57e96dfea8f23e6e99f5b1650e'}, + {'isb-2.14.1+-rmblast.patch.gz': '9c8091eb2aec97ac83287859d2bfec83cb08c082d5a121cbefe3cc626f933763'}, +] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('PCRE', '8.45'), + ('Boost.MPI', '1.82.0'), + ('GMP', '6.2.1'), + ('libpng', '1.6.39'), + ('libjpeg-turbo', '2.1.5.1'), + ('LMDB', '0.9.31'), +] + +# Disable auto-vectorization for the API on CPUs with AVX512 (Intel Skylake and onwards) +# Compilation fails on src/algo/blast/api/prelim_stage.cpp +local_apimake = 'src/algo/blast/api/Makefile.xblast.lib' +preconfigopts = "sed -i 's/FAST_CXXFLAGS)/FAST_CXXFLAGS) -fno-tree-vectorize/g' %s &&" % local_apimake + +configopts = "--with-64 --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" + +prebuildopts = "sed -i 's/LIBS =/LIBS = $(BLAST_THIRD_PARTY_LIBS)/' src/app/rmblastn/Makefile.rmblastn.app && " + +sanity_check_paths = { + 'files': ['bin/blastp', 'bin/blastn', 'bin/deltablast', 'bin/rmblastn'], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b296d76e7b7 --- /dev/null +++ b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'RapidJSON' +# no new release since Aug'16 so using latest commit; +# see also https://github.com/Tencent/rapidjson/issues/2202 +version = '1.1.0-20240815' +local_commit = '7c73dd7' + +homepage = 'https://rapidjson.org' +description = "A fast JSON parser/generator for C++ with both SAX/DOM style API" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/Tencent/%(namelower)s/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': 'v%(version)s.tar.gz'}] +checksums = ['91138ebc9c980e554e6bcf9d13537f9eebf42710e0b956fdca46181ad645f94d'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +# strip out hardcoded use of -march=native, EasyBuild should be in control of this +preconfigopts = "sed -i 's/-march=native//g' ../rapidjson-*/CMakeLists.txt && " + +sanity_check_paths = { + 'files': ['lib/pkgconfig/%(name)s.pc'], + 'dirs': ['include/%(namelower)s', 'lib/cmake', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-Python-3.6.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-Python-3.6.eb new file mode 100644 index 00000000000..4e58793cd0a --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-Python-3.6.eb @@ -0,0 +1,95 @@ +# This EasyConfig is made with older setuptools and wheel versions, so that it still works with Python-3.6.X +# For newer python versions, we suggest to use ReFrame-4.6.2.eb (without suffix) +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' +versionsuffix = '-Python-3.6' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = SYSTEM + +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +# Required by lxml, which is installed by ReFrame's bootstrap installer +osdependencies = [ + ('libxml2'), + ('libxslt', 'libxslt1.1'), +] + +# Listed as python_requires in https://github.com/reframe-hpc/reframe/blob/v4.6.2/setup.cfg +req_py_majver = 3 +req_py_minver = 6 + +# The setuptools in this EasyConfig is the latest that works for Python 3.6, but is too old for Python 3.12 +# See https://github.com/easybuilders/easybuild-easyconfigs/pull/21269#discussion_r1741570244 +max_py_majver = 3 +max_py_minver = 11 + +use_pip = True + +exts_list = [ + # stick to pip 21.3.1, which is compatible with Python 3.6 + # we still need pip outside of ReFrame's external dependencies, since the install cmd uses pip + ('pip', '21.3.1', { + 'use_pip': False, + 'checksums': ['fd11ba3d0fdb4c07fbc5ecbba0b1b719809420f25038f8ee3cd913d3faa3033a'], + }), + # Require new enough setuptools to install with e.g. pyproject.toml + # 59.6.0 is the latest compatible with Python 3.6 + ('setuptools', '59.6.0', { + 'use_pip': False, + 'source_urls': ['https://pypi.python.org/packages/source/s/setuptools/'], + 'checksums': ['22c7348c6d2976a52632c67f7ab0cdf40147db7789f9aed18734643fe9cf3373'], + }), + # stick to wheel 0.37.1, which is compatible with Python 3.6 + ('wheel', '0.37.1', { + 'source_tmpl': 'wheel-%(version)s-py2.py3-none-any.whl', + 'checksums': ['4bdcd7d840138086126cd09254dc6195fb4fc6f01c050a1d7236f2630db1d22a'], + }), + # ReFrame's bootstrap script is intended to run with zero dependencies. It downloads all python deps for ReFrame + # into a %(installdir)/external directory. ReFrame's main executable (reframe) adds this dir to python's sys.path + # so that ReFrame (and only ReFrame) will find & use all of these dependencies. + # In EasyBuild, we should adhere to this installation method because a) it is how ReFrame is meant to be used and + # b) it isolates all of ReFrame dependencies from any other python code you run. Thus, there is no chance that + # a test will pick up on any python deps from ReFrame itself. + # For this to work, we need to disable download_dep_fail and sanity_pip_check, as both are _expected_ to fail + # for this setup. + ('reframe', version, { + # Deps are downloaded to %(installdir)/external, which won't polute the PYTHONPATH, so is ok + 'download_dep_fail': False, + # ReFrame uses its custom sys.path to find necessary packages, they are not on PYTYHONPATH + # Thus, the regular pip sanity check is expected to fail, even if ReFrame would run just fine + 'sanity_pip_check': False, + # Set modulename to False, as to skip the sanity_check-step from extension.py (python -c "import reframe") + # This step would fail, since the regular python interpreter wouldn't find the additional packages in + # %(installdir)/external. That's fine, as ReFrame should never be imported directly, only through the + # reframe command. + 'modulename': False, + 'preinstallopts': "export PATH=%(installdir)s/bin:$PATH && " + "./bootstrap.sh +docs +pygelf && cp -r external %(installdir)s && ", + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/reframe-hpc/reframe/archive/'], + 'checksums': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +postinstallcmds = [ + "cp -a tools examples %(installdir)s", + "mkdir -p %(installdir)s/share && cp -a share/completions %(installdir)s/share/completions", + r"sed -i 's@/\(python[0-9.]*\)$@/\1 -S@g' %(installdir)s/bin/reframe", +] + +sanity_check_paths = { + 'files': ['bin/reframe', + 'share/completions/reframe.bash', + 'share/completions/reframe.fish', + 'share/completions/reframe.tcsh'], + 'dirs': ['external', 'lib', 'tools', 'examples'] +} + +sanity_check_commands = ['reframe -V'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb new file mode 100644 index 00000000000..26e331c131e --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb @@ -0,0 +1,91 @@ +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = SYSTEM + +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +# Required by lxml, which is installed by ReFrame's bootstrap installer +osdependencies = [ + ('libxml2'), + ('libxslt', 'libxslt1.1'), +] + +# We use pip, setuptools and wheel compatible with Python 3.7 and above +# Note that ReFrame itself is compatible also with Python 3.6 +# As listed in the python_requires in https://github.com/reframe-hpc/reframe/blob/v4.6.2/setup.cfg +# To use with Python 3.6, please install ReFrame-4.6.2-Python-3.6.eb instead +req_py_majver = 3 +req_py_minver = 7 + +use_pip = True + +exts_list = [ + # stick to pip 24.0, which is compatible with Python 3.7 + # we still need pip outside of ReFrame's external dependencies, since the install cmd uses pip + ('pip', '24.0', { + 'use_pip': False, + 'checksums': ['ea9bd1a847e8c5774a5777bb398c19e80bcd4e2aa16a4b301b718fe6f593aba2'], + }), + # Require new enough setuptools to work with Python 3.12, which doesn't have pkgutil.ImpImporter anymore + # See https://github.com/pypa/setuptools/commit/6653e747c3815b140156249205397ef3719581ee + # 68.0.0 is the latest compatible with Python 3.7 + ('setuptools', '68.0.0', { + 'use_pip': False, + 'source_urls': ['https://pypi.python.org/packages/source/s/setuptools/'], + 'checksums': ['baf1fdb41c6da4cd2eae722e135500da913332ab3f2f5c7d33af9b492acb5235'], + }), + # stick to wheel 0.42.0, which is compatible with Python 3.7 + ('wheel', '0.42.0', { + 'source_tmpl': 'wheel-%(version)s-py3-none-any.whl', + 'checksums': ['177f9c9b0d45c47873b619f5b650346d632cdc35fb5e4d25058e09c9e581433d'], + }), + # ReFrame's bootstrap script is intended to run with zero dependencies. It downloads all python deps for ReFrame + # into a %(installdir)/external directory. ReFrame's main executable (reframe) adds this dir to python's sys.path + # so that ReFrame (and only ReFrame) will find & use all of these dependencies. + # In EasyBuild, we should adhere to this installation method because a) it is how ReFrame is meant to be used and + # b) it isolates all of ReFrame dependencies from any other python code you run. Thus, there is no chance that + # a test will pick up on any python deps from ReFrame itself. + # For this to work, we need to disable download_dep_fail and sanity_pip_check, as both are _expected_ to fail + # for this setup. + ('reframe', version, { + # Deps are downloaded to %(installdir)/external, which won't polute the PYTHONPATH, so is ok + 'download_dep_fail': False, + # ReFrame uses its custom sys.path to find necessary packages, they are not on PYTYHONPATH + # Thus, the regular pip sanity check is expected to fail, even if ReFrame would run just fine + 'sanity_pip_check': False, + # Set modulename to False, as to skip the sanity_check-step from extension.py (python -c "import reframe") + # This step would fail, since the regular python interpreter wouldn't find the additional packages in + # %(installdir)/external. That's fine, as ReFrame should never be imported directly, only through the + # reframe command. + 'modulename': False, + 'preinstallopts': "export PATH=%(installdir)s/bin:$PATH && " + "./bootstrap.sh +docs +pygelf && cp -r external %(installdir)s && ", + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/reframe-hpc/reframe/archive/'], + 'checksums': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +postinstallcmds = [ + "cp -a tools examples %(installdir)s", + "mkdir -p %(installdir)s/share && cp -a share/completions %(installdir)s/share/completions", + r"sed -i 's@/\(python[0-9.]*\)$@/\1 -S@g' %(installdir)s/bin/reframe", +] + +sanity_check_paths = { + 'files': ['bin/reframe', + 'share/completions/reframe.bash', + 'share/completions/reframe.fish', + 'share/completions/reframe.tcsh'], + 'dirs': ['external', 'lib', 'tools', 'examples'] +} + +sanity_check_commands = ['reframe -V'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb b/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb new file mode 100644 index 00000000000..90b43c163a0 --- /dev/null +++ b/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb @@ -0,0 +1,57 @@ +easyblock = 'Tarball' + +name = 'RepeatMasker' +version = '4.1.7-p1' + +homepage = 'https://www.repeatmasker.org/' +description = """RepeatMasker is a program that screens DNA sequences for interspersed repeats + and low complexity DNA sequences.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://www.repeatmasker.org/%(name)s'] +sources = [ + SOURCE_TAR_GZ, + # optional but recommended: RepBase RepeatMasker Edition + # requires subscription and academic license, download from here: https://www.girinst.org/server/RepBase/index.php + # { + # 'filename': 'RepBaseRepeatMaskerEdition-20181026.tar.gz', + # 'extract_cmd': "tar -xzf %s -C %(builddir)s/%(name)s/Libraries --strip-components 1", + # }, +] +checksums = ['15222b39178f19c116282437190b64c5ba68f62b0f2044b3bbcbda5e02748993'] + +dependencies = [ + ('Python', '3.11.3'), + ('Perl', '5.36.1'), + ('TRF', '4.09.1'), + ('h5py', '3.9.0'), + # At least one search engine of: RMBlast, HMMER, ABBlast/WUBlast, Cross_Match + ('HMMER', '3.4'), + ('RMBlast', '2.14.1'), +] + +local_default_search_engine = 'RMBlast' + +local_config_command = 'cd %(installdir)s &&' +local_config_command += './configure -perlbin "$EBROOTPERL/bin/perl" -trf_prgm "$EBROOTTRF/bin/trf" ' +local_config_command += '-hmmer_dir "$EBROOTHMMER/bin" -rmblast_dir "$EBROOTRMBLAST/bin" ' +local_config_command += '-default_search_engine %s' % local_default_search_engine.lower() + +postinstallcmds = [local_config_command] + +fix_perl_shebang_for = ['RepeatMasker'] + +sanity_check_paths = { + 'files': ['RepeatMasker', 'RepeatMaskerConfig.pm'], + 'dirs': ['Libraries', 'util'], +} + +sanity_check_commands = ['RepeatMasker -help'] + +modextrapaths = { + 'PATH': '', + 'PERL5LIB': '', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..742dabcaa85 --- /dev/null +++ b/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb @@ -0,0 +1,44 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'MakeCp' + +name = 'rnamotif' +version = '20240904' +_commit = '697ee7fda4ff2f5181a33c0c3eac54d7b97409fa' + +homepage = "https://github.com/dacase/rnamotif" +description = """The rnamotif program searchs input sequences for portions that match a given descriptor or "motif". + Matching sequences can also be ranked by various scoring functions.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'dacase' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % _commit] +checksums = ['e9432e128ce7f1bfcf4898a36d56435272ad9b4e2d37f1866a95aa159c81fdfe'] + +builddependencies = [ + ('binutils', '2.40'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + +] + +prebuildopts = 'sed -i "s/CFLAGS= -O2 -Wall/CFLAGS=$CFLAGS/" config.h &&' +pretestopts = 'EFNDATA=%%(builddir)s/%%(name)s-%s/efndata' % _commit +runtest = 'test' + +files_to_copy = [ + (['src/rnamotif', 'src/rmprune', 'src/rmfmt', 'src/rm2ct'], 'bin'), + 'LICENSE', 'efndata', 'Ecoli.trna.example', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': ['efndata'], +} + +sanity_check_commands = ['rnamotif -h 2>&1 | grep usage'] + +modextravars = {'EFNDATA': 'efndata'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb new file mode 100644 index 00000000000..2a86b64c9ae --- /dev/null +++ b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb @@ -0,0 +1,170 @@ +easyblock = "CargoPythonPackage" + +name = 'rustworkx' +version = '0.12.1' + +homepage = 'https://github.com/Qiskit/rustworkx' +description = """rustworkx (previously retworkx) is a general purpose graph library for Python written in Rust to take +advantage of the performance and safety that Rust provides. It is designed to provide a high performance general +purpose graph library for any Python application.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('Rust', '1.75.0'), + ('setuptools-rust', '1.6.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +crates = [ + ('ahash', '0.7.6'), + ('autocfg', '1.1.0'), + ('bitflags', '1.3.2'), + ('cfg-if', '1.0.0'), + ('crossbeam-channel', '0.5.4'), + ('crossbeam-deque', '0.8.1'), + ('crossbeam-epoch', '0.9.8'), + ('crossbeam-utils', '0.8.8'), + ('either', '1.6.1'), + ('fixedbitset', '0.4.2'), + ('getrandom', '0.2.6'), + ('hashbrown', '0.11.2'), + ('hermit-abi', '0.1.19'), + ('indexmap', '1.7.0'), + ('indoc', '1.0.6'), + ('instant', '0.1.12'), + ('itoa', '1.0.2'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.126'), + ('lock_api', '0.4.7'), + ('matrixmultiply', '0.2.4'), + ('memchr', '2.5.0'), + ('memoffset', '0.6.5'), + ('ndarray', '0.13.1'), + ('num-bigint', '0.4.3'), + ('num-complex', '0.2.4'), + ('num-complex', '0.4.1'), + ('num-integer', '0.1.45'), + ('num-traits', '0.2.15'), + ('num_cpus', '1.13.1'), + ('numpy', '0.17.2'), + ('once_cell', '1.12.0'), + ('parking_lot', '0.11.2'), + ('parking_lot_core', '0.8.5'), + ('petgraph', '0.6.2'), + ('ppv-lite86', '0.2.16'), + ('priority-queue', '1.2.0'), + ('proc-macro2', '1.0.39'), + ('pyo3', '0.17.3'), + ('pyo3-build-config', '0.17.3'), + ('pyo3-ffi', '0.17.3'), + ('pyo3-macros', '0.17.3'), + ('pyo3-macros-backend', '0.17.3'), + ('quick-xml', '0.22.0'), + ('quote', '1.0.18'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.3'), + ('rand_pcg', '0.3.1'), + ('rawpointer', '0.2.1'), + ('rayon', '1.5.3'), + ('rayon-core', '1.9.3'), + ('redox_syscall', '0.2.13'), + ('ryu', '1.0.10'), + ('scopeguard', '1.1.0'), + ('serde', '1.0.145'), + ('serde_derive', '1.0.145'), + ('serde_json', '1.0.89'), + ('smallvec', '1.8.0'), + ('syn', '1.0.96'), + ('target-lexicon', '0.12.4'), + ('unicode-ident', '1.0.0'), + ('unindent', '0.1.9'), + ('version_check', '0.9.4'), + ('wasi', '0.10.2+wasi-snapshot-preview1'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), +] +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + {'rustworkx-0.12.1.tar.gz': '13a19a2f64dff086b3bffffb294c4630100ecbc13634b4995d9d36a481ae130e'}, + {'ahash-0.7.6.tar.gz': 'fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'crossbeam-channel-0.5.4.tar.gz': '5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53'}, + {'crossbeam-deque-0.8.1.tar.gz': '6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e'}, + {'crossbeam-epoch-0.9.8.tar.gz': '1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c'}, + {'crossbeam-utils-0.8.8.tar.gz': '0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38'}, + {'either-1.6.1.tar.gz': 'e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'getrandom-0.2.6.tar.gz': '9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad'}, + {'hashbrown-0.11.2.tar.gz': 'ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexmap-1.7.0.tar.gz': 'bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5'}, + {'indoc-1.0.6.tar.gz': '05a0bd019339e5d968b37855180087b7b9d512c5046fbd244cf8c95687927d6e'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'itoa-1.0.2.tar.gz': '112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.126.tar.gz': '349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836'}, + {'lock_api-0.4.7.tar.gz': '327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53'}, + {'matrixmultiply-0.2.4.tar.gz': '916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1'}, + {'memchr-2.5.0.tar.gz': '2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d'}, + {'memoffset-0.6.5.tar.gz': '5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce'}, + {'ndarray-0.13.1.tar.gz': 'ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09'}, + {'num-bigint-0.4.3.tar.gz': 'f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f'}, + {'num-complex-0.2.4.tar.gz': 'b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95'}, + {'num-complex-0.4.1.tar.gz': '97fbc387afefefd5e9e39493299f3069e14a140dd34dc19b4c1c1a8fddb6a790'}, + {'num-integer-0.1.45.tar.gz': '225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9'}, + {'num-traits-0.2.15.tar.gz': '578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd'}, + {'num_cpus-1.13.1.tar.gz': '19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1'}, + {'numpy-0.17.2.tar.gz': 'a462c1af5ba1fddec1488c4646993a23ae7931f9e170ccba23e9c7c834277797'}, + {'once_cell-1.12.0.tar.gz': '7709cef83f0c1f58f666e746a08b21e0085f7440fa6a29cc194d68aac97a4225'}, + {'parking_lot-0.11.2.tar.gz': '7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99'}, + {'parking_lot_core-0.8.5.tar.gz': 'd76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216'}, + {'petgraph-0.6.2.tar.gz': 'e6d5014253a1331579ce62aa67443b4a658c5e7dd03d4bc6d302b94474888143'}, + {'ppv-lite86-0.2.16.tar.gz': 'eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872'}, + {'priority-queue-1.2.0.tar.gz': 'cf40e51ccefb72d42720609e1d3c518de8b5800d723a09358d4a6d6245e1f8ca'}, + {'proc-macro2-1.0.39.tar.gz': 'c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f'}, + {'pyo3-0.17.3.tar.gz': '268be0c73583c183f2b14052337465768c07726936a260f480f0857cb95ba543'}, + {'pyo3-build-config-0.17.3.tar.gz': '28fcd1e73f06ec85bf3280c48c67e731d8290ad3d730f8be9dc07946923005c8'}, + {'pyo3-ffi-0.17.3.tar.gz': '0f6cb136e222e49115b3c51c32792886defbfb0adead26a688142b346a0b9ffc'}, + {'pyo3-macros-0.17.3.tar.gz': '94144a1266e236b1c932682136dc35a9dee8d3589728f68130c7c3861ef96b28'}, + {'pyo3-macros-backend-0.17.3.tar.gz': 'c8df9be978a2d2f0cdebabb03206ed73b11314701a5bfe71b0d753b81997777f'}, + {'quick-xml-0.22.0.tar.gz': '8533f14c8382aaad0d592c812ac3b826162128b65662331e1127b45c3d18536b'}, + {'quote-1.0.18.tar.gz': 'a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.3.tar.gz': 'd34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7'}, + {'rand_pcg-0.3.1.tar.gz': '59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.5.3.tar.gz': 'bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d'}, + {'rayon-core-1.9.3.tar.gz': '258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f'}, + {'redox_syscall-0.2.13.tar.gz': '62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42'}, + {'ryu-1.0.10.tar.gz': 'f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695'}, + {'scopeguard-1.1.0.tar.gz': 'd29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd'}, + {'serde-1.0.145.tar.gz': '728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b'}, + {'serde_derive-1.0.145.tar.gz': '81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c'}, + {'serde_json-1.0.89.tar.gz': '020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db'}, + {'smallvec-1.8.0.tar.gz': 'f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83'}, + {'syn-1.0.96.tar.gz': '0748dd251e24453cb8717f0354206b91557e4ec8703673a4b30208f2abaf1ebf'}, + {'target-lexicon-0.12.4.tar.gz': 'c02424087780c9b71cc96799eaeddff35af2bc513278cda5c99fc1f5d026d3c1'}, + {'unicode-ident-1.0.0.tar.gz': 'd22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee'}, + {'unindent-0.1.9.tar.gz': '52fee519a3e570f7df377a06a1a7775cdbfb7aa460be7e08de2b1f0e69973a44'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.10.2+wasi-snapshot-preview1.tar.gz': 'fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb b/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb new file mode 100644 index 00000000000..06a2de7582c --- /dev/null +++ b/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb @@ -0,0 +1,71 @@ +easyblock = 'Binary' + +name = 'SNAP-ESA' +version = '10.0.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://step.esa.int/main/toolboxes/snap/' +description = """ +The Sentinel Application Platform (SNAP) is a common architecture for all +Sentinel Toolboxes being jointly developed by Brockmann Consult, SkyWatch and +C-S. +The SNAP architecture is ideal for Earth Observation processing and analysis +due to the following technological innovations: Extensibility, Portability, +Modular Rich Client Platform, Generic EO Data Abstraction, Tiled Memory +Management, and a Graph Processing Framework.""" + +toolchain = SYSTEM + +local_installer = 'esa-snap_all_linux-%(version)s.sh' +local_varfile = 'SNAP-ESA-8.0-response.varfile' + +source_urls = [ + 'https://download.esa.int/step/snap/%(version_major)s_%(version_minor)s/installers', + 'https://step.esa.int/downloads/%(version_major_minor)s/installers', +] +sources = [local_installer] +patches = [(local_varfile, '.')] +checksums = [ + {'esa-snap_all_linux-10.0.0.sh': 'c928fd886c983fa7c09c09a3c48593542e71b0636d493ae1401b4c964348698a'}, + {'SNAP-ESA-8.0-response.varfile': '5ea98e3376bb3df52b9c4c99ab4986015296b815021e16486b58e4aad58e21a4'}, +] + +# The installation is executed with the bundled JRE 1.8.0_242 (Zulu) +# At runtime we switch to an external JDK (SNAP developers recommend any OpenJDK distribution) +dependencies = [ + ('Java', '11'), +] + +install_cmd = "INSTALL4J_TEMP='%(builddir)s' " +install_cmd += "bash %s -dir '%%(installdir)s'" % local_installer +install_cmd += " -q -varfile '%s'" % local_varfile + +postinstallcmds = [ + # set paths + 'sed -i "s|jdkhome.*|jdkhome=$JAVA_HOME|" %(installdir)s/etc/snap.conf', + 'sed -i "s|#snap.home.*|snap.home=%(installdir)s|" %(installdir)s/etc/snap.properties', + # remove default maximum memory allocation pool + 'sed -i "s|-J-Xmx[0-9G]* ||" %(installdir)s/etc/snap.conf', + # disable update checks + "echo 'snap.versionCheck.interval=NEVER' >> %(installdir)s/etc/snap.properties", + "sed -i 's|dpiaware=false|& -J-Dplugin.manager.check.interval=NEVER|' %(installdir)s/etc/snap.conf", + # (optional) update all modules to latest version + # the update command is buggy and it hangs after doing the update, kill it whenever it prints "updates=0" + # see issue https://senbox.atlassian.net/browse/SNAP-927 + # ('LOG="$(mktemp -d)/snap-update.log"; mkfifo $LOG; trap "rm -f $LOG" EXIT;' + # 'SNAPCMD="%(installdir)s/bin/snap --nosplash --nogui --userdir "%(builddir)s/snap" --modules --update-all";' + # '$SNAPCMD 2>&1 > $LOG & SNAPPID=$!;' + # 'while read line; do echo "$line"; [ "$line" = "updates=0" ] && kill $SNAPPID; done < $LOG;'), +] + +sanity_check_paths = { + 'files': ['bin/snap', 'bin/gpt'], + 'dirs': ['rstb', 'smos', 'snap'], +} + +sanity_check_commands = [ + "snap --nosplash --nogui --modules --help | grep 'Additional module options'", + "gpt -h", +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/s/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb b/easybuild/easyconfigs/s/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb new file mode 100644 index 00000000000..de14ff81ce9 --- /dev/null +++ b/easybuild/easyconfigs/s/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'Seaborn' +version = '0.13.2' + +homepage = 'https://seaborn.pydata.org/' +description = """ Seaborn is a Python visualization library based on matplotlib. + It provides a high-level interface for drawing attractive statistical graphics. """ + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['93e60a40988f4d65e9f4885df477e2fdaff6b73a9ded434c1ab356dd57eefff7'] + +dependencies = [ + ('Python', '3.12.3'), + ('matplotlib', '3.9.2'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..22eca6d4ed4 --- /dev/null +++ b/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,247 @@ +easyblock = 'PythonBundle' + +name = 'Single-cell-python-bundle' +version = '2024.02' +versionsuffix = '-CUDA-12.1.1' + +homepage = (None) +description = """Bundle of tools for single-cell sequence analysis.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), + ('CMake', '3.26.3'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Seaborn', '0.13.2'), + ('PyTorch', '2.1.2', versionsuffix), + ('scanpy', '1.9.8'), + ('scib', '1.1.4'), + ('scVelo', '0.3.1'), + ('CellTypist', '1.6.2'), + ('epiScanpy', '0.4.0'), + ('scCODA', '0.1.9'), + ('infercnvpy', '0.4.3'), + ('pySCENIC', '0.12.1-20240311'), + ('CellRank', '2.0.2', versionsuffix), + ('Squidpy', '1.4.1'), + ('Cassiopeia', '2.0.0'), + ('scvi-tools', '1.1.2', versionsuffix), + ('scArches', '0.6.1', versionsuffix), + ('scib-metrics', '0.5.1', versionsuffix), + # deps of exts: + ('umap-learn', '0.5.5'), # bbknn + ('scikit-learn', '1.3.1'), # bbknn, sc_toolbox + ('PyYAML', '6.0'), # sc_toolbox + ('typing-extensions', '4.9.0'), # sc_toolbox + ('adjustText', '0.7.3'), # sc_toolbox + ('python-parasail', '1.3.4'), # scirpy + ('graph-tool', '2.59'), # schist + ('Pyomo', '6.7.3'), # pertpy + ('mpmath', '1.3.0'), # blitzgsea +] + +exts_list = [ + ('flit_core', '3.9.0', { + 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], + }), + ('annoy', '1.17.3', { + 'checksums': ['9cbfebefe0a5f843eba29c6be4c84d601f4f41ad4ded0486f1b88c3b07739c15'], + }), + ('pynndescent', '0.5.11', { + 'checksums': ['6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50'], + }), + ('bbknn', '1.6.0', { + 'checksums': ['1c01a9d6df2fc52a527de8a403617897a4b672724863299a7026f2132f1b041b'], + }), + ('tzlocal', '5.2', { + 'checksums': ['8d399205578f1a9342816409cc1e46a93ebd5755e39ea2d85334bea911bf0e6e'], + }), + ('anndata2ri', '1.3.1', { + 'checksums': ['0e3fa2f81789f682d19ef452fabdb401ec27899db9abe5a78e45e21dcc7caa42'], + }), + ('pypi-latest', '0.1.2', { + 'checksums': ['b195654567e6abaac6acfec37638d8e000838f419bc6b129962a896eedc4ed4e'], + }), + ('text-unidecode', '1.3', { + 'checksums': ['bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93'], + }), + ('python-slugify', '8.0.4', { + 'modulename': 'slugify', + 'checksums': ['59202371d1d05b54a9e7720c5e038f928f45daaffe41dd10822f3907b937c856'], + }), + ('prompt_toolkit', '3.0.36', { + 'checksums': ['3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63'], + }), + ('binaryornot', '0.4.4', { + 'checksums': ['359501dfc9d40632edc9fac890e19542db1a287bbcfa58175b66658392018061'], + }), + ('types-python-dateutil', '2.9.0.20240316', { + 'modulename': False, + 'checksums': ['5d2f2e240b86905e40944dd787db6da9263f0deabef1076ddaed797351ec0202'], + }), + ('arrow', '1.3.0', { + 'checksums': ['d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85'], + }), + ('cookiecutter', '2.6.0', { + 'checksums': ['db21f8169ea4f4fdc2408d48ca44859349de2647fbe494a9d6c3edfc0542c21c'], + }), + ('questionary', '2.0.1', { + 'checksums': ['bcce898bf3dbb446ff62830c86c5c6fb9a22a54146f0f5597d3da43b10d8fc8b'], + }), + ('rich', '13.7.1', { + 'checksums': ['9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432'], + }), + ('sc_toolbox', '0.12.3', { + 'checksums': ['6ca22a364c269a095114e620eb3c6da8aac1950d8f43f58ceea08005a09cc2cb'], + }), + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('altair', '5.2.0', { + 'checksums': ['2ad7f0c8010ebbc46319cc30febfb8e59ccf84969a201541c207bc3a4fa6cf81'], + }), + ('custom_inherit', '2.4.1', { + 'checksums': ['7052eb337bcce83551815264391cc4efc2bf70b295a3c52aba64f1ab57c3a8a2'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('pypng', '0.20220715.0', { + 'modulename': 'png', + 'checksums': ['739c433ba96f078315de54c0db975aee537cbc3e1d0ae4ed9aab0ca1e427e2c1'], + }), + ('reportlab', '4.1.0', { + 'checksums': ['3a99faf412691159c068b3ff01c15307ce2fd2cf6b860199434874e002040a84'], + }), + ('toyplot', '1.0.3', { + 'checksums': ['7b7b2bc5784fd75e5c695300bffc80d568c83bebef543bb54e6e6c2229912edd'], + }), + ('toytree', '2.0.5', { + 'checksums': ['7be04ca310067e0e9737449700d6ab1b68b4379b64e2d22f2f7697a70030ceb0'], + }), + ('tascCODA', '0.1.3', { + # strip out tensorflow-probability as required dependency, to ensure that 'pip check' passes + 'preinstallopts': "sed -i '/tensorflow-probability>=0.16/d' setup.py && ", + 'checksums': ['8c12ddccb72c41c96c6a5abceb52e7a76f439a9ab94fb092aa86ee3c1292383a'], + }), + ('harmonypy', '0.0.9', { + 'checksums': ['85bfdd4e6ec6e0fa8816a276639358d3598a40d60ba9f7a5d9dada8706be8c4d'], + }), + ('fbpca', '1.0', { + 'checksums': ['150677642479663f317fdbb5e06dab3f98721cf7031bb4a84113d7a631c472d1'], + }), + ('geosketch', '1.2', { + 'checksums': ['bbfe97366b91c5927b6076d5a6738d9cfbe094efb5ac1117aab7a30b6081cc4e'], + }), + ('python_circos', '0.3.0', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'modulename': 'pycircos', + 'checksums': ['410eaffc4eb2933cd688897356813da23310f5e2f14a8bceb003e9b96faa715b'], + }), + ('mizani', '0.9.3', { + 'checksums': ['fb61339e9e4711850e902ca286b1ae75255f483823d891aa0515b426d56c606d'], + }), + ('plotnine', '0.12.4', { + 'checksums': ['adc41a672503594445a8fa19872799253bd0784cdbd5a1cc16657a1dd20ba905'], + }), + ('ktplotspy', '0.2.3', { + 'checksums': ['9a1e3646217e6e99f59ab2258dfd76120cf1f50880c9cb2f9005de397c00f0a9'], + }), + ('cellphonedb', '5.0.0', { + 'checksums': ['1c96173d8527f1655216d265fc50a28ea3360d70486afa5050e3f5565fa3a8cd'], + }), + ('decoupler', '1.6.0', { + 'checksums': ['dde501f4d3e55a260f716e51b871bee403bc8aaa6b66799df0e42dee0787b98d'], + }), + ('mudata', '0.2.3', { + 'checksums': ['45288ac150bfc598d68acb7c2c1c43c38c5c39522107e04f7efbf3360c7f2035'], + }), + ('nodeenv', '1.9.0', { + 'checksums': ['07f144e90dae547bf0d4ee8da0ee42664a42a04e02ed68e06324348dafe4bdb1'], + }), + ('identify', '2.5.36', { + 'checksums': ['e5e00f54165f9047fbebeb4a560f9acfb8af4c88232be60a488e9b68d122745d'], + }), + ('cfgv', '3.4.0', { + 'checksums': ['e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560'], + }), + ('pre_commit', '3.7.1', { + 'checksums': ['8ca3ad567bc78a4972a3f1a477e94a79d4597e8140a6e0b651c5e33899c3654a'], + }), + ('muon', '0.1.6', { + 'checksums': ['762feeb6f52f865cf79d0d0332cc742fe91c1885f668ce15794b62b3952b02f9'], + }), + ('liana', '1.2.0', { + 'checksums': ['be899c69bfcbf3d0f8b61c04c35f225ac6b11fe1ea80e6ed4bdc0e6212cb2379'], + }), + ('squarify', '0.4.3', { + 'checksums': ['54091f6ad175f7f201f8934574e647ce1b50dedc478c5fd968688eb7d7469f95'], + }), + ('scikit_build_core', '0.9.3', { + 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], + }), + ('awkward-cpp', '33', { + 'checksums': ['550adebccd329d18d02e95226d0b89698188fd33e44f07450942c692881927d8'], + }), + ('awkward', '2.6.4', { + 'checksums': ['ee0cb27c64150f368749983dda499c108848c64dc830912480eb37b78c04300f'], + }), + ('yamlordereddictloader', '0.4.2', { + 'checksums': ['36af2f6210fcff5da4fc4c12e1d815f973dceb41044e795e1f06115d634bca13'], + }), + ('airr', '1.5.0', { + 'checksums': ['febc0a881bf46b1a9c29ac6a7089dd733ff9120d114585e75dede26403f68d42'], + }), + ('scirpy', '0.17.0', { + 'checksums': ['f61653a4f7387562ec89b00fbfd7cab762c0bf3320f21ccfc47df80a13cc5d41'], + }), + ('schist', '0.8.3', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/dawe/schist/archive/'], + 'checksums': ['9b98ec9d85554573288c24f18c4791ba7c4d315397cbc422ea25d4a7cdd42e6d'], + }), + ('typeguard', '2.13.3', { + 'checksums': ['00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4'], + }), + ('jaxtyping', '0.2.29', { + 'checksums': ['e1cd916ed0196e40402b0638449e7d051571562b2cd68d8b94961a383faeb409'], + }), + ('equinox', '0.11.4', { + 'checksums': ['0033d9731083f402a855b12a0777a80aa8507651f7aa86d9f0f9503bcddfd320'], + }), + ('lineax', '0.0.4', { + 'checksums': ['e68f1eba2f352122fdce9adc0556684f31eb8364b1a00acee484dd6e44a34e5e'], + }), + ('jaxopt', '0.8.3', { + 'checksums': ['4b06dfa6f915a4f3291699606245af6069371a48dc5c92d4c507840d62990646'], + }), + ('ott_jax', '0.4.6', { + 'modulename': 'ott', + 'checksums': ['bc91f8d512cdb344439f5584712d76cd0650b6716b6686d53b828cc67abdbcba'], + }), + ('sparsecca', '0.3.1', { + 'checksums': ['be1526baebac5ce6efbc7190fd62a1cec13288c493f5d427024f66ca6afaec13'], + }), + ('PubChemPy', '1.0.4', { + 'checksums': ['24e9dc2fc90ab153b2764bf805e510b1410700884faf0510a9e7cf0d61d8ed0e'], + }), + ('blitzgsea', '1.3.42', { + 'checksums': ['dcc997b5d29d190d8632474f3bb57b5ead7fb1370b478c7f824b42782325a1ca'], + }), + ('pertpy', '0.7.0', { + 'checksums': ['273723b5b70f3cb714bb36d3234462014b72e133111eeaf08aa47153c9df14aa'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..cb33b614f6f --- /dev/null +++ b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'scArches' +version = '0.6.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://github.com/theislab/scarches' +description = """Single-cell architecture surgery (scArches) is a package for reference-based analysis of single-cell + data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Python-bundle-PyPI', '2023.06'), + ('matplotlib', '3.7.2'), + ('anndata', '0.10.5.post1'), + ('h5py', '3.9.0'), + ('leidenalg', '0.10.2'), + ('scanpy', '1.9.8'), + ('scikit-learn', '1.3.1'), + ('scvi-tools', '1.1.2', versionsuffix), + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('gdown', '5.1.0', { + 'checksums': ['550a72dc5ca2819fe4bcc15d80d05d7c98c0b90e57256254b77d0256b9df4683'], + }), + ('muon', '0.1.6', { + 'checksums': ['762feeb6f52f865cf79d0d0332cc742fe91c1885f668ce15794b62b3952b02f9'], + }), + ('newick', '1.9.0', { + 'checksums': ['9f81be96ec86aefca74d920fc0d6962d89a3156547003ca6915c2e6e31ad3ddf'], + }), + ('scHPL', '1.0.5', { + 'modulename': 'scHPL', + # unpin pandas and newick versions to be compatible with foss/2023a versions + 'preinstallopts': "sed -i 's/~=/>=/g' setup.py && sed -i 's/pandas>=1.1.2,<2/pandas/g' setup.py && ", + 'checksums': ['3eb62b2e65b1faba04b7bcb86f7bf6967a6301866a605551211b8f14fd27eced'], + }), + (name, version, { + 'checksums': ['187463c25781d5c5586c129ad137d96327a9f8604d530a696d5f568a9225d77c'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..b021ceb3c20 --- /dev/null +++ b/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'scib-metrics' +version = '0.5.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://scib-metrics.readthedocs.io' +description = "Accelerated and Python-only metrics for benchmarking single-cell integration outputs" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('hatchling', '1.18.0'), + ('poetry', '1.5.1'), +] +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('anndata', '0.10.5.post1'), + ('jax', '0.4.25', versionsuffix), + ('scikit-learn', '1.3.1'), + ('scanpy', '1.9.8'), + ('python-igraph', '0.11.4'), + ('matplotlib', '3.7.2'), + ('tqdm', '4.66.1'), + ('umap-learn', '0.5.5'), +] + +use_pip = True + +exts_list = [ + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('plottable', '0.1.5', { + 'checksums': ['235d762a31c82129dc5bf74205c103a14b1e4393d0f921cc0231be5de884041d'], + }), + ('pynndescent', '0.5.11', { + 'checksums': ['6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50'], + }), + ('rich', '13.7.1', { + 'checksums': ['9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432'], + }), + ('chex', '0.1.86', { + 'checksums': ['e8b0f96330eba4144659e1617c0f7a57b161e8cbb021e55c6d5056c7378091d1'], + }), + (name, version, { + 'sources': ['scib_metrics-%(version)s.tar.gz'], + 'checksums': ['74d10251acf1c11402b994faf063e55317881d7950fb78f6cef011d232a1e266'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..57e6f53d4c0 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build-core' +version = '0.10.6' + +homepage = 'https://scikit-build.readthedocs.io/en/latest/' +description = """Scikit-build-core is a complete ground-up rewrite of scikit-build on top of +modern packaging APIs. It provides a bridge between CMake and the Python build +system, allowing you to make Python modules with CMake.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('CMake', '3.29.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('scikit_build_core', version, { + 'checksums': ['5397db8f09ee050d145406c11deed06538bb0b261df95f8d2d6aaf8699f0126d'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb b/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb new file mode 100644 index 00000000000..f03005cda38 --- /dev/null +++ b/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb @@ -0,0 +1,25 @@ +easyblock = 'RPackage' + +name = 'sleuth' +version = '0.30.1' + +homepage = 'https://pachterlab.github.io/sleuth' +description = """Investigate RNA-Seq transcript abundance from kallisto and perform differential expression analysis.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/pachterlab/sleuth/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4c8efca5d726471cb71187e8db07097a50f63aadf42f6fa25c59e7eed635f982'] + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-Bioconductor', '3.18', '-R-%(rver)s'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..cbf3e47917e --- /dev/null +++ b/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'TRF' +version = '4.09.1' + +homepage = 'https://tandem.bu.edu/trf/trf.html' +description = """Tandem Repeats Finder: a program to analyze DNA sequences.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'Benson-Genomics-Lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['516015b625473350c3d1c9b83cac86baea620c8418498ab64c0a67029c3fb28a'] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +preconfigopts = "autoreconf -i -f && " + +sanity_check_paths = { + 'files': ['bin/trf'], + 'dirs': [], +} + +sanity_check_commands = ["trf -v"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb index 1d1c871f3d5..7b2f4888b23 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb @@ -51,7 +51,7 @@ dependencies = [ ('libpng', '1.6.39'), ('snappy', '1.1.10'), ('zlib', '1.2.13'), - ('grpcio', '1.57.0'), + ('tensorboard', '2.15.1'), ] # Dependencies created and updated using findPythonDeps, see: @@ -71,48 +71,6 @@ exts_list = [ 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', 'checksums': ['aedf21eec7fb2dc91150fc91a1ce12bc44dbb72278a08b58e79ff87c9e28f153'], }), - ('Werkzeug', '3.0.2', { - 'source_tmpl': SOURCELOWER_TAR_GZ, - 'checksums': ['e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d'], - }), - ('tensorboard-data-server', '0.7.2', { - 'source_tmpl': 'tensorboard_data_server-%(version)s-py3-none-any.whl', - 'checksums': ['7e0610d205889588983836ec05dc098e80f97b7e7bbff7e994ebb78f578d0ddb'], - }), - ('Markdown', '3.6', { - 'checksums': ['ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224'], - }), - ('oauthlib', '3.2.2', { - 'checksums': ['9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918'], - }), - ('requests-oauthlib', '2.0.0', { - 'checksums': ['b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9'], - }), - ('rsa', '4.9', { - 'checksums': ['e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21'], - }), - ('pyasn1-modules', '0.4.0', { - 'source_tmpl': 'pyasn1_modules-%(version)s.tar.gz', - 'checksums': ['831dbcea1b177b28c9baddf4c6d1013c24c3accd14a1873fffaa6a2e905f17b6'], - }), - ('cachetools', '5.3.3', { - 'checksums': ['ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105'], - }), - ('google-auth', '2.29.0', { - 'modulename': 'google.auth', - 'checksums': ['672dff332d073227550ffc7457868ac4218d6c500b155fe6cc17d2b13602c360'], - }), - ('google-auth-oauthlib', '1.2.0', { - 'checksums': ['292d2d3783349f2b0734a0a0207b1e1e322ac193c2c09d8f7c613fb7cc501ea8'], - }), - ('absl-py', '2.1.0', { - 'modulename': 'absl', - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), - ('tensorboard', '2.15.2', { - 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', - 'checksums': ['a6f6443728064d962caea6d34653e220e34ef8df764cb06a8212c17e1a8f0622'], - }), ('keras', '2.15.0', { 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', 'checksums': ['2dcc6d2e30cf9c951064b63c1f4c404b966c59caf09e01f3549138ec8ee0dd1f'], @@ -131,15 +89,6 @@ exts_list = [ ('astor', '0.8.1', { 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], }), - # Optional profile plugin + dependency - ('gviz-api', '1.10.0', { - 'source_tmpl': 'gviz_api-%(version)s.tar.gz', - 'checksums': ['846692dd8cc73224fc31b18e41589bd934e1cc05090c6576af4b4b26c2e71b90'], - }), - ('tensorboard-plugin-profile', '2.15.1', { - 'source_tmpl': 'tensorboard_plugin_profile-%(version)s.tar.gz', - 'checksums': ['84bb33e446eb4a9c0616f669fc6a42cdd40eadd9ae1d74bf756f4f0479993273'], - }), (name, version, { 'patches': [ 'TensorFlow-2.1.0_fix-cuda-build.patch', @@ -226,13 +175,4 @@ exts_list = [ }), ] -# Taken from tensorboard-2.15.1-gfbf-2023a.eb: -# Relax restriction on protobuf dependency as issue was fixed -# in https://github.com/protocolbuffers/upb/pull/1514 -# see also: https://github.com/easybuilders/easybuild-easyconfigs/pull/19671 -postinstallcmds = [ - 'sed -i "s/Requires-Dist: protobuf.*/Requires-Dist: protobuf >=3.19.6/g" ' + - '%(installdir)s/lib/python%(pyshortver)s/site-packages/tensorboard-2.15.2.dist-info/METADATA', -] - moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb index 506cbafd52b..ebca59072d6 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb @@ -47,7 +47,7 @@ dependencies = [ ('libpng', '1.6.39'), ('snappy', '1.1.10'), ('zlib', '1.2.13'), - ('grpcio', '1.57.0'), + ('tensorboard', '2.15.1'), ] # Dependencies created and updated using findPythonDeps, see: @@ -57,7 +57,6 @@ dependencies = [ # - portpicker for tests no longer needed (TF@e85860e838) # - opt_einsum now comes from ml_dtypes exts_list = [ - ('wrapt', '1.14.1', { 'checksums': ['380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d'], }), @@ -68,48 +67,6 @@ exts_list = [ 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', 'checksums': ['aedf21eec7fb2dc91150fc91a1ce12bc44dbb72278a08b58e79ff87c9e28f153'], }), - ('Werkzeug', '3.0.2', { - 'source_tmpl': SOURCELOWER_TAR_GZ, - 'checksums': ['e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d'], - }), - ('tensorboard-data-server', '0.7.2', { - 'source_tmpl': 'tensorboard_data_server-%(version)s-py3-none-any.whl', - 'checksums': ['7e0610d205889588983836ec05dc098e80f97b7e7bbff7e994ebb78f578d0ddb'], - }), - ('Markdown', '3.6', { - 'checksums': ['ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224'], - }), - ('oauthlib', '3.2.2', { - 'checksums': ['9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918'], - }), - ('requests-oauthlib', '2.0.0', { - 'checksums': ['b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9'], - }), - ('rsa', '4.9', { - 'checksums': ['e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21'], - }), - ('pyasn1-modules', '0.4.0', { - 'source_tmpl': 'pyasn1_modules-%(version)s.tar.gz', - 'checksums': ['831dbcea1b177b28c9baddf4c6d1013c24c3accd14a1873fffaa6a2e905f17b6'], - }), - ('cachetools', '5.3.3', { - 'checksums': ['ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105'], - }), - ('google-auth', '2.29.0', { - 'modulename': 'google.auth', - 'checksums': ['672dff332d073227550ffc7457868ac4218d6c500b155fe6cc17d2b13602c360'], - }), - ('google-auth-oauthlib', '1.2.0', { - 'checksums': ['292d2d3783349f2b0734a0a0207b1e1e322ac193c2c09d8f7c613fb7cc501ea8'], - }), - ('absl-py', '2.1.0', { - 'modulename': 'absl', - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), - ('tensorboard', '2.15.2', { - 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', - 'checksums': ['a6f6443728064d962caea6d34653e220e34ef8df764cb06a8212c17e1a8f0622'], - }), ('keras', '2.15.0', { 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', 'checksums': ['2dcc6d2e30cf9c951064b63c1f4c404b966c59caf09e01f3549138ec8ee0dd1f'], @@ -128,15 +85,6 @@ exts_list = [ ('astor', '0.8.1', { 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], }), - # Optional profile plugin + dependency - ('gviz-api', '1.10.0', { - 'source_tmpl': 'gviz_api-%(version)s.tar.gz', - 'checksums': ['846692dd8cc73224fc31b18e41589bd934e1cc05090c6576af4b4b26c2e71b90'], - }), - ('tensorboard-plugin-profile', '2.15.1', { - 'source_tmpl': 'tensorboard_plugin_profile-%(version)s.tar.gz', - 'checksums': ['84bb33e446eb4a9c0616f669fc6a42cdd40eadd9ae1d74bf756f4f0479993273'], - }), (name, version, { 'patches': [ 'TensorFlow-2.13.0_add-missing-system-protobuf-targets.patch', @@ -208,13 +156,4 @@ exts_list = [ }), ] -# Taken from tensorboard-2.15.1-gfbf-2023a.eb: -# Relax restriction on protobuf dependency as issue was fixed -# in https://github.com/protocolbuffers/upb/pull/1514 -# see also: https://github.com/easybuilders/easybuild-easyconfigs/pull/19671 -postinstallcmds = [ - 'sed -i "s/Requires-Dist: protobuf.*/Requires-Dist: protobuf >=3.19.6/g" ' + - '%(installdir)s/lib/python%(pyshortver)s/site-packages/tensorboard-2.15.2.dist-info/METADATA', -] - moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb index 2cfb8444ca4..daa5022fb1f 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb @@ -40,9 +40,7 @@ dependencies = [ ('zlib', '1.2.11'), ] -exts_default_options = { - 'sanity_pip_check': True, -} +sanity_pip_check = True use_pip = True # Dependencies created and updated using findPythonDeps.sh: diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb index 54fdbc44964..7a4a7766ca6 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb @@ -42,9 +42,7 @@ dependencies = [ ('zlib', '1.2.11'), ] -exts_default_options = { - 'sanity_pip_check': True, -} +sanity_pip_check = True use_pip = True # Dependencies created and updated using findPythonDeps.sh: diff --git a/easybuild/easyconfigs/t/Triton/Triton-2.1.0-disable_rocm_support.patch b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-disable_rocm_support.patch new file mode 100644 index 00000000000..13d736b4bfc --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-disable_rocm_support.patch @@ -0,0 +1,88 @@ +Disable experimental support for AMD GPUs +author: Alex Domingo (Vrije Universiteit Brussel) +author: Samuel Moors (Vrije Universiteit Brussel) +diff -ur triton-2.1.0.orig/CMakeLists.txt triton-2.1.0/CMakeLists.txt +--- triton-2.1.0.orig/CMakeLists.txt 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/CMakeLists.txt 2024-09-01 10:40:17.863374000 +0200 +@@ -70,7 +70,7 @@ + AMDGPUInfo AMDGPUcodegen + ) + else() +- find_package(LLVM 11 REQUIRED COMPONENTS "nvptx;amdgpu") ++ find_package(LLVM 11 REQUIRED COMPONENTS "nvptx") + endif() + + message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}") +@@ -89,9 +89,7 @@ + LLVMNVPTXCodeGen + LLVMNVPTXDesc + LLVMNVPTXInfo +- LLVMAMDGPUDisassembler + LLVMMCDisassembler +- LLVMAMDGPUCodeGen + LLVMMIRParser + LLVMGlobalISel + LLVMSelectionDAG +@@ -116,10 +114,7 @@ + LLVMObject + LLVMTextAPI + LLVMBitReader +- LLVMAMDGPUAsmParser + LLVMMCParser +- LLVMAMDGPUDesc +- LLVMAMDGPUUtils + LLVMMC + LLVMDebugInfoCodeView + LLVMDebugInfoMSF +@@ -127,7 +122,6 @@ + LLVMRemarks + LLVMBitstreamReader + LLVMBinaryFormat +- LLVMAMDGPUInfo + LLVMSupport + LLVMDemangle + LLVMPasses +diff -ur triton-2.1.0.orig/lib/Target/HSACO/HSACOTranslation.cpp triton-2.1.0/lib/Target/HSACO/HSACOTranslation.cpp +--- triton-2.1.0.orig/lib/Target/HSACO/HSACOTranslation.cpp 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/lib/Target/HSACO/HSACOTranslation.cpp 2024-09-02 21:27:09.233712000 +0200 +@@ -37,13 +37,6 @@ + + namespace { + +-void init_llvm() { +- LLVMInitializeAMDGPUTarget(); +- LLVMInitializeAMDGPUTargetInfo(); +- LLVMInitializeAMDGPUTargetMC(); +- LLVMInitializeAMDGPUAsmParser(); +- LLVMInitializeAMDGPUAsmPrinter(); +-} + + std::unique_ptr + initialize_module(llvm::Module *module, const std::string &triple, +@@ -155,7 +148,6 @@ + llir_to_amdgcn_and_hsaco(llvm::Module *module, std::string gfx_arch, + std::string gfx_triple, std::string gfx_features) { + +- init_llvm(); + + // verify and store llvm + auto module_obj = llvm::CloneModule(*module); +diff -ur triton-2.1.0.orig/python/src/triton.cc triton-2.1.0/python/src/triton.cc +--- triton-2.1.0.orig/python/src/triton.cc 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/python/src/triton.cc 2024-09-01 10:41:29.146862440 +0200 +@@ -60,7 +60,6 @@ + enum backend_t { + HOST, + CUDA, +- ROCM, + }; + + void init_triton_runtime(py::module &&m) { +@@ -68,7 +67,6 @@ + py::enum_(m, "backend", py::module_local()) + .value("HOST", HOST) + .value("CUDA", CUDA) +- .value("ROCM", ROCM) + .export_values(); + } + diff --git a/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..a1cdbe87df3 --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonPackage' + +name = 'Triton' +version = '2.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://triton-lang.org/' + +description = """Triton is a language and compiler for parallel programming. It aims to provide a +Python-based programming environment for productively writing custom DNN compute +kernels capable of running at maximal throughput on modern GPU hardware.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'openai' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s-disable_rocm_support.patch', + '%(name)s-%(version)s-use_eb_env_python_build.patch', +] +checksums = [ + {'v2.1.0.tar.gz': '4338ca0e80a059aec2671f02bfc9320119b051f378449cf5f56a1273597a3d99'}, + {'Triton-2.1.0-disable_rocm_support.patch': 'e4d7c0947c3287b3f0871a004e8b483963f637c9fa3ef6212ac3a34660de2a7c'}, + {'Triton-2.1.0-use_eb_env_python_build.patch': 'd68bf766c699ad6a778d9449d3bccdadc2f20f1f86ba13e1359ad297b12fbf7c'}, +] + +builddependencies = [ + ('Clang', '17.0.0_20230515', versionsuffix), # this is the exact commit that would be downloaded by Triton + ('CMake', '3.26.3'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), +] + +use_pip = True +download_dep_fail = True + +start_dir = 'python' + +preinstallopts = 'export LLVM_INCLUDE_DIRS=$EBROOTCLANG/include && ' +preinstallopts += 'export LLVM_LIBRARY_DIR=$EBROOTCLANG/lib && ' +preinstallopts += 'export LLVM_SYSPATH=$EBROOTCLANG && ' +preinstallopts += 'export TRITON_BUILD_WITH_CLANG_LLD=1 && ' + +# make pip print output of cmake +installopts = "-v " + +sanity_pip_check = True + +modluafooter = 'setenv("TRITON_PTXAS_PATH", pathJoin(os.getenv("CUDA_HOME"), "bin", "ptxas"))' + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch new file mode 100644 index 00000000000..650134e73be --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch @@ -0,0 +1,93 @@ +Fix Triton cmake build to use dependencies from EasyBuild +author: Alex Domingo (Vrije Universiteit Brussel) +author: Samuel Moors (Vrije Universiteit Brussel) +diff -ur triton-2.1.0.orig/lib/Target/LLVMIR/LLVMIRTranslation.cpp triton-2.1.0/lib/Target/LLVMIR/LLVMIRTranslation.cpp +--- triton-2.1.0.orig/lib/Target/LLVMIR/LLVMIRTranslation.cpp 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/lib/Target/LLVMIR/LLVMIRTranslation.cpp 2024-09-02 19:46:06.574421829 +0200 +@@ -35,6 +35,7 @@ + #endif + #include + #include ++#include // for getenv + + namespace fs = std::filesystem; + +@@ -177,6 +178,7 @@ + } + + if (!funcs.empty()) { ++ std::filesystem::path cuda_home = std::getenv("CUDA_HOME"); + static const std::string libdevice = "libdevice"; + // first search for environmental path + std::string env_path = ::triton::tools::getenv("TRITON_LIBDEVICE_PATH"); +@@ -189,8 +191,7 @@ + // `triton/third_party/cuda/lib/libdevice.10.bc` + static const auto this_library_path = getThisLibraryPath(); + static const auto runtime_path = +- this_library_path.parent_path().parent_path() / "third_party" / "cuda" / +- "lib" / "libdevice.10.bc"; ++ cuda_home / "nvvm" / "libdevice" / "libdevice.10.bc"; + if (fs::exists(runtime_path)) { + externLibs.try_emplace(libdevice, runtime_path.string()); + } else { +diff -ur triton-2.1.0.orig/python/setup.py triton-2.1.0/python/setup.py +--- triton-2.1.0.orig/python/setup.py 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/python/setup.py 2024-09-02 18:16:58.044760300 +0200 +@@ -202,13 +202,13 @@ + + def build_extension(self, ext): + lit_dir = shutil.which('lit') +- user_home = os.getenv("HOME") or os.getenv("USERPROFILE") or \ +- os.getenv("HOMEPATH") or None +- if not user_home: +- raise RuntimeError("Could not find user home directory") +- triton_cache_path = os.path.join(user_home, ".triton") ++ # user_home = os.getenv("HOME") or os.getenv("USERPROFILE") or \ ++ # os.getenv("HOMEPATH") or None ++ # if not user_home: ++ # raise RuntimeError("Could not find user home directory") ++ # triton_cache_path = os.path.join(user_home, ".triton") + # lit is used by the test suite +- thirdparty_cmake_args = get_thirdparty_packages(triton_cache_path) ++ # thirdparty_cmake_args = get_thirdparty_packages(triton_cache_path) + extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.path))) + # create build directories + if not os.path.exists(self.build_temp): +@@ -216,8 +216,9 @@ + # python directories + python_include_dir = sysconfig.get_path("platinclude") + cmake_args = [ ++ "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON", + "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON", +- "-DLLVM_ENABLE_WERROR=ON", ++ # "-DLLVM_ENABLE_WERROR=ON", + "-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=" + extdir, + "-DTRITON_BUILD_TUTORIALS=OFF", + "-DTRITON_BUILD_PYTHON_MODULE=ON", +@@ -227,7 +228,7 @@ + ] + if lit_dir is not None: + cmake_args.append("-DLLVM_EXTERNAL_LIT=" + lit_dir) +- cmake_args.extend(thirdparty_cmake_args) ++ # cmake_args.extend(thirdparty_cmake_args) + + # configuration + cfg = get_build_type() +@@ -245,7 +246,7 @@ + build_args += ["--", "/m"] + else: + cmake_args += ["-DCMAKE_BUILD_TYPE=" + cfg] +- max_jobs = os.getenv("MAX_JOBS", str(2 * os.cpu_count())) ++ max_jobs = os.getenv("MAX_JOBS", str(len(os.sched_getaffinity(0)))) + build_args += ['-j' + max_jobs] + + if check_env_flag("TRITON_BUILD_WITH_CLANG_LLD"): +@@ -262,7 +263,7 @@ + subprocess.check_call(["cmake", "--build", "."] + build_args, cwd=cmake_dir) + + +-download_and_copy_ptxas() ++# download_and_copy_ptxas() + + + setup( diff --git a/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5b532a99e9f --- /dev/null +++ b/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb @@ -0,0 +1,63 @@ +easyblock = 'CMakeMake' + +name = 'TurboVNC' +version = '3.1.2' + +homepage = 'https://www.turbovnc.org' +description = """TurboVNC is a derivative of VNC (Virtual Network Computing) that is tuned to provide + peak performance for 3D and video workloads.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(namelower)s/archive'] +sources = ['%(version)s.tar.gz'] + +checksums = [ + '98629cd2b676df5d30df51c69edd97cf99b395c3080cc55e2f997ac33a7d40de', # 3.0.1.tar.gz +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('Java', '21.0.2', '', SYSTEM), + ('X11', '20240607'), + ('pixman', '0.43.4'), + ('libjpeg-turbo', '3.0.1'), + ('Mesa', '24.1.3'), + ('libGLU', '9.0.3'), + ('libglvnd', '1.7.0'), + ('OpenSSL', '3', '', SYSTEM), +] + +osdependencies = [('pam-devel', 'libpam0g-dev')] + +configopts = "-DTVNC_BUILDJAVA=0 -DTVNC_SYSTEMX11=1 " +configopts += "-DX11_X11_LIB=$EBROOTX11/lib/libX11.%s " % SHLIB_EXT +configopts += "-DX11_Xau_LIB=$EBROOTX11/lib/libXau.%s " % SHLIB_EXT +configopts += "-DX11_SM_LIB=$EBROOTX11/lib/libSM.%s " % SHLIB_EXT +configopts += "-DX11_ICE_LIB=$EBROOTX11/lib/libICE.%s " % SHLIB_EXT +configopts += "-DX11_Pixman_LIB=$EBROOTPIXMAN/lib/libpixman-1.%s.0 " % SHLIB_EXT +configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_egl_LIBRARY=$EBROOTLIBGLVND/lib/libEGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_opengl_LIBRARY=$EBROOTLIBGLVND/lib/libOpenGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_glx_LIBRARY=$EBROOTLIBGLVND/lib/libGLX.%s " % SHLIB_EXT + +# if installdir starts with /opt, i.e. /opt/xxx, CMake will set SYSCONFDIR to /etc/opt/xxx instead of /opt/xxx/etc +# https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html +# the solution is to define CMAKE_INSTALL_SYSCONFDIR explicitly +configopts += "-DCMAKE_INSTALL_SYSCONFDIR=%(installdir)s/etc " + +# remove etc/turbovncserver-security.conf, to avoid errors like: +# (EE) Fatal server error: +# (EE) ERROR: .../TurboVNC/2.2.3-GCCcore-8.2.0/etc/turbovncserver-security.conf must be owned by you or by root +postinstallcmds = ['rm -rf %(installdir)s/etc/turbovncserver-security.conf'] + +sanity_check_paths = { + 'files': ['bin/vncserver', 'bin/vncpasswd', 'bin/Xvnc'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..94cf0915ff9 --- /dev/null +++ b/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb @@ -0,0 +1,66 @@ +easyblock = 'CMakeMake' + +name = 'tesseract' +version = '5.3.4' +_tessdata_ver = '4.1.0' + +homepage = 'https://github.com/tesseract-ocr/tesseract' +description = """Tesseract is an optical character recognition engine""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'tesseract-ocr' +source_urls = [GITHUB_SOURCE] +sources = [ + '%(version)s.tar.gz', + { + 'source_urls': ['https://github.com/tesseract-ocr/tessdata_best/archive/'], + 'download_filename': '%s.tar.gz' % _tessdata_ver, + 'filename': 'tessdata_best-%s.tar.gz' % _tessdata_ver, + }, +] +checksums = [ + {'5.3.4.tar.gz': '141afc12b34a14bb691a939b4b122db0d51bd38feda7f41696822bacea7710c7'}, + {'tessdata_best-4.1.0.tar.gz': 'bb05b738298ae73e7130e2913ed002b49d94cd1cea508e63be1928fe47770b32'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), + ('pkgconf', '1.9.5') +] + +dependencies = [ + ('zlib', '1.2.13'), + ('libpng', '1.6.39'), + ('libjpeg-turbo', '2.1.5.1'), + ('LibTIFF', '4.5.0'), + ('Leptonica', '1.84.1'), + ('libarchive', '3.6.2'), + ('ICU', '73.2'), + ('fontconfig', '2.14.2'), + ('GLib', '2.77.1'), + ('cairo', '1.17.8'), + ('Pango', '1.50.14'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +postinstallcmds = [ + 'rm %(builddir)s/tessdata_best-*/configs', + 'rm -rf %(builddir)s/tessdata_best-*/tessconfigs', + 'mv %(builddir)s/tessdata_best-*/* %(installdir)s/share/tessdata' +] + +modextrapaths = { + 'TESSDATA_PREFIX': 'share/tessdata', +} + +sanity_check_paths = { + 'files': ['bin/tesseract', 'lib/libtesseract.a', 'lib/libtesseract.%s' % SHLIB_EXT], + 'dirs': ['share/tessdata', 'include/tesseract'] +} + +sanity_check_commands = ['tesseract --version', 'tesseract --list-langs'] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b9d92f49462 --- /dev/null +++ b/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +# # +# Author: Robert Mijakovic +# # +easyblock = 'PythonPackage' + +name = 'tqdm' +version = '4.66.5' + +homepage = 'https://github.com/tqdm/tqdm' +description = "A fast, extensible progress bar for Python and CLI" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e1020aef2e5096702d8a025ac7d16b1577279c9d63f8375b63083e9a5f0fcbad'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..552279e3ffe --- /dev/null +++ b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb @@ -0,0 +1,21 @@ +easyblock = 'PythonPackage' + +name = 'typing-extensions' +version = '4.11.0' + +homepage = 'https://github.com/python/typing_extensions' +description = "Typing Extensions - Backported and Experimental Type Hints for Python" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = ['typing_extensions-%(version)s.tar.gz'] +checksums = ['83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/v/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb b/easybuild/easyconfigs/v/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..72cd90736a4 --- /dev/null +++ b/easybuild/easyconfigs/v/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb @@ -0,0 +1,47 @@ +# Contribution from the Crick HPC team +# uploaded by J. Sassmannshausen +# updated by Valentin Plugaru 2019-09-26 +# updated by Paul Melis 2022-10-07, 2023-08-18 + +easyblock = 'CMakeMake' + +name = 'VirtualGL' +version = '3.1.1' + +homepage = 'https://virtualgl.org/' +description = """VirtualGL is an open source toolkit that gives any Linux or +Unix remote display software the ability to run OpenGL applications with full +hardware acceleration.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/VirtualGL/virtualgl/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['79c0d76993814d9ed9fdc29908de1cc6da08f41931bc8363084fdfae03f53ce8'] +patches = [] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +dependencies = [ + ('libjpeg-turbo', '3.0.1'), + ('Mesa', '24.1.3'), + ('libGLU', '9.0.3'), + ('pocl', '6.0'), + ('X11', '20240607'), +] + +local_binaries = [ + 'cpustat', 'glreadtest', 'glxinfo', 'glxspheres64', 'nettest', 'tcbench', + 'vglclient', 'vglconfig', 'vglconnect', 'vglgenkey', 'vgllogin', 'vglrun', + 'vglserver_config' +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries], + 'dirs': ['lib64', 'share', 'include'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ab4e77dea46 --- /dev/null +++ b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'versioningit' +version = '3.1.2' + +homepage = 'https://github.com/jwodder/versioningit' +description = """versioningit is yet another Python packaging plugin for automatically determining your +package’s version based on your version control repository’s tags. +Unlike others, it allows easy customization of the version format and even lets you easily override +the separate functions used for version extraction & calculation.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] +dependencies = [('Python', '3.12.3')] + +sources = [SOURCE_TAR_GZ] +checksums = ['4db83ed99f56b07d83940bee3445ca46ca120d13b6b304cdb5fb44e5aa4edec0'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb b/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb new file mode 100644 index 00000000000..f3b254591f5 --- /dev/null +++ b/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'ConfigureMake' + +name = 'worker' +version = '1.6.13' + +homepage = 'https://github.com/gjbex/worker' +description = """The Worker framework has been developed to help deal with parameter exploration experiments + that would otherwise result in many jobs, forcing the user resort to scripting to retain her sanity; + see also https://vscentrum.be/neutral/documentation/cluster-doc/running-jobs/worker-framework.""" + +local_tcname = 'iimpi' +local_tcver = '2023a' +toolchain = {'name': local_tcname, 'version': local_tcver} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/gjbex/worker/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fixintel.patch'] +checksums = [ + 'b42b8566d82048c706427913c8f7edcd9f5892d61f190ce1f49e428113b7e1bc', # 1.6.13.tar.gz + 'c28bbc837ec5d6fb3390df668b06e0b5169ca31dede907336a2b0637c4a81504', # worker-1.6.13_fixintel.patch +] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +# adjust worker configuration file +# note: tweak this to your local setup +postinstallcmds = [ + 'sed -i "s/ cores_per_node = .*/ cores_per_node = 16/g" %(installdir)s/conf/worker.conf', + 'sed -i "s@ qsub = .*@ qsub = `which qsub`@g" %(installdir)s/conf/worker.conf', + 'sed -i "s/ email = .*/ email = hpc-support@example.com/g" %(installdir)s/conf/worker.conf', + 'sed -i "s/ unload_modules = .*/ unload_modules = %s/g" %%(installdir)s/conf/worker.conf' % (local_tcname), + 'sed -i "s@ mpi_module = .*@ mpi_module = %s/%s@g" %%(installdir)s/conf/worker.conf' % (local_tcname, local_tcver), + 'sed -i "s@ module_path = .*@ module_path = %(installdir)s/../../../modules/all@g" %(installdir)s/conf/worker.conf', + "echo PERL=\\'`which perl`\\' > %(installdir)s/conf/worker_perl.sh", +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['wcat', 'wconvert', 'wload', 'worker', 'wreduce', 'wresume', 'wsub', + 'wsummarize']], + 'dirs': ['lib/perl', 'lib/tt'], +} + +sanity_check_commands = ["wsub -help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb b/easybuild/easyconfigs/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb new file mode 100644 index 00000000000..c8454e53dbb --- /dev/null +++ b/easybuild/easyconfigs/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb @@ -0,0 +1,37 @@ +easyblock = "PythonBundle" + +name = 'xskillscore' +version = '0.0.26' + +homepage = 'https://xskillscore.readthedocs.io' +description = """ +xskillscore is an open source project and Python package that provides verification metrics of +deterministic (and probabilistic from properscoring) forecasts with xarray. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('dask', '2023.9.2'), + ('SciPy-bundle', '2023.07'), + ('statsmodels', '0.14.1'), + ('xarray', '2023.9.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('properscoring', '0.1', { + 'checksums': ['b0cc4963cc218b728d6c5f77b3259c8f835ae00e32e82678cdf6936049b93961'], + }), + ('xhistogram', '0.3.2', { + 'checksums': ['56b0751e1469eaed81710f644c8ba5c574b51883baa2feee26a95f2f708f91a1'], + }), + (name, version, { + 'checksums': ['780a424c1ab3eedf526a45ba8e6cf6dca61b17339252115a4e25ea8c5833ada5'], + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..266b927072a --- /dev/null +++ b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'zlib-ng' +version = '2.2.1' + +homepage = 'https://github.com/zlib-ng/zlib-ng' +description = """zlib data compression library for the next generation systems""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), + ('versioningit', '3.1.2'), +] + +dependencies = [ + ('Python', '3.12.3'), +] + +components = [ + (name, version, { + 'easyblock': 'CMakeMake', + 'source_urls': ['https://github.com/zlib-ng/zlib-ng/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['ec6a76169d4214e2e8b737e0850ba4acb806c69eeace6240ed4481b9f5c57cdf'], + 'start_dir': '%(name)s-%(version)s', + 'configopts': '-DZLIB_ENABLE_TESTS=ON', + }), + +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, '0.5.0', { + 'source_tmpl': 'zlib_ng-%(version)s.tar.gz', + 'checksums': ['3322c4300253a054af3d3aafa2f3858dceee3a577810122ba55eff756bf35ef2'], + 'preinstallopts': 'PYTHON_ZLIB_NG_LINK_DYNAMIC=true', + 'modulename': 'zlib_ng', + }), +] + +sanity_check_paths = { + 'files': ['include/zconf-ng.h', 'include/zlib-ng.h', 'lib/libz-ng.a', 'lib/libz-ng.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/setup.py b/setup.py index ae4897821b1..a2774a7bbe2 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '4.9.3' +VERSION = '4.9.4' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index dc24739ec01..74f98af5cf8 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -1001,14 +1001,13 @@ def test_easyconfig_locations(self): # ignore git/svn dirs & archived easyconfigs if '/.git/' in dirpath or '/.svn/' in dirpath or '__archive__' in dirpath: continue - # check whether list of .eb files is non-empty - easyconfig_files = [fn for fn in filenames if fn.endswith('eb')] + # check whether list of .eb files is non-empty, only exception: TEMPLATE.eb + easyconfig_files = [fn for fn in filenames if fn.endswith('eb') and fn != 'TEMPLATE.eb'] if easyconfig_files: # check whether path matches required pattern if not easyconfig_dirs_regex.search(dirpath): - # only exception: TEMPLATE.eb - if not (dirpath.endswith('/easybuild/easyconfigs') and filenames == ['TEMPLATE.eb']): - self.assertTrue(False, "List of easyconfig files in %s is empty: %s" % (dirpath, filenames)) + if not dirpath.endswith('/easybuild/easyconfigs'): + self.fail("There should be no easyconfig files in %s, found %s" % (dirpath, easyconfig_files)) def test_easyconfig_name_clashes(self): """Make sure there is not a name clash when all names are lowercase""" @@ -1029,7 +1028,7 @@ def test_easyconfig_name_clashes(self): duplicates[name] = names[name] if duplicates: - self.assertTrue(False, "EasyConfigs with case-insensitive name clash: %s" % duplicates) + self.fail("EasyConfigs with case-insensitive name clash: %s" % duplicates) @skip_if_not_pr_to_non_main_branch() def test_pr_sha256_checksums(self): @@ -1460,6 +1459,9 @@ def template_easyconfig_test(self, spec): ] failing_checks.extend("Old URL '%s' found" % old_url for old_url in old_urls if old_url in ec.rawtxt) + # Note the use of app.cfg which might contain sources populated by e.g. the Cargo easyblock + sources, patches, checksums = app.cfg['sources'], app.cfg['patches'], app.cfg['checksums'] + # make sure binutils is included as a (build) dep if toolchain is GCCcore if ec['toolchain']['name'] == 'GCCcore': # easyblocks without a build step @@ -1476,7 +1478,7 @@ def template_easyconfig_test(self, spec): requires_binutils &= bool(ec['name'] not in binutils_complete_dependencies) # if no sources/extensions/components are specified, it's just a bundle (nothing is being compiled) - requires_binutils &= bool(ec['sources'] or ec['exts_list'] or ec.get('components')) + requires_binutils &= bool(sources or ec['exts_list'] or ec.get('components')) if requires_binutils: # dependencies() returns both build and runtime dependencies @@ -1507,13 +1509,13 @@ def template_easyconfig_test(self, spec): if openssl_osdep: failing_checks.append("OpenSSL should not be listed as OS dependency") - src_cnt = len(ec['sources']) - patch_checksums = ec['checksums'][src_cnt:] + src_cnt = len(sources) + patch_checksums = checksums[src_cnt:] # make sure all patch files are available specdir = os.path.dirname(spec) basedir = os.path.dirname(os.path.dirname(specdir)) - for idx, patch in enumerate(ec['patches']): + for idx, patch in enumerate(patches): patch_dir = specdir if isinstance(patch, str): patch_name = patch @@ -1536,7 +1538,7 @@ def template_easyconfig_test(self, spec): # make sure 'source' step is not being skipped, # since that implies not verifying the checksum - if ec['checksums'] and ('source' in ec['skipsteps']): + if checksums and ('source' in ec['skipsteps']): failing_checks.append("'source' step should not be skipped, since that implies not verifying checksums") for ext in ec.get_ref('exts_list'):