diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b89b3d2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,30 @@ +FROM haskell:9.10 + +# Install system dependencies +RUN apt-get update && apt-get install -y \ + git \ + curl \ + && rm -rf /var/lib/apt/lists/* + +# Install Node.js (for GitHub Actions compatibility) +RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \ + apt-get install -y nodejs && \ + rm -rf /var/lib/apt/lists/* + +# Update cabal and install Haskell tools +RUN cabal update && \ + cabal install --install-method=copy --installdir=/usr/local/bin \ + fourmolu \ + hlint \ + cabal-gild + +# Verify installations +RUN ghc --version && \ + cabal --version && \ + node --version && \ + fourmolu --version && \ + hlint --version && \ + cabal-gild --version + +# Set working directory +WORKDIR /workspace