diff --git a/Dockerfile b/Dockerfile index 756750f..fba3e12 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:3.12 as buildstage +FROM ghcr.io/linuxserver/baseimage-alpine:3.15 as buildstage ############## build stage ############## ARG DAAPD_RELEASE @@ -6,105 +6,103 @@ ARG LIBSPOTIFY_VERSION=12.1.51 ARG ARCH=x86_64 RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache \ - alsa-lib-dev \ - autoconf \ - automake \ - avahi-dev \ - bash \ - bsd-compat-headers \ - confuse-dev \ - curl \ - curl-dev \ - ffmpeg-dev \ - file \ - flac-dev \ - g++ \ - gcc \ - gettext-dev \ - gnutls-dev \ - gperf \ - json-c-dev \ - libcurl \ - libevent-dev \ - libgcrypt-dev \ - libogg-dev \ - libplist-dev \ - libressl-dev \ - libsodium-dev \ - libtool \ - libunistring-dev \ - libwebsockets-dev \ - make \ - openjdk8-jre-base \ - protobuf-c-dev \ - sqlite-dev \ - taglib-dev \ - tar && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml-dev && \ - echo "**** make antlr wrapper ****" && \ - mkdir -p \ - /tmp/source/owntone && \ - echo \ - "#!/bin/bash" > /tmp/source/antlr3 && \ - echo \ - "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ - chmod a+x /tmp/source/antlr3 && \ - curl -o \ - /tmp/source/antlr-3.4-complete.jar -L \ - http://www.antlr3.org/download/antlr-3.4-complete.jar && \ - echo "**** compile and install antlr3c ****" && \ - curl -o \ - /tmp/libantlr3c-3.4.tar.gz -L \ - https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ - tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ - cd /tmp/libantlr3c-3.4 && \ - ./configure --enable-64bit --prefix=/usr && \ - make && \ - make DESTDIR=/tmp/antlr3c-build install && \ - export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ - export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ - echo "**** compile owntone-server ****" && \ - if [ -z ${DAAPD_RELEASE+x} ]; then \ - DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -L https://github.com/mopidy/libspotify-archive/blob/master/libspotify-${LIBSPOTIFY_VERSION}-Linux-${ARCH}-release.tar.gz?raw=true | tar -xzf- -C /tmp/source/ && \ - mv /tmp/source/libspotify* /tmp/source/libspotify && \ - sed -i 's/ldconfig//' /tmp/source/libspotify/Makefile && \ - make -C /tmp/source/libspotify prefix=/tmp/libspotify-build install && \ - rm -rf /tmp/source/libspotify && \ - export LIBSPOTIFY_CFLAGS="-I/tmp/libspotify-build/include" && \ - export LIBSPOTIFY_LIBS="/tmp/libspotify-build/lib/libspotify.so" && \ - curl -o \ - /tmp/source/owntone.tar.gz -L \ - "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ - tar xf /tmp/source/owntone.tar.gz -C \ - /tmp/source/owntone --strip-components=1 && \ - export PATH="/tmp/source:$PATH" && \ - cd /tmp/source/owntone && \ - autoreconf -i -v && \ - ./configure \ - --build=$CBUILD \ - --enable-chromecast \ - --enable-itunes \ - --enable-lastfm \ - --enable-mpd \ + echo "**** install build packages ****" && \ + apk add -U --update --no-cache \ + alsa-lib-dev \ + autoconf \ + automake \ + avahi-dev \ + bash \ + bsd-compat-headers \ + confuse-dev \ + curl \ + curl-dev \ + ffmpeg-dev \ + file \ + flac-dev \ + g++ \ + gcc \ + gettext-dev \ + gnutls-dev \ + gperf \ + json-c-dev \ + libcurl \ + libevent-dev \ + libgcrypt-dev \ + libogg-dev \ + libplist-dev \ + libressl-dev \ + libsodium-dev \ + libtool \ + libunistring-dev \ + libwebsockets-dev \ + make \ + mxml-dev \ + openjdk8-jre-base \ + protobuf-c-dev \ + sqlite-dev \ + taglib-dev \ + tar && \ + echo "**** make antlr wrapper ****" && \ + mkdir -p \ + /tmp/source/owntone && \ + echo \ + "#!/bin/bash" > /tmp/source/antlr3 && \ + echo \ + "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ + chmod a+x /tmp/source/antlr3 && \ + curl -o \ + /tmp/source/antlr-3.4-complete.jar -L \ + http://www.antlr3.org/download/antlr-3.4-complete.jar && \ + echo "**** compile and install antlr3c ****" && \ + curl -o \ + /tmp/libantlr3c-3.4.tar.gz -L \ + https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ + tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ + cd /tmp/libantlr3c-3.4 && \ + ./configure --enable-64bit --prefix=/usr && \ + make && \ + make DESTDIR=/tmp/antlr3c-build install && \ + export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ + export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ + echo "**** compile owntone-server ****" && \ + if [ -z ${DAAPD_RELEASE+x} ]; then \ + DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -L https://github.com/mopidy/libspotify-archive/blob/master/libspotify-${LIBSPOTIFY_VERSION}-Linux-${ARCH}-release.tar.gz?raw=true | tar -xzf- -C /tmp/source/ && \ + mv /tmp/source/libspotify* /tmp/source/libspotify && \ + sed -i 's/ldconfig//' /tmp/source/libspotify/Makefile && \ + make -C /tmp/source/libspotify prefix=/tmp/libspotify-build install && \ + rm -rf /tmp/source/libspotify && \ + export LIBSPOTIFY_CFLAGS="-I/tmp/libspotify-build/include" && \ + export LIBSPOTIFY_LIBS="/tmp/libspotify-build/lib/libspotify.so" && \ + curl -o \ + /tmp/source/owntone.tar.gz -L \ + "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ + tar xf /tmp/source/owntone.tar.gz -C \ + /tmp/source/owntone --strip-components=1 && \ + export PATH="/tmp/source:$PATH" && \ + cd /tmp/source/owntone && \ + autoreconf -i -v && \ + ./configure \ + --build=$CBUILD \ + --enable-chromecast \ + --enable-itunes \ + --enable-lastfm \ + --enable-mpd \ --enable-spotify \ - --host=$CHOST \ - --infodir=/usr/share/info \ - --localstatedir=/var \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --sysconfdir=/etc && \ - make && \ - make DESTDIR=/tmp/daapd-build install && \ - mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig + --host=$CHOST \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --prefix=/usr \ + --sysconfdir=/etc && \ + make && \ + make DESTDIR=/tmp/daapd-build install && \ + mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig ############## runtime stage ############## -FROM ghcr.io/linuxserver/baseimage-alpine:3.12 +FROM ghcr.io/linuxserver/baseimage-alpine:3.15 # set version label ARG BUILD_DATE @@ -113,29 +111,27 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="BernsteinA" RUN \ - echo "**** install runtime packages ****" && \ - apk add --no-cache \ - avahi \ - confuse \ - dbus \ - ffmpeg \ - json-c \ - libcurl \ - libevent \ - libgcrypt \ - libplist \ - libressl \ - libsodium \ - libunistring \ - libwebsockets \ - protobuf-c \ - sqlite \ - sqlite-libs && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml && \ - apk add --no-cache \ - --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ + echo "**** install runtime packages ****" && \ + apk add -U --update --no-cache \ + avahi \ + confuse \ + curl \ + dbus \ + ffmpeg \ + json-c \ + libcurl \ + libevent \ + libgcrypt \ + libplist \ + libressl \ + libsodium \ + libunistring \ + libwebsockets \ + mxml \ + protobuf-c \ + sqlite \ + sqlite-libs && \ + apk add -U --update --no-cache --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ librespot # copy buildstage and local files @@ -146,4 +142,5 @@ COPY root/ / # ports and volumes EXPOSE 3689 -VOLUME /config /music + +VOLUME /config diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index f8508bd..55b5e89 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,101 +1,100 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.12 as buildstage +FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.15 as buildstage ############## build stage ############## ARG DAAPD_RELEASE RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache \ - alsa-lib-dev \ - autoconf \ - automake \ - avahi-dev \ - bash \ - bsd-compat-headers \ - confuse-dev \ - curl \ - curl-dev \ - ffmpeg-dev \ - file \ - flac-dev \ - g++ \ - gcc \ - gettext-dev \ - gnutls-dev \ - gperf \ - json-c-dev \ - libcurl \ - libevent-dev \ - libgcrypt-dev \ - libogg-dev \ - libplist-dev \ - libressl-dev \ - libsodium-dev \ - libtool \ - libunistring-dev \ - libwebsockets-dev \ - make \ - openjdk8-jre-base \ - protobuf-c-dev \ - sqlite-dev \ - taglib-dev \ - tar && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml-dev && \ - echo "**** make antlr wrapper ****" && \ - mkdir -p \ - /tmp/source/owntone && \ - echo \ - "#!/bin/bash" > /tmp/source/antlr3 && \ - echo \ - "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ - chmod a+x /tmp/source/antlr3 && \ - curl -o \ - /tmp/source/antlr-3.4-complete.jar -L \ - http://www.antlr3.org/download/antlr-3.4-complete.jar && \ +RUN \ + echo "**** install build packages ****" && \ + apk add -U --update --no-cache \ + alsa-lib-dev \ + autoconf \ + automake \ + avahi-dev \ + bash \ + bsd-compat-headers \ + confuse-dev \ + curl \ + curl-dev \ + ffmpeg-dev \ + file \ + flac-dev \ + g++ \ + gcc \ + gettext-dev \ + gnutls-dev \ + gperf \ + json-c-dev \ + libcurl \ + libevent-dev \ + libgcrypt-dev \ + libogg-dev \ + libplist-dev \ + libressl-dev \ + libsodium-dev \ + libtool \ + libunistring-dev \ + libwebsockets-dev \ + make \ + mxml-dev \ + openjdk8-jre-base \ + protobuf-c-dev \ + sqlite-dev \ + taglib-dev \ + tar && \ + echo "**** make antlr wrapper ****" && \ + mkdir -p \ + /tmp/source/owntone && \ + echo \ + "#!/bin/bash" > /tmp/source/antlr3 && \ + echo \ + "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ + chmod a+x /tmp/source/antlr3 && \ + curl -o \ + /tmp/source/antlr-3.4-complete.jar -L \ + http://www.antlr3.org/download/antlr-3.4-complete.jar && \ echo "**** compile and install antlr3c ****" && \ - curl -o \ - /tmp/libantlr3c-3.4.tar.gz -L \ - https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ - tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ - cd /tmp/libantlr3c-3.4 && \ - ./configure --build arm-unknown-linux-gnueabi --disable-abiflags --disable-antlrdebug --enable-64bit --prefix=/usr && \ - make && \ - make DESTDIR=/tmp/antlr3c-build install && \ - export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ - export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ - echo "**** compile owntone-server ****" && \ - if [ -z ${DAAPD_RELEASE+x} ]; then \ - DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /tmp/source/owntone.tar.gz -L \ - "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ - tar xf /tmp/source/owntone.tar.gz -C \ - /tmp/source/owntone --strip-components=1 && \ - export PATH="/tmp/source:$PATH" && \ - cd /tmp/source/owntone && \ - autoreconf -i -v && \ - ./configure \ - --build=$CBUILD \ - --disable-avcodecsend \ - --enable-chromecast \ - --enable-itunes \ - --enable-lastfm \ - --enable-mpd \ - --host=$CHOST \ - --infodir=/usr/share/info \ - --localstatedir=/var \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --sysconfdir=/etc && \ - make && \ - make DESTDIR=/tmp/daapd-build install && \ - mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig + curl -o \ + /tmp/libantlr3c-3.4.tar.gz -L \ + https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ + tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ + cd /tmp/libantlr3c-3.4 && \ + ./configure --build arm-unknown-linux-gnueabi --disable-abiflags --disable-antlrdebug --enable-64bit --prefix=/usr && \ + make && \ + make DESTDIR=/tmp/antlr3c-build install && \ + export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ + export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ + echo "**** compile owntone-server ****" && \ + if [ -z ${DAAPD_RELEASE+x} ]; then \ + DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /tmp/source/owntone.tar.gz -L \ + "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ + tar xf /tmp/source/owntone.tar.gz -C \ + /tmp/source/owntone --strip-components=1 && \ + export PATH="/tmp/source:$PATH" && \ + cd /tmp/source/owntone && \ + autoreconf -i -v && \ + ./configure \ + --build=$CBUILD \ + --disable-avcodecsend \ + --enable-chromecast \ + --enable-itunes \ + --enable-lastfm \ + --enable-mpd \ + --host=$CHOST \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --prefix=/usr \ + --sysconfdir=/etc && \ + make && \ + make DESTDIR=/tmp/daapd-build install && \ + mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig ############## runtime stage ############## -FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.12 +FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.15 # set version label ARG BUILD_DATE @@ -104,29 +103,27 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="BernsteinA" RUN \ - echo "**** install runtime packages ****" && \ - apk add --no-cache \ - avahi \ - confuse \ - dbus \ - ffmpeg \ - json-c \ - libcurl \ - libevent \ - libgcrypt \ - libplist \ - libressl \ - libsodium \ - libunistring \ - libwebsockets \ - protobuf-c \ - sqlite \ - sqlite-libs && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml && \ - apk add --no-cache \ - --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ + echo "**** install runtime packages ****" && \ + apk add -U --update --no-cache \ + avahi \ + confuse \ + curl \ + dbus \ + ffmpeg \ + json-c \ + libcurl \ + libevent \ + libgcrypt \ + libplist \ + libressl \ + libsodium \ + libunistring \ + libwebsockets \ + mxml \ + protobuf-c \ + sqlite \ + sqlite-libs && \ + apk add -U --update --no-cache --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ librespot # copy buildstage and local files @@ -136,4 +133,5 @@ COPY root/ / # ports and volumes EXPOSE 3689 -VOLUME /config /music + +VOLUME /config diff --git a/Dockerfile.armhf b/Dockerfile.armhf index f69d5a1..345d79b 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,102 +1,99 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.12 as buildstage +FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.15 as buildstage ############## build stage ############## ARG DAAPD_RELEASE -ARG ARCH=armv7 RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache \ - alsa-lib-dev \ - autoconf \ - automake \ - avahi-dev \ - bash \ - bsd-compat-headers \ - confuse-dev \ - curl \ - curl-dev \ - ffmpeg-dev \ - file \ - flac-dev \ - g++ \ - gcc \ - gettext-dev \ - gnutls-dev \ - gperf \ - json-c-dev \ - libcurl \ - libevent-dev \ - libgcrypt-dev \ - libogg-dev \ - libplist-dev \ - libressl-dev \ - libsodium-dev \ - libtool \ - libunistring-dev \ - libwebsockets-dev \ - make \ - openjdk8-jre-base \ - protobuf-c-dev \ - sqlite-dev \ - taglib-dev \ - tar && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml-dev && \ - echo "**** make antlr wrapper ****" && \ - mkdir -p \ - /tmp/source/owntone && \ - echo \ - "#!/bin/bash" > /tmp/source/antlr3 && \ - echo \ - "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ - chmod a+x /tmp/source/antlr3 && \ - curl -o \ - /tmp/source/antlr-3.4-complete.jar -L \ - http://www.antlr3.org/download/antlr-3.4-complete.jar && \ - echo "**** compile and install antlr3c ****" && \ - curl -o \ - /tmp/libantlr3c-3.4.tar.gz -L \ - https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ - tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ - cd /tmp/libantlr3c-3.4 && \ - ./configure --build arm-unknown-linux-gnueabihf --disable-abiflags --disable-antlrdebug --prefix=/usr && \ - make && \ - make DESTDIR=/tmp/antlr3c-build install && \ - export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ - export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ - echo "**** compile owntone-server ****" && \ - if [ -z ${DAAPD_RELEASE+x} ]; then \ - DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /tmp/source/owntone.tar.gz -L \ - "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ - tar xf /tmp/source/owntone.tar.gz -C \ - /tmp/source/owntone --strip-components=1 && \ - export PATH="/tmp/source:$PATH" && \ - cd /tmp/source/owntone && \ - autoreconf -i -v && \ - ./configure \ - --build=$CBUILD \ - --disable-avcodecsend \ - --enable-chromecast \ - --enable-itunes \ - --enable-lastfm \ - --enable-mpd \ - --host=$CHOST \ - --infodir=/usr/share/info \ - --localstatedir=/var \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --sysconfdir=/etc && \ - make && \ - make DESTDIR=/tmp/daapd-build install && \ - mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig + echo "**** install build packages ****" && \ + apk add -U --update --no-cache \ + alsa-lib-dev \ + autoconf \ + automake \ + avahi-dev \ + bash \ + bsd-compat-headers \ + confuse-dev \ + curl \ + curl-dev \ + ffmpeg-dev \ + file \ + flac-dev \ + g++ \ + gcc \ + gettext-dev \ + gnutls-dev \ + gperf \ + json-c-dev \ + libcurl \ + libevent-dev \ + libgcrypt-dev \ + libogg-dev \ + libplist-dev \ + libressl-dev \ + libsodium-dev \ + libtool \ + libunistring-dev \ + libwebsockets-dev \ + make \ + mxml-dev \ + openjdk8-jre-base \ + protobuf-c-dev \ + sqlite-dev \ + taglib-dev \ + tar && \ + echo "**** make antlr wrapper ****" && \ + mkdir -p \ + /tmp/source/owntone && \ + echo \ + "#!/bin/bash" > /tmp/source/antlr3 && \ + echo \ + "exec java -cp /tmp/source/antlr-3.4-complete.jar org.antlr.Tool \"\$@\"" >> /tmp/source/antlr3 && \ + chmod a+x /tmp/source/antlr3 && \ + curl -o \ + /tmp/source/antlr-3.4-complete.jar -L \ + http://www.antlr3.org/download/antlr-3.4-complete.jar && \ + echo "**** compile and install antlr3c ****" && \ + curl -o \ + /tmp/libantlr3c-3.4.tar.gz -L \ + https://github.com/antlr/website-antlr3/raw/gh-pages/download/C/libantlr3c-3.4.tar.gz && \ + tar xf /tmp/libantlr3c-3.4.tar.gz -C /tmp && \ + cd /tmp/libantlr3c-3.4 && \ + ./configure --build arm-unknown-linux-gnueabihf --disable-abiflags --disable-antlrdebug --prefix=/usr && \ + make && \ + make DESTDIR=/tmp/antlr3c-build install && \ + export LDFLAGS="-L/tmp/antlr3c-build/usr/lib" && \ + export CFLAGS="-I/tmp/antlr3c-build/usr/include" && \ + echo "**** compile owntone-server ****" && \ + if [ -z ${DAAPD_RELEASE+x} ]; then \ + DAAPD_RELEASE=$(curl -sX GET "https://api.github.com/repos/owntone/owntone-server/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /tmp/source/owntone.tar.gz -L \ + "https://github.com/owntone/owntone-server/archive/${DAAPD_RELEASE}.tar.gz" && \ + tar xf /tmp/source/owntone.tar.gz -C \ + /tmp/source/owntone --strip-components=1 && \ + export PATH="/tmp/source:$PATH" && \ + cd /tmp/source/owntone && \ + autoreconf -i -v && \ + ./configure \ + --build=$CBUILD \ + --disable-avcodecsend \ + --enable-chromecast \ + --enable-itunes \ + --enable-lastfm \ + --enable-mpd \ + --host=$CHOST \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --prefix=/usr \ + --sysconfdir=/etc && \ + make && \ + make DESTDIR=/tmp/daapd-build install && \ + mv /tmp/daapd-build/etc/owntone.conf /tmp/daapd-build/etc/owntone.conf.orig ############## runtime stage ############## -FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.12 +FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.15 # set version label ARG BUILD_DATE @@ -105,29 +102,27 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="BernsteinA" RUN \ - echo "**** install runtime packages ****" && \ - apk add --no-cache \ - avahi \ - confuse \ - dbus \ - ffmpeg \ - json-c \ - libcurl \ - libevent \ - libgcrypt \ - libplist \ - libressl \ - libsodium \ - libunistring \ - libwebsockets \ - protobuf-c \ - sqlite \ - sqlite-libs && \ - apk add --no-cache \ - --repository http://nl.alpinelinux.org/alpine/edge/community \ - mxml && \ - apk add --no-cache \ - --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ + echo "**** install runtime packages ****" && \ + apk add -U --update --no-cache \ + avahi \ + confuse \ + curl \ + dbus \ + ffmpeg \ + json-c \ + libcurl \ + libevent \ + libgcrypt \ + libplist \ + libressl \ + libsodium \ + libunistring \ + libwebsockets \ + mxml \ + protobuf-c \ + sqlite \ + sqlite-libs && \ + apk add -U --update --no-cache --repository https://dl-cdn.alpinelinux.org/alpine/edge/testing \ librespot # copy buildstage and local files @@ -137,4 +132,5 @@ COPY root/ / # ports and volumes EXPOSE 3689 -VOLUME /config /music + +VOLUME /config diff --git a/readme-vars.yml b/readme-vars.yml index 6993172..a8f1c0b 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -65,6 +65,7 @@ app_setup_block: | # changelog changelogs: + - { date: "12.02.22:", desc: "Rebase to Alpine 3.15." } - { date: "14.09.21:", desc: "Enabled librespot. Disabled spotify on ARMv7" } - { date: "10.07.21:", desc: "Change of paths to work with the new package name, OwnTone." } - { date: "02.04.21:", desc: "Update upstream repo, again." }