diff --git a/429_BindCraft/BindCraft-1.1.0-foss-2023a.eb b/429_BindCraft/BindCraft-1.1.0-foss-2023a.eb new file mode 100644 index 00000000..53a1f841 --- /dev/null +++ b/429_BindCraft/BindCraft-1.1.0-foss-2023a.eb @@ -0,0 +1,96 @@ +easyblock = 'Tarball' + +name = 'BindCraft' +version = '1.1.0' + +homepage = 'https://github.com/martinpacesa/BindCraft' +description = """Simple binder design pipeline using AlphaFold2 backpropagation, MPNN, and PyRosetta. + Select your target and let the script do the rest of the work and finish once you have enough designs to order!""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/martinpacesa/BindCraft/archive/refs/tags/'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['c682f59501f0bcfbb8289fd066362dcea37ed8553cdff5c794a2baa6d4149ce7'] + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Seaborn', '0.13.2'), + ('tqdm', '4.66.1'), + ('OpenMM', '8.0.0'), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('PyRosetta', '4.release-387'), + ('jax', '0.4.25'), + ('dm-haiku', '0.0.13'), + ('dm-tree', '0.1.8'), + ('ml-collections', '0.1.1'), + ('Optax', '0.2.2'), + ('py3Dmol', '2.1.0'), + ('JupyterLab', '4.0.5'), + ('Flax', '0.8.4'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} +exts_list = [ + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + # older version compatible with `jupyterlab-4.0.5` + ('notebook', '7.0.8', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['7f421b3fd46a17d91830e724b94e8e9ae922af152ebfd48b1e13ae4a07d8193c'], + }), + ('jupyter', '1.1.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83'], + }), + ('immutabledict', '4.2.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d728b2c2410d698d95e6200237feb50a695584d20289ad3379a439aa3d90baba'], + }), + ('colabdesign', '1.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8f556fb575d2bbef79fa1789698d55221f2cc51df38f2cc054f38cb6ecc08e27'], + }), +] + +fix_python_shebang_for = ['bindcraft.py'] + +postinstallcmds = ['chmod a+x %(installdir)s/bindcraft.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': ['', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_paths = { + 'files': ['bindcraft.py'], + 'dirs': [], +} + +sanity_check_commands = ["bindcraft.py --help"] + +moduleclass = 'bio' + +# TODO +# hatch-jupyter-builder 0.8.3 requires hatchling, which is not installed. +# hatch-nodejs-version 0.3.1 requires hatchling, which is not installed. diff --git a/429_BindCraft/jupyter-server-2.7.2-GCCcore-12.3.0.eb b/429_BindCraft/jupyter-server-2.7.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000..76b36f75 --- /dev/null +++ b/429_BindCraft/jupyter-server-2.7.2-GCCcore-12.3.0.eb @@ -0,0 +1,190 @@ +easyblock = 'PythonBundle' + +name = 'jupyter-server' +version = "2.7.2" + +homepage = 'https://jupyter.org/' +description = """The Jupyter Server provides the backend (i.e. the core services, APIs, and REST +endpoints) for Jupyter web applications like Jupyter notebook, JupyterLab, and +Voila.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('maturin', '1.1.0'), +] +dependencies = [ + ('Python', '3.11.3'), + ('IPython', '8.14.0'), + ('PyYAML', '6.0'), + ('PyZMQ', '25.1.1'), + ('tornado', '6.3.2'), +] + +sanity_pip_check = True +use_pip = True + +# WARNING: the versions of ipywidgets, widgetsnbextension and jupyterlab_widgets are tied between them +# use the versions published in a single release commit instead of blindly pushing to last available version, +# see for instance https://github.com/jupyter-widgets/ipywidgets/commit/b728926f58ed3ffef08f716998ac6c226dafc1aa + +exts_list = [ + ('hatch_nodejs_version', '0.3.1', { + 'checksums': ['0e55fd713d92c5c1ccfee778efecaa780fd8bcd276d4ca7aff9f6791f6f76d9c'], + }), + ('hatch_jupyter_builder', '0.8.3', { + 'checksums': ['0dbd14a8aef6636764f88a8fd1fcc9a91921e5c50356e6aab251782f264ae960'], + }), + ('websocket-client', '1.6.1', { + 'modulename': 'websocket', + 'checksums': ['c951af98631d24f8df89ab1019fc365f2227c0892f12fd150e935607c79dd0dd'], + }), + ('terminado', '0.17.1', { + 'checksums': ['6ccbbcd3a4f8a25a5ec04991f39a0b8db52dfcd487ea0e578d977e6752380333'], + }), + ('Send2Trash', '1.8.2', { + 'checksums': ['c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312'], + }), + ('prometheus_client', '0.17.1', { + 'checksums': ['21e674f39831ae3f8acde238afd9a27a37d0d2fb5a28ea094f0ce25d2cbf2091'], + }), + ('overrides', '7.4.0', { + 'checksums': ['9502a3cca51f4fac40b5feca985b6703a5c1f6ad815588a7ca9e285b9dca6757'], + }), + ('jupyter_core', '5.3.1', { + 'checksums': ['5ba5c7938a7f97a6b0481463f7ff0dbac7c15ba48cf46fa4035ca6e838aa1aba'], + }), + ('fastjsonschema', '2.18.0', { + 'checksums': ['e820349dd16f806e4bd1467a138dced9def4bc7d6213a34295272a6cac95b5bd'], + }), + ('tinycss2', '1.2.1', { + 'checksums': ['8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627'], + }), + ('pandocfilters', '1.5.0', { + 'checksums': ['0b679503337d233b4339a817bfc8c50064e2eff681314376a47cb582305a7a38'], + }), + ('mistune', '3.0.1', { + 'checksums': ['e912116c13aa0944f9dc530db38eb88f6a77087ab128f49f84a48f4c05ea163c'], + }), + ('deprecation', '2.1.0', { + 'checksums': ['72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff'], + }), + ('jupyter_packaging', '0.12.3', { + 'checksums': ['9d9b2b63b97ffd67a8bc5391c32a421bc415b264a32c99e4d8d8dd31daae9cf4'], + }), + ('jupyterlab_pygments', '0.2.2', { + 'checksums': ['7405d7fde60819d905a9fa8ce89e4cd830e318cdad22a0030f7a901da705585d'], + }), + ('defusedxml', '0.7.1', { + 'checksums': ['1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69'], + }), + ('bleach', '6.0.0', { + 'checksums': ['1a1a85c1595e07d8db14c5f09f09e6433502c51c595970edc090551f0db99414'], + }), + ('arrow', '1.2.3', { + 'checksums': ['3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1'], + }), + ('nbformat', '5.9.2', { + 'checksums': ['5f98b5ba1997dff175e77e0c17d5c10a96eaed2cbd1de3533d1fc35d5e111192'], + }), + ('nbclient', '0.8.0', { + 'checksums': ['f9b179cd4b2d7bca965f900a2ebf0db4a12ebff2f36a711cb66861e4ae158e55'], + }), + ('jupyter_client', '8.3.0', { + 'checksums': ['3af69921fe99617be1670399a0b857ad67275eefcfa291e2c81a160b7b650f5f'], + }), + ('nbconvert', '7.7.4', { + 'checksums': ['1113d039fa3fc3a846ffa5a3b0a019e85aaa94c566a09fa0c400fb7638e46087'], + }), + ('jupyter_server_terminals', '0.4.4', { + 'checksums': ['57ab779797c25a7ba68e97bcfb5d7740f2b5e8a83b5e8102b10438041a7eac5d'], + }), + ('rfc3986_validator', '0.1.1', { + 'checksums': ['3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055'], + }), + ('rfc3339_validator', '0.1.4', { + 'checksums': ['138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b'], + }), + ('rpds_py', '0.9.2', { + 'modulename': 'rpds', + 'checksums': ['8d70e8f14900f2657c249ea4def963bed86a29b81f81f5b76b5a9215680de945'], + }), + ('referencing', '0.30.2', { + 'checksums': ['794ad8003c65938edcdbc027f1933215e0d0ccc0291e3ce20a4d87432b59efc0'], + }), + ('python-json-logger', '2.0.7', { + 'modulename': 'pythonjsonlogger', + 'checksums': ['23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c'], + }), + ('jsonschema_specifications', '2023.7.1', { + 'checksums': ['c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb'], + }), + ('jsonschema', '4.18.0', { + 'checksums': ['8caf5b57a990a98e9b39832ef3cb35c176fe331414252b6e1b26fd5866f891a4'], + }), + ('jupyter_events', '0.7.0', { + 'checksums': ['7be27f54b8388c03eefea123a4f79247c5b9381c49fb1cd48615ee191eb12615'], + }), + ('argon2-cffi-bindings', '21.2.0', { + 'modulename': '_argon2_cffi_bindings', + 'checksums': ['bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3'], + }), + ('argon2_cffi', '23.1.0', { + 'modulename': 'argon2', + 'checksums': ['879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08'], + }), + ('sniffio', '1.3.0', { + 'checksums': ['e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101'], + }), + ('anyio', '3.7.1', { + 'checksums': ['44a3c9aba0f5defa43261a8b3efb97891f2bd7d804e0e1f56419befa1adfc780'], + }), + ('jupyter_server', version, { + 'checksums': ['d64fb4e593907290e5df916e3c9399c15ab2cd7bdb71cbcd1d36452dbfb30523'], + }), + ('jupyterlab_widgets', '3.0.8', { + 'checksums': ['d428ab97b8d87cc7c54cbf37644d6e0f0e662f23876e05fa460a73ec3257252a'], + }), + ('widgetsnbextension', '4.0.8', { + 'checksums': ['9ec291ba87c2dfad42c3d5b6f68713fa18be1acd7476569516b2431682315c17'], + }), + ('comm', '0.1.4', { + 'checksums': ['354e40a59c9dd6db50c5cc6b4acc887d82e9603787f83b68c01a80a923984d15'], + }), + ('ipywidgets', '8.1.0', { + 'checksums': ['ce97dd90525b3066fd00094690964e7eac14cf9b7745d35565b5eeac20cce687'], + }), + # The following few extensions are needed for e.g. JupyterLab but also nbclassic. + # Avoid duplication by making it part of this bundle + ('notebook_shim', '0.2.3', { + 'checksums': ['f69388ac283ae008cd506dda10d0288b09a017d822d5e8c7129a152cbd3ce7e9'], + }), + ('nest_asyncio', '1.5.7', { + 'checksums': ['6a80f7b98f24d9083ed24608977c09dd608d83f91cccc24c9d2cba6d10e01c10'], + }), + ('ipykernel', '6.25.1', { + 'checksums': ['050391364c0977e768e354bdb60cbbfbee7cbb943b1af1618382021136ffd42f'], + }), + ('ipython_genutils', '0.2.0', { + 'checksums': ['eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8'], + }), + ('debugpy', '1.6.7.post1', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['1093a5c541af079c13ac8c70ab8b24d1d35c8cacb676306cf11e57f699c02926'], + }), +] + +sanity_check_paths = { + 'files': ['bin/jupyter'], + 'dirs': ['share/jupyter', 'etc/jupyter'], +} + +sanity_check_commands = ['jupyter --help'] + +modextrapaths = { + 'JUPYTER_CONFIG_PATH': 'etc/jupyter', + 'JUPYTER_PATH': 'share/jupyter', +} + +moduleclass = 'tools'