diff --git a/easybuild/easyconfigs/d/DynaMight/DynaMight-0.0.0.20241219.d7d75e8-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/DynaMight/DynaMight-0.0.0.20241219.d7d75e8-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 000000000000..6be2cbb316e7 --- /dev/null +++ b/easybuild/easyconfigs/d/DynaMight/DynaMight-0.0.0.20241219.d7d75e8-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,53 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2025/05 +easyblock = 'PythonBundle' + +name = 'DynaMight' +_v = '0.0.0' +_sha = 'd7d75e888635d5997b6183af77790d08cc6c7f26' +_date = '20241219' +version = '%s.%s.%s' % (_v, _date, _sha[:7]) + +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/3dem/DynaMight' +description = """Estimating dynamics from cryo-EM images and use them to improve your map (maybe)""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('CUDA', '12.1.1', '', SYSTEM), + ('mrcfile', '1.5.0'), + ('matplotlib', '3.7.2'), + ('Biopython', '1.83'), + ('napari', '0.4.19.post1'), + ('starfile', '0.5.12', '-pandas-2.1.4'), + ('scikit-learn', '1.3.1'), + ('umap-learn', '0.5.5'), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('t-SNE-CUDA', '3.0.1', versionsuffix), +] + +# avoid hatchling requirement to install (compare genomepy-0.15.0-foss-2022a.eb) +# (since installing it introduces conflicting version requirements with poetry included with Python) +_preinstallopts_no_hatchling = """sed -i -e 's/^build-backend = .*/build-backend = "setuptools.build_meta"/g' """ +_preinstallopts_no_hatchling += """-e 's/^requires = .*/requires = ["setuptools"]/g' """ +_preinstallopts_no_hatchling += """-e 's/dynamic = \\["version"\\]/version = "%(version)s"/g' pyproject.toml && """ +exts_list = [ + (name, '%s.%s' % (_v, _date), { + 'preinstallopts': _preinstallopts_no_hatchling, + 'source_urls': ['https://github.com/3dem/DynaMight/archive/'], + 'sources': [{ + 'download_filename': '%s.tar.gz' % _sha, + 'filename': '%(name)s-%(version)s.tar.gz' + }], + 'checksums': ['10a8bde14b8cb7150ff375cc5e7ebe4d6e09f0a1bf2cca17db91d3a6218587de'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'bio'