diff --git a/CHANGELOG.md b/CHANGELOG.md index be05f3a..b786760 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- The container is built on Debian 13 (trixie) instead of 12, so DeadAir uses ffmpeg 7.1 instead of 5.1 (#177). + ## [0.11.0] - 2026-10-09 ### Added diff --git a/CLAUDE.md b/CLAUDE.md index 14aacff..cf022a3 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -56,15 +56,15 @@ docker logs --tail 20 iPX included. Run `pull` before `up`, because `up` reuses whatever `latest` the host already has. **A build that fails with `429 Too Many Requests` on a base image** is Docker Hub rate-limiting -this host. There is no Docker Hub login here, and the build asks about `debian:bookworm-slim` and -`rust:1-slim-bookworm` every time unless they are already stored locally. Pull them from Google's +this host. There is no Docker Hub login here, and the build asks about `debian:trixie-slim` and +`rust:1-slim-trixie` every time unless they are already stored locally. Pull them from Google's mirror and tag them; the build then uses the local copies without asking Docker Hub: ```sh -docker pull mirror.gcr.io/library/debian:bookworm-slim -docker tag mirror.gcr.io/library/debian:bookworm-slim debian:bookworm-slim -docker pull mirror.gcr.io/library/rust:1-slim-bookworm -docker tag mirror.gcr.io/library/rust:1-slim-bookworm rust:1-slim-bookworm +docker pull mirror.gcr.io/library/debian:trixie-slim +docker tag mirror.gcr.io/library/debian:trixie-slim debian:trixie-slim +docker pull mirror.gcr.io/library/rust:1-slim-trixie +docker tag mirror.gcr.io/library/rust:1-slim-trixie rust:1-slim-trixie ``` Run those again now and then, or the local copies go stale. diff --git a/Dockerfile b/Dockerfile index 34247e4..487a6af 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # Build. rusqlite is bundled (compiles SQLite from source) and librqbit needs a C # toolchain, so the builder needs cc. TLS is rustls throughout, so no OpenSSL headers. # build.rs builds the web pages from TypeScript with swc, which needs node. -FROM rust:1-slim-bookworm AS build +FROM rust:1-slim-trixie AS build RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential nodejs npm \ && rm -rf /var/lib/apt/lists/* @@ -23,7 +23,7 @@ COPY web ./web # cargo skips a rebuild if mtimes look untouched; make sure it does not. RUN touch src/main.rs && cargo build --release --locked -FROM debian:bookworm-slim +FROM debian:trixie-slim # ffmpeg is DeadAir's (#171): it finds the silences and copies the frames kept. Debian's adds # about 480 MB, once: the layer stays cached until the base image changes. RUN apt-get update && apt-get install -y --no-install-recommends \