| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=25.10 |
| ADD file:7992b30df2d5e1a9868a357037fee7a935fb600c535045c3dae00a6d2da0ffea in / |
| CMD ["/bin/bash"] |
| RUN /bin/sh -c echo "deb http://ubuntu.ethz.ch/ubuntu/ noble main restricted universe multiverse" > /etc/apt/sources.list && echo "deb http://ubuntu.ethz.ch/ubuntu/ noble-updates main restricted universe multiverse" >> /etc/apt/sources.list && echo "deb http://ubuntu.ethz.ch/ubuntu/ noble-security main restricted universe multiverse" >> /etc/apt/sources.list && echo "deb http://ubuntu.ethz.ch/ubuntu/ noble-backports main restricted universe multiverse" >> /etc/apt/sources.list && apt update # buildkit |
| RUN /bin/sh -c apt update && apt install -y xvfb libgtk-3-0 unzip xz-utils wget autoconf pkg-config build-essential curl libpng-dev zip git git-lfs jq fonts-urw-base35 libfreetype6-dev libfontconfig1-dev ghostscript openssh-client fonts-noto-color-emoji fonts-dejavu-core libxml2 libxml2-dev webp && fc-cache -f -v && apt clean && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c mkdir -p /app/danser/songs /app/danser/settings /app/danser/videos /app/danser/screenshots # buildkit |
| RUN /bin/sh -c DAN_URL=$(curl -s https://api.github.com/repos/Wieku/danser-go/releases/latest | jq -r '.assets[] | select(.name | endswith("linux.zip")) | .browser_download_url') && wget -qO /tmp/danser.zip "$DAN_URL" && unzip /tmp/danser.zip -d /app/danser && chmod +x /app/danser/danser-cli && rm -r /app/danser/ffmpeg # buildkit |
| RUN /bin/sh -c wget -qO- $(curl -s https://api.github.com/repos/BtbN/FFmpeg-Builds/releases/latest | grep "browser_download_url.*linux64-gpl-shared.tar.xz" | cut -d '"' -f 4) -O /tmp/ffmpeg.tar.xz && tar -xvf /tmp/ffmpeg.tar.xz -C /tmp && mv /tmp/ffmpeg-*/bin/* /usr/local/bin/ && mv /tmp/ffmpeg-*/lib/* /usr/local/lib/ && mv /tmp/ffmpeg-*/include/* /usr/local/include/ && mkdir -p /app/danser/ffmpeg && cp /usr/local/bin/ffmpeg /app/danser/ffmpeg/ && cp /usr/local/bin/ffprobe /app/danser/ffmpeg/ && cp /usr/local/bin/ffplay /app/danser/ffmpeg/ && ldconfig # buildkit |
| RUN /bin/sh -c IMAGICK_URL=$(curl -s https://api.github.com/repos/ImageMagick/ImageMagick/releases/latest | jq -r '.tarball_url') && wget -qO- "$IMAGICK_URL" | tar xz && cd ImageMagick-* && ./configure --prefix=/usr/local --with-bzlib=yes --with-fontconfig=yes --with-freetype=yes --with-gslib=yes --with-gvc=yes --with-jpeg=yes --with-jp2=yes --with-png=yes --with-tiff=yes --with-xml=yes --with-gs-font-dir=yes && make -j$(nproc) && make install && ldconfig /usr/local/lib/ && cd / && rm -rf ImageMagick-* # buildkit |
| RUN /bin/sh -c curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g npm@latest && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c mkdir -p /app/danser/custom-replays/ # buildkit |
| RUN /bin/sh -c mkdir -p /app/danser/skins/default-skin/ # buildkit |
| COPY src/maps/* /app/danser/songs/ # buildkit |
| COPY src/replays/* /app/danser/custom-replays/ # buildkit |
| COPY src/settings/* /app/danser/settings/ # buildkit |
| COPY src/default-skin/ /app/danser/skins/default-skin/ # buildkit |
| WORKDIR /app/danser |