diff --git a/README.md b/README.md index d7a9f3ec4a25336e223cda06fa8f9309b520853e..78aecc5857fa6fa68eb87adf46bd69069be401c0 100644 --- a/README.md +++ b/README.md @@ -13,18 +13,26 @@ The multi‑arch (`linux/amd64`, `linux/arm64/v8`) docker image used to build th * [Stack](https://github.com/commercialhaskell/stack) * [Juvix](https://github.com/anoma/juvix) -Credits to +Credit to -<!-- markdownlint-disable line-length --> * [@odidev](https://github.com/odidev) for - [ghc-bootstrap-aarch64](https://gitlab.alpinelinux.org/odidev/ghc-bootstrap-aarch64) - and + [ghc-bootstrap-aarch64](https://gitlab.alpinelinux.org/odidev/ghc-bootstrap-aarch64)[^1] + and * [@neosimsim](https://github.com/neosimsim) for - [docker-builder-images](https://gitlab.com/neosimsim/docker-builder-images) -<!-- markdownlint-enable line-length --> + [neosimsim—Docker build images](https://gitlab.com/neosimsim/docker-builder-images) + +[^1]: Porting GHC to Linux/AArch64 who laid the groundwork for [this](https://gitlab.com/benz0li/ghc-musl). +Credit to + +* Celeste of Alpine for [GHC bootstrap riscv64](https://gitlab.b-data.ch/ghc/ghc-bootstrap-riscv64)[^2] + +who made it possible to add `linux/riscv64` images (GHC versions ≥ 9.10.1). + +[^2]: Porting GHC to Linux/riscv64 + ## Table of Contents * [Prerequisites](#prerequisites) @@ -125,11 +133,11 @@ For further information, see [Dev Containers](.devcontainer). What makes this project different: 1. Multi‑arch: `linux/amd64`, `linux/arm64/v8` -1. Built using Hadrian[^1], from source, without docs +1. Built using Hadrian[^3], from source, without docs 1. Built using the LLVM backend * flavour: `perf+llvm+split_sections` -[^1]: GHC versions ≥ 9.2.8. +[^3]: GHC versions ≥ 9.2.8. ## Contributing diff --git a/SECURITY.md b/SECURITY.md index 7e797d58a89d7290325fb1ad01bc4676e1a6cc1a..8b164b58eff7e03713fbd553cec551d4a99c4051 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,11 +1,14 @@ ## Supported Versions -Only the docker image with the latest version of GHC is supported with security -updates. +Only the docker images with the latest version of GHC are supported with +security updates. + +`linux/riscv64` docker images are currently built only once. Therefore, +vulnerabilities for this `os/arch` will not be fixed. ## Reporting a Vulnerability -To report a vulnerability in the latest docker image, email the maintainer +To report a vulnerability in a latest docker image, email the maintainer <olivier.benz@b-data.ch>. ## Vulnerabilities in Prior Versions diff --git a/VERSION_MATRIX.md b/VERSION_MATRIX.md index d72c98f0ce2c03bcf6d41575b268100e055570a4..1ba2af3e4ca767d5738e4b5c2284acadde8638b8 100644 --- a/VERSION_MATRIX.md +++ b/VERSION_MATRIX.md @@ -45,3 +45,10 @@ Topmost entry = Tag `latest` * Images based on Alpine 3.{17,18}: Package pkgconf downgraded to v1.8.1 * Due to <https://github.com/haskell/cabal/issues/8923> + +## Experimental + +`linux/riscv64` images for GHC versions ≥ 9.10.1, e.g. +`quay.io/benz0li/ghc-musl:{latest,GHC_VERSION}-linux-riscv64`. +:information_source: Whenever a new version of GHC is released, the previous +`linux/riscv64` image is added to the manifest. diff --git a/latest.Dockerfile b/latest.Dockerfile index be342538e63943e666f9cea3fb1d56e9bc1e8a3a..d9db5de371a4a5917ec7c4d43dc06a8e9671ab80 100644 --- a/latest.Dockerfile +++ b/latest.Dockerfile @@ -82,10 +82,15 @@ RUN cabal update \ FROM alpine:3.20 as ghc-base -LABEL org.opencontainers.image.licenses="MIT" \ - org.opencontainers.image.source="https://gitlab.b-data.ch/ghc/ghc-musl" \ - org.opencontainers.image.vendor="Olivier Benz" \ - org.opencontainers.image.authors="Olivier Benz <olivier.benz@b-data.ch>" +ARG IMAGE_LICENSE="MIT" +ARG IMAGE_SOURCE="https://gitlab.b-data.ch/ghc/ghc-musl" +ARG IMAGE_VENDOR="Olivier Benz" +ARG IMAGE_AUTHORS="Olivier Benz <olivier.benz@b-data.ch>" + +LABEL org.opencontainers.image.licenses="$IMAGE_LICENSE" \ + org.opencontainers.image.source="$IMAGE_SOURCE" \ + org.opencontainers.image.vendor="$IMAGE_VENDOR" \ + org.opencontainers.image.authors="$IMAGE_AUTHORS" ARG GHC_VERSION_BUILD ARG CABAL_VERSION_BUILD