The opam repository for my Advent of Agentic Humps 2025

Dockerfile

Changed files
+32
+32
Dockerfile
···
+
# Local development Dockerfile using nixery.dev
+
# Based on .tangled/workflows/build.yml configuration
+
+
# Use nixery to get all the dependencies from the workflow
+
FROM nixery.dev/shell/stdenv/findutils/binutils/libunwind/ncurses/opam/git/gawk/gnupatch/gnum4/gnumake/gnutar/gnused/gnugrep/diffutils/gzip/bzip2/gcc/ocaml/pkg-config
+
+
# Set working directory
+
WORKDIR /workspace
+
+
# Copy the repository contents
+
COPY . .
+
+
# Ensure list-packages.sh is executable
+
RUN chmod +x list-packages.sh
+
+
# Initialize opam without sandboxing (as per workflow)
+
RUN opam init --disable-sandboxing -a -y
+
+
# Add the aoah-overlay repository
+
RUN opam repository add aoah-overlay .
+
+
# Install packages with tests
+
# Note: This step is commented out to allow interactive development
+
# Uncomment to pre-install packages in the image
+
# RUN opam install --confirm-level=unsafe-yes -v --with-test $(./list-packages.sh)
+
+
# Set up shell environment for interactive use
+
ENV OPAM_SWITCH_PREFIX=/root/.opam/default
+
ENV PATH=/root/.opam/default/bin:$PATH
+
+
# Default command opens a shell for interactive development
+
CMD ["/bin/sh"]