Skip to content

Commit

Permalink
progress on #429 BindCraft
Browse files Browse the repository at this point in the history
  • Loading branch information
PetrKralCZ committed Dec 10, 2024
1 parent daa802c commit 8edf001
Show file tree
Hide file tree
Showing 2 changed files with 286 additions and 0 deletions.
96 changes: 96 additions & 0 deletions 429_BindCraft/BindCraft-1.1.0-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -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.
190 changes: 190 additions & 0 deletions 429_BindCraft/jupyter-server-2.7.2-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -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'

0 comments on commit 8edf001

Please sign in to comment.