From 6619afb5044aaf441753c0a6bb189426c0cf28a4 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Wed, 16 Sep 2026 13:54:40 +0100 Subject: [PATCH 1/5] Update Renovate schedule and add custom managers --- .github/renovate.json | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json b/.github/renovate.json index c54154b..0b3e5d8 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -5,7 +5,7 @@ "helpers:pinGitHubActionDigestsToSemver" ], "timezone": "Europe/London", - "schedule": ["after 9am and before 5pm every weekday"], + "schedule": ["after 5am and before 5pm every weekday"], "dependencyDashboard": true, "assignees": ["jimboid"], "minimumReleaseAge": "3 days", @@ -15,5 +15,34 @@ "groupName": "GitHub Actions", "addLabels": ["ci", "dependencies"] } + ], + "customManagers": [ + { + "customType": "regex", + "managerFilePatterns": [ + "/(^|/)Dockerfile[^/]*$/" + ], + "matchStringsStrategy": "recursive", + "matchStrings": [ + "pip3? install[\\s\\S]*?(?(?:[\\w.-]+==[\\w.-]+[\\s\\\\]*)+)", + "(?[\\w.-]+)==(?[\\w.-]+)" + ], + "datasourceTemplate": "pypi", + "versioningTemplate": "pep440" + }, + { + "customType": "regex", + "managerFilePatterns": [ + "/(^|/)Dockerfile[^/]*$/" + ], + "matchStringsStrategy": "recursive", + "matchStrings": [ + "(?:mamba|conda) install[\\s\\S]*?(?(?:(?:[\\w-]+::)?[\\w.-]+=[\\w.-]+[\\s\\\\]*)+)", + "(?:(?[\\w-]+)::)?(?[\\w.-]+)=(?[\\w.-]+)" + ], + "datasourceTemplate": "conda", + "registryUrlTemplate": "https://api.anaconda.org/package/{{#if channel}}{{channel}}{{else}}conda-forge{{/if}}/", + "versioningTemplate": "pep440" + } ] } From 221eb81f0dd0e211cb4c35ac53887f4e93833677 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Wed, 16 Sep 2026 15:48:16 +0100 Subject: [PATCH 2/5] Refactor package installation in Dockerfile Updated package installation commands to use conda for better dependency management and added wildcard for gromacs version. --- docker/Dockerfile | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 2ff6760..f068a8e 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -11,14 +11,27 @@ USER $NB_USER WORKDIR $HOME # Install workshop deps -RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \ - mamba install conda-forge/linux-64::gromacs=2024.5=nompi_h5f56185_100 -y; \ - elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then \ - mamba install conda-forge/linux-aarch64::gromacs=2024.5=nompi_h9afd374_100 -y; \ - fi -RUN mamba install matplotlib=3.10.6 mdanalysis=2.9.0 numpy=2.3.3 scikit-learn=1.7.2 tqdm=4.67.1 mdtraj=1.11.0 iprogress ipywidgets -y -RUN pip install alphashape==1.3.1 click==8.3.0 click-log==0.4.0 coby==1.0.9 pbr==7.0.1 rtree==1.4.1 shapely==2.1.2 trimesh==4.8.3 vermouth==0.15.0 - +RUN conda install -y -c conda-forge \ + conda-forge::matplotlib=3.10.6 \ + conda-forge::mdanalysis=2.9.0 \ + conda-forge::numpy=2.3.3 \ + conda-forge::scikit-learn=1.7.2 \ + conda-forge::tqdm=4.67.1 \ + conda-forge::mdtraj=1.11.0 \ + conda-forge::iprogress=0.4 \ + conda-forge::ipywidgets=8.1.9 + conda-forge::gromacs=2024.5=nompi_* +RUN pip install --no-cache-dir \ + alphashape==1.3.1 \ + click==8.3.0 \ + click-log==0.4.0 \ + coby==1.0.9 \ + pbr==7.0.1 \ + rtree==1.4.1 \ + shapely==2.1.2 \ + trimesh==4.8.3 \ + vermouth==0.15.0 + # Get workshop files and move them to jovyan directory. COPY --chown=1000:100 . . RUN rm -rf environment.yml LICENSE README.md docker .git .github From 521f1dccf74a116f3494fa46e647c03305b7a4b6 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Wed, 16 Sep 2026 16:15:56 +0100 Subject: [PATCH 3/5] Fix Dockerfile formatting for ipywidgets line --- docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index f068a8e..f7b3ea5 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -19,7 +19,7 @@ RUN conda install -y -c conda-forge \ conda-forge::tqdm=4.67.1 \ conda-forge::mdtraj=1.11.0 \ conda-forge::iprogress=0.4 \ - conda-forge::ipywidgets=8.1.9 + conda-forge::ipywidgets=8.1.9 \ conda-forge::gromacs=2024.5=nompi_* RUN pip install --no-cache-dir \ alphashape==1.3.1 \ From 59117bb970fc43779e2c2aed7b588d9912b26022 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Wed, 16 Sep 2026 16:20:39 +0100 Subject: [PATCH 4/5] Update matplotlib version in Dockerfile --- docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index f7b3ea5..2d3296b 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -12,7 +12,7 @@ WORKDIR $HOME # Install workshop deps RUN conda install -y -c conda-forge \ - conda-forge::matplotlib=3.10.6 \ + conda-forge::matplotlib=3.11.1 \ conda-forge::mdanalysis=2.9.0 \ conda-forge::numpy=2.3.3 \ conda-forge::scikit-learn=1.7.2 \ From 66b53adcfa54029d8410f1452416045055d51390 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Thu, 17 Sep 2026 09:50:51 +0100 Subject: [PATCH 5/5] Update Dockerfile --- docker/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 2d3296b..2c62828 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -12,7 +12,7 @@ WORKDIR $HOME # Install workshop deps RUN conda install -y -c conda-forge \ - conda-forge::matplotlib=3.11.1 \ + conda-forge::matplotlib=3.10.6 \ conda-forge::mdanalysis=2.9.0 \ conda-forge::numpy=2.3.3 \ conda-forge::scikit-learn=1.7.2 \ @@ -20,7 +20,7 @@ RUN conda install -y -c conda-forge \ conda-forge::mdtraj=1.11.0 \ conda-forge::iprogress=0.4 \ conda-forge::ipywidgets=8.1.9 \ - conda-forge::gromacs=2024.5=nompi_* + conda-forge::gromacs=2026.3=nompi_* RUN pip install --no-cache-dir \ alphashape==1.3.1 \ click==8.3.0 \