From 6ddcd6ef5050d3eb13a99e2f5ad48b650fd3a473 Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 17:49:46 +0000 Subject: [PATCH 1/7] Rebase to 3.23 --- Dockerfile | 7 ++++--- Dockerfile.aarch64 | 7 ++++--- README.md | 1 + readme-vars.yml | 1 + root/defaults/config.yaml | 1 + 5 files changed, 11 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 36adc1a..859cbd1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -FROM ghcr.io/linuxserver/baseimage-alpine:3.21 +FROM ghcr.io/linuxserver/baseimage-alpine:3.23 # set version label ARG BUILD_DATE @@ -21,6 +21,7 @@ RUN \ git \ gobject-introspection-dev \ jpeg-dev \ + libedit-dev \ libpng-dev \ mpg123-dev \ openjpeg-dev \ @@ -83,9 +84,9 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.21/ . && \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ echo "**** install pip packages ****" && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.21/ \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ beautifulsoup4 \ beets-extrafiles \ beetcamp \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 67cda8f..62f28c2 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.21 +FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.23 # set version label ARG BUILD_DATE @@ -21,6 +21,7 @@ RUN \ git \ gobject-introspection-dev \ jpeg-dev \ + libedit-dev \ libpng-dev \ mpg123-dev \ openjpeg-dev \ @@ -83,9 +84,9 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.21/ . && \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ echo "**** install pip packages ****" && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.21/ \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ beautifulsoup4 \ beets-extrafiles \ beetcamp \ diff --git a/README.md b/README.md index 38d52cd..cdd604c 100644 --- a/README.md +++ b/README.md @@ -296,6 +296,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **01.02.26:** - Rebase to Alpine 3.23. * **27.01.25:** - Rebase to Alpine 3.21, unpin beetcamp. * **22.10.24:** - Pin beetcamp to 0.19.2 until upstream requirements fixed. * **01.10.24:** - Add packages required for Discogs plugin. diff --git a/readme-vars.yml b/readme-vars.yml index 674a575..b2a76d4 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -77,6 +77,7 @@ init_diagram: | "beets:nightly" <- Base Images # changelog changelogs: + - {date: "01.02.26:", desc: "Rebase to Alpine 3.23."} - {date: "27.01.25:", desc: "Rebase to Alpine 3.21, unpin beetcamp."} - {date: "22.10.24:", desc: "Pin beetcamp to 0.19.2 until upstream requirements fixed."} - {date: "01.10.24:", desc: "Add packages required for Discogs plugin."} diff --git a/root/defaults/config.yaml b/root/defaults/config.yaml index fd4afae..93cc578 100644 --- a/root/defaults/config.yaml +++ b/root/defaults/config.yaml @@ -41,6 +41,7 @@ fetchart: replaygain: auto: no + command: mp3gain scrub: auto: yes From 159316b006e6dedd4066bab9cdce68f1c03c829b Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 17:57:41 +0000 Subject: [PATCH 2/7] Try some more llvm deps --- Dockerfile | 1 + Dockerfile.aarch64 | 1 + 2 files changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index 859cbd1..e2a5a6e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -23,6 +23,7 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ + llvm-dev \ mpg123-dev \ openjpeg-dev \ python3-dev && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 62f28c2..7836a97 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -23,6 +23,7 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ + llvm-dev \ mpg123-dev \ openjpeg-dev \ python3-dev && \ From 9538ebe480e860f76b9c1806eadef29e8b37bc75 Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 18:06:34 +0000 Subject: [PATCH 3/7] Use poetry for package install --- Dockerfile | 16 +++------------- Dockerfile.aarch64 | 16 +++------------- 2 files changed, 6 insertions(+), 26 deletions(-) diff --git a/Dockerfile b/Dockerfile index e2a5a6e..c50fd6a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -23,9 +23,9 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ - llvm-dev \ mpg123-dev \ openjpeg-dev \ + poetry \ python3-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ @@ -85,21 +85,11 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ + poetry install && \ echo "**** install pip packages ****" && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ - beautifulsoup4 \ beets-extrafiles \ - beetcamp \ - python3-discogs-client \ - flask \ - PyGObject \ - pyacoustid \ - pylast \ - requests \ - requests_oauthlib \ - typing-extensions \ - unidecode && \ + beetcamp && \ printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \ echo "**** cleanup ****" && \ apk del --purge \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 7836a97..be50830 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -23,9 +23,9 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ - llvm-dev \ mpg123-dev \ openjpeg-dev \ + poetry \ python3-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ @@ -85,21 +85,11 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ + poetry install && \ echo "**** install pip packages ****" && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ - beautifulsoup4 \ beets-extrafiles \ - beetcamp \ - python3-discogs-client \ - flask \ - PyGObject \ - pyacoustid \ - pylast \ - requests \ - requests_oauthlib \ - typing-extensions \ - unidecode && \ + beetcamp && \ printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \ echo "**** cleanup ****" && \ apk del --purge \ From 03d5a93ab362bdcc3eea927786ab64556e2ce802 Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 18:38:13 +0000 Subject: [PATCH 4/7] Revert "Use poetry for package install" This reverts commit 9538ebe480e860f76b9c1806eadef29e8b37bc75. --- Dockerfile | 16 +++++++++++++--- Dockerfile.aarch64 | 16 +++++++++++++--- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index c50fd6a..e2a5a6e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -23,9 +23,9 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ + llvm-dev \ mpg123-dev \ openjpeg-dev \ - poetry \ python3-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ @@ -85,11 +85,21 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - poetry install && \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ echo "**** install pip packages ****" && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ + beautifulsoup4 \ beets-extrafiles \ - beetcamp && \ + beetcamp \ + python3-discogs-client \ + flask \ + PyGObject \ + pyacoustid \ + pylast \ + requests \ + requests_oauthlib \ + typing-extensions \ + unidecode && \ printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \ echo "**** cleanup ****" && \ apk del --purge \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index be50830..7836a97 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -23,9 +23,9 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ + llvm-dev \ mpg123-dev \ openjpeg-dev \ - poetry \ python3-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ @@ -85,11 +85,21 @@ RUN \ wheel && \ echo "**** install beets ****" && \ cd /tmp/beets && \ - poetry install && \ + pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ echo "**** install pip packages ****" && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ \ + beautifulsoup4 \ beets-extrafiles \ - beetcamp && \ + beetcamp \ + python3-discogs-client \ + flask \ + PyGObject \ + pyacoustid \ + pylast \ + requests \ + requests_oauthlib \ + typing-extensions \ + unidecode && \ printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \ echo "**** cleanup ****" && \ apk del --purge \ From e562305e5ef0f4a7f953fcb59b48f2ff97d287b5 Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 18:38:15 +0000 Subject: [PATCH 5/7] Revert "Try some more llvm deps" This reverts commit 159316b006e6dedd4066bab9cdce68f1c03c829b. --- Dockerfile | 1 - Dockerfile.aarch64 | 1 - 2 files changed, 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index e2a5a6e..859cbd1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -23,7 +23,6 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ - llvm-dev \ mpg123-dev \ openjpeg-dev \ python3-dev && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 7836a97..62f28c2 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -23,7 +23,6 @@ RUN \ jpeg-dev \ libedit-dev \ libpng-dev \ - llvm-dev \ mpg123-dev \ openjpeg-dev \ python3-dev && \ From d4bbbdd518403f748ca999990c3fe50fa0bec12a Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 19:26:59 +0000 Subject: [PATCH 6/7] Install mp3gain from Alpine repos --- Dockerfile | 12 +----------- Dockerfile.aarch64 | 12 +----------- 2 files changed, 2 insertions(+), 22 deletions(-) diff --git a/Dockerfile b/Dockerfile index 859cbd1..57c37cf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,6 +43,7 @@ RUN \ libffi \ libpng \ mpg123 \ + mp3gain \ nano \ openjpeg \ python3 \ @@ -55,17 +56,6 @@ RUN \ git clone https://github.com/beetbox/beets.git /tmp/beets && \ cd /tmp/beets && \ git checkout -f "${BEETS_VERSION}" && \ - echo "**** compile mp3gain ****" && \ - mkdir -p \ - /tmp/mp3gain-src && \ - curl -o \ - /tmp/mp3gain-src/mp3gain.zip -sL \ - https://sourceforge.net/projects/mp3gain/files/mp3gain/1.6.2/mp3gain-1_6_2-src.zip && \ - cd /tmp/mp3gain-src && \ - unzip -qq /tmp/mp3gain-src/mp3gain.zip && \ - sed -i "s#/usr/local/bin#/usr/bin#g" /tmp/mp3gain-src/Makefile && \ - make && \ - make install && \ echo "**** compile mp3val ****" && \ mkdir -p \ /tmp/mp3val-src && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 62f28c2..53ba633 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -43,6 +43,7 @@ RUN \ libffi \ libpng \ mpg123 \ + mp3gain \ nano \ openjpeg \ python3 \ @@ -55,17 +56,6 @@ RUN \ git clone https://github.com/beetbox/beets.git /tmp/beets && \ cd /tmp/beets && \ git checkout -f "${BEETS_VERSION}" && \ - echo "**** compile mp3gain ****" && \ - mkdir -p \ - /tmp/mp3gain-src && \ - curl -o \ - /tmp/mp3gain-src/mp3gain.zip -sL \ - https://sourceforge.net/projects/mp3gain/files/mp3gain/1.6.2/mp3gain-1_6_2-src.zip && \ - cd /tmp/mp3gain-src && \ - unzip -qq /tmp/mp3gain-src/mp3gain.zip && \ - sed -i "s#/usr/local/bin#/usr/bin#g" /tmp/mp3gain-src/Makefile && \ - make && \ - make install && \ echo "**** compile mp3val ****" && \ mkdir -p \ /tmp/mp3val-src && \ From 4554cace556dfc6dd59aa40ae20b95b7996cb99e Mon Sep 17 00:00:00 2001 From: thespad Date: Sun, 1 Feb 2026 19:57:04 +0000 Subject: [PATCH 7/7] Add flask-cors per #135 --- Dockerfile | 4 ++-- Dockerfile.aarch64 | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 57c37cf..6ca3b43 100644 --- a/Dockerfile +++ b/Dockerfile @@ -70,8 +70,7 @@ RUN \ python3 -m venv /lsiopy && \ pip install -U --no-cache-dir \ pip \ - setuptools \ - wheel && \ + setuptools && \ echo "**** install beets ****" && \ cd /tmp/beets && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ @@ -82,6 +81,7 @@ RUN \ beetcamp \ python3-discogs-client \ flask \ + flask-cors \ PyGObject \ pyacoustid \ pylast \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 53ba633..c59648f 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -70,8 +70,7 @@ RUN \ python3 -m venv /lsiopy && \ pip install -U --no-cache-dir \ pip \ - setuptools \ - wheel && \ + setuptools && \ echo "**** install beets ****" && \ cd /tmp/beets && \ pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.23/ . && \ @@ -82,6 +81,7 @@ RUN \ beetcamp \ python3-discogs-client \ flask \ + flask-cors \ PyGObject \ pyacoustid \ pylast \