Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions Dockerfile.actl
Original file line number Diff line number Diff line change
Expand Up @@ -79,12 +79,15 @@ case "$-" in
;;
esac
EOF
# Smoke-check only binaries inherited from base/gromacs: the ENV PATH override above can shadow
# them silently. Packages from the apt layer need no check -- apt-get already fails the build.
RUN chmod 0644 /usr/local/share/actl-md-workflows-shell-init.sh \
&& printf '\n# Astera md-workflows environment\n[ -r /usr/local/share/actl-md-workflows-shell-init.sh ] && . /usr/local/share/actl-md-workflows-shell-init.sh\n' >> /etc/bash.bashrc \
&& printf '\n# Astera md-workflows environment\n[ -r /usr/local/share/actl-md-workflows-shell-init.sh ] && . /usr/local/share/actl-md-workflows-shell-init.sh\n' >> /etc/zsh/zshrc \
&& for cmd in \
md_workflows.mdmx gmx micromamba curl wget rsync tini vim nano emacs git zsh htop tmux ncdu ping dig; do \
command -v "${cmd}" >/dev/null; \
md_workflows.mdmx gmx micromamba less tcsh; do \
command -v "${cmd}" >/dev/null \
|| { echo "actl: inherited binary missing from PATH: ${cmd}" >&2; exit 1; }; \
done

WORKDIR /home/dev
Expand Down
8 changes: 8 additions & 0 deletions Dockerfile.base
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,14 @@ apt-get install -y /tmp/chimerax.deb \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir -p /home/dev/.config/ChimeraX

# ---------- interactive shells & pager ----------
# Kept out of the build-time list at the top so runtime additions don't invalidate the unpinned
# conda solve and ChimeraX fetch above. tcsh also provides /bin/csh (via update-alternatives).
RUN apt-get update && apt-get install -y --no-install-recommends \
less \
tcsh \
&& rm -rf /var/lib/apt/lists/*

# ---------- shell init (minimal) ----------
# Runs as root by default (see end of file); downstream images (Dockerfile.actl) own the
# general user environment. Put the micromamba hook in the *global* bashrc so `micromamba
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@ without rebuilding the base:
| base | `Dockerfile.base` | CUDA 12.6 devel toolchain, micromamba/conda `lunus` env, lunus, ChimeraX. Architecture-neutral. |
| gromacs | `Dockerfile.gromacs` | GROMACS (CUDA, tuned for H100 / AVX-512 by default) + the `md_workflows` package. The consumable image. |

(An Astera-specific `Dockerfile.actl` overlay lives on the `astera` branch and adds workspace
conventions on top of `gromacs`.)
(An Astera-specific `Dockerfile.actl` overlay adds workspace conventions on top of `gromacs`. It
is tracked here so it stays under CI lint coverage, but is built and published only from the
`astera` deployment branch.)

## 1) Build the images

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "md-workflows"
version = "0.1.0"
version = "0.1.1"
description = "Molecular dynamics workflow orchestration scripts"
requires-python = ">=3.10"

Expand Down
Loading