Files
navidrome/.devcontainer/Dockerfile
Deluan af453f15bf refactor(build): remove CPP taglib, enable native libwebp in Docker
Remove the CGO-based TagLib adapter (adapters/taglib/) and all
cross-taglib build infrastructure. The WASM-based go-taglib adapter
(adapters/gotaglib/) is now the sole metadata extractor.

Add a musl-based build stage (build-alpine) to the Dockerfile using
xx for cross-compilation. This produces a dynamically-linked musl
binary for the Docker image, which allows purego to dlopen native
libwebp at runtime. The glibc build stage is kept for standalone
binary distribution.

The Docker image now bundles libwebp for native WebP encoding,
with automatic fallback to the built-in WASM encoder if unavailable.
2026-04-05 20:51:30 -04:00

18 lines
782 B
Docker

# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.148.1/containers/go/.devcontainer/base.Dockerfile
# [Choice] Go version: 1, 1.15, 1.14
ARG VARIANT="1"
FROM mcr.microsoft.com/vscode/devcontainers/go:${VARIANT}
# [Option] Install Node.js
ARG INSTALL_NODE="true"
ARG NODE_VERSION="lts/*"
RUN if [ "${INSTALL_NODE}" = "true" ]; then su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi
# Install additional OS packages
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends ffmpeg
# [Optional] Uncomment this line to install global node packages.
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1