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
13 changes: 8 additions & 5 deletions images/chromium-headful/Dockerfile
Original file line numberDiff line numberDiff line change
Expand Up@@ -107,24 +107,27 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=$CACHEIDPREFIX-ap
apt-get -yqq update; \
apt-get -yqq --no-install-recommends install ca-certificates curl xz-utils;

# Download FFmpeg (latest static build) for the recording server
# Download a pinned FFmpeg static build for the recording server
RUN --mount=type=cache,target=/tmp/cache/ffmpeg,sharing=locked,id=$CACHEIDPREFIX-ffmpeg \
<<-'EOT'
set -eux
FFMPEG_CACHE_PATH="/tmp/cache/ffmpeg"
FFMPEG_RELEASE="autobuild-2026-07-31-14-10"
FFMPEG_VERSION="n7.1.5-12-g1fdbca85aa"
case ${TARGETARCH:-amd64} in
"amd64") FFMPEG_TARGET_ARCH="64" ;;
"arm64") FFMPEG_TARGET_ARCH="arm64" ;;
esac
FFMPEG_TARGET=linux${FFMPEG_TARGET_ARCH:?}
ARCHIVE_NAME="ffmpeg-n7.1-latest-${FFMPEG_TARGET}-gpl-7.1.tar.xz"
ARCHIVE_NAME="ffmpeg-${FFMPEG_VERSION}-${FFMPEG_TARGET}-gpl-7.1.tar.xz"
FFMPEG_CACHED_ARCHIVE_PATH="$FFMPEG_CACHE_PATH/$ARCHIVE_NAME"
FFMPEG_CACHED_ARCHIVE_CHECKSUM_PATH="$FFMPEG_CACHED_ARCHIVE_PATH.sha256"
URL="https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/$ARCHIVE_NAME"
RELEASE_URL="https://github.com/BtbN/FFmpeg-Builds/releases/download/$FFMPEG_RELEASE"
URL="$RELEASE_URL/$ARCHIVE_NAME"
Comment thread
cursor[bot] marked this conversation as resolved.
TEMPORARY_SHA256_CHECKSUM_PATH=$(mktemp /tmp/tmp_sha256.XXXXXXXXXX)
CONTINUE="true"
echo "Downloading FFmpeg checksum"
if curl --connect-timeout 10 -fsSL "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/checksums.sha256" -o $TEMPORARY_SHA256_CHECKSUM_PATH; then
if curl --connect-timeout 10 -fsSL "$RELEASE_URL/checksums.sha256" -o $TEMPORARY_SHA256_CHECKSUM_PATH; then
Comment thread
cursor[bot] marked this conversation as resolved.
grep -F "$ARCHIVE_NAME" $TEMPORARY_SHA256_CHECKSUM_PATH > $FFMPEG_CACHED_ARCHIVE_CHECKSUM_PATH
else
echo "Failed to connect to ffmpeg static build provider for checksum."
Expand DownExpand Up@@ -284,7 +287,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=$CACHEIDPREFIX-ap
libxext6 libxfixes3 libxkbcommon0;

# Install Chrome + ChromeDriver as a matched pair from chrome-for-testing so they cannot drift apart.
ARG CHROME_VERSION=148.0.7778.97
ARG CHROME_VERSION=152.0.7977.42
RUN set -eux; \
curl -fsSL "https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION}/linux64/chrome-linux64.zip" -o /tmp/chrome.zip; \
curl -fsSL "https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION}/linux64/chromedriver-linux64.zip" -o /tmp/cd.zip; \
Expand Down
13 changes: 8 additions & 5 deletions images/chromium-headless/image/Dockerfile
Original file line numberDiff line numberDiff line change
Expand Up@@ -55,24 +55,27 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=$CACHEIDPREFIX-ap
apt-get -yqq update; \
apt-get -yqq --no-install-recommends install ca-certificates curl xz-utils;

# Download FFmpeg (latest static build) for the recording server
# Download a pinned FFmpeg static build for the recording server
RUN --mount=type=cache,target=/tmp/cache/ffmpeg,sharing=locked,id=$CACHEIDPREFIX-ffmpeg \
<<-'EOT'
set -eux
FFMPEG_CACHE_PATH="/tmp/cache/ffmpeg"
FFMPEG_RELEASE="autobuild-2026-07-31-14-10"
FFMPEG_VERSION="n7.1.5-12-g1fdbca85aa"
case ${TARGETARCH:-amd64} in
"amd64") FFMPEG_TARGET_ARCH="64" ;;
"arm64") FFMPEG_TARGET_ARCH="arm64" ;;
esac
FFMPEG_TARGET=linux${FFMPEG_TARGET_ARCH:?}
ARCHIVE_NAME="ffmpeg-n7.1-latest-${FFMPEG_TARGET}-gpl-7.1.tar.xz"
ARCHIVE_NAME="ffmpeg-${FFMPEG_VERSION}-${FFMPEG_TARGET}-gpl-7.1.tar.xz"
FFMPEG_CACHED_ARCHIVE_PATH="$FFMPEG_CACHE_PATH/$ARCHIVE_NAME"
FFMPEG_CACHED_ARCHIVE_CHECKSUM_PATH="$FFMPEG_CACHED_ARCHIVE_PATH.sha256"
URL="https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/$ARCHIVE_NAME"
RELEASE_URL="https://github.com/BtbN/FFmpeg-Builds/releases/download/$FFMPEG_RELEASE"
URL="$RELEASE_URL/$ARCHIVE_NAME"
TEMPORARY_SHA256_CHECKSUM_PATH=$(mktemp /tmp/tmp_sha256.XXXXXXXXXX)
CONTINUE="true"
echo "Downloading FFmpeg checksum"
if curl --connect-timeout 10 -fsSL "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/checksums.sha256" -o $TEMPORARY_SHA256_CHECKSUM_PATH; then
if curl --connect-timeout 10 -fsSL "$RELEASE_URL/checksums.sha256" -o $TEMPORARY_SHA256_CHECKSUM_PATH; then
grep -F "$ARCHIVE_NAME" $TEMPORARY_SHA256_CHECKSUM_PATH > $FFMPEG_CACHED_ARCHIVE_CHECKSUM_PATH
else
echo "Failed to connect to ffmpeg static build provider for checksum."
Expand DownExpand Up@@ -166,7 +169,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=$CACHEIDPREFIX-ap
apt-get --no-install-recommends -y install sqlite3 unzip;

# Install Chrome + ChromeDriver as a matched pair from chrome-for-testing so they cannot drift apart.
ARG CHROME_VERSION=148.0.7778.97
ARG CHROME_VERSION=152.0.7977.42
RUN set -eux; \
curl -fsSL "https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION}/linux64/chrome-linux64.zip" -o /tmp/chrome.zip; \
curl -fsSL "https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION}/linux64/chromedriver-linux64.zip" -o /tmp/cd.zip; \
Expand Down
Loading