Live video on the AT Protocol

build: fixes for flaky apt in docker builds

* build: custom sources.list

* build: --context-sub-path on kaniko

* build: add custom winehq mirror ig

* build: whatever, build from root

* build: add apt-mirror instructions

* build: no cache i guess???

* build: i don't even know. try azure?

authored by

Eli Mallon and committed by
GitHub
a9f0aa60 a6944dea

+101 -26
+1 -1
.ci/dockerfile-hash.yaml
··· 1 1 variables: 2 - DOCKERFILE_HASH: 9210e58f55aae506561fe1e3e8c38336d062a26e 2 + DOCKERFILE_HASH: 8f02476e6d54c58386f461a8b2cffe2b2d53a9bd
+1 -2
Makefile
··· 452 452 453 453 .PHONY: docker-build-builder 454 454 docker-build-builder: 455 - cd docker \ 456 - && podman build --target=builder --os=linux --arch=amd64 -f build.Dockerfile -t dist.stream.place/streamplace/streamplace:builder . 455 + podman build --target=builder --os=linux --arch=amd64 -f docker/build.Dockerfile -t dist.stream.place/streamplace/streamplace:builder . 457 456 458 457 .PHONY: docker-build-in-container 459 458 docker-build-in-container:
+29 -23
docker/build.Dockerfile
··· 10 10 ENV NODE_VERSION 22.15.0 11 11 ENV DEBIAN_FRONTEND noninteractive 12 12 13 + RUN apt update && apt install -y ca-certificates 14 + 15 + ADD docker/sources.list /etc/apt/sources.list 16 + ADD docker/winehq.key /etc/apt/keyrings/winehq-archive.key 17 + RUN dpkg --add-architecture i386 && dpkg --add-architecture arm64 18 + 19 + # Haven't automated it yet, so here's my instructors for mirroring winehq: 20 + # /etc/apt/mirror.list: 21 + # deb-i386 https://dl.winehq.org/wine-builds/ubuntu jammy main 22 + # deb-all https://dl.winehq.org/wine-builds/ubuntu jammy main 23 + # deb-amd64 [arch=amd64,i386 signed-by=/etc/apt/keyrings/winehq-archive.key] https://dl.winehq.org/wine-builds/ubuntu jammy main 24 + # 25 + # go install github.com/minio/mc@latest 26 + # mc alias set streamplace-crap https://storage.googleapis.com/ ACCESS_KEY SECRET_KEY 27 + # apt-mirror 28 + # mc mirror --overwrite /var/spool/apt-mirror/mirror/dl.winehq.org/ streamplace-crap/streamplace-crap/dl.winehq.org/ 29 + 13 30 RUN apt update \ 14 31 && apt install -y build-essential curl git openjdk-17-jdk unzip jq g++ python3-pip ninja-build \ 15 32 gcc-aarch64-linux-gnu g++-aarch64-linux-gnu clang lld qemu-user-static pkg-config \ 16 33 nasm gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64-tools zip bison flex expect \ 17 34 mono-runtime nuget mono-xsp4 squashfs-tools \ 35 + libc6:arm64 libstdc++6:arm64 \ 36 + && apt install -y --install-recommends winehq-stable \ 18 37 && pip install meson tomli \ 19 38 && curl -L --fail https://go.dev/dl/go$GO_VERSION.linux-$TARGETARCH.tar.gz -o go.tar.gz \ 20 39 && tar -C /usr/local -xf go.tar.gz \ 21 40 && rm go.tar.gz 22 41 ENV PATH $PATH:/usr/local/go/bin:/root/go/bin:/root/.cargo/bin 23 42 24 - RUN dpkg --add-architecture i386 \ 25 - && curl -L -o /etc/apt/sources.list.d/winehq-jammy.sources https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources \ 26 - && curl -o /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key \ 27 - && apt update && apt install -y --install-recommends winehq-stable 28 - 29 - RUN echo 'deb [arch=arm64] http://ports.ubuntu.com/ jammy main multiverse universe' >> /etc/apt/sources.list \ 30 - && echo 'deb [arch=arm64] http://ports.ubuntu.com/ jammy-security main multiverse universe' >> /etc/apt/sources.list \ 31 - && echo 'deb [arch=arm64] http://ports.ubuntu.com/ jammy-backports main multiverse universe' >> /etc/apt/sources.list \ 32 - && echo 'deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates main multiverse universe' >> /etc/apt/sources.list \ 33 - && dpkg --add-architecture arm64 \ 34 - && bash -c "apt update || echo 'ignoring errors'" \ 35 - && apt install -y libc6:arm64 libstdc++6:arm64 36 - 37 43 RUN export NODEARCH="$TARGETARCH" \ 38 44 && if [ "$TARGETARCH" = "amd64" ]; then export NODEARCH="x64"; fi \ 39 45 && curl -L --fail https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$NODEARCH.tar.xz -o node.tar.gz \ ··· 63 69 64 70 RUN go env -w GOTOOLCHAIN=go$GO_VERSION 65 71 66 - FROM builder AS cached-builder 67 - ARG CI_COMMIT_BRANCH=next 68 - ENV CI_COMMIT_BRANCH $CI_COMMIT_BRANCH 69 - WORKDIR /cached-build 70 - RUN git clone https://git.stream.place/streamplace/streamplace \ 71 - && cd streamplace \ 72 - && make version install check app android -j$(nproc) \ 73 - && make node \ 74 - && cd .. \ 75 - && rm -rf streamplace 72 + # FROM builder AS cached-builder 73 + # ARG CI_COMMIT_BRANCH=next 74 + # ENV CI_COMMIT_BRANCH $CI_COMMIT_BRANCH 75 + # WORKDIR /cached-build 76 + # RUN git clone https://git.stream.place/streamplace/streamplace \ 77 + # && cd streamplace \ 78 + # && make version install check app android -j$(nproc) \ 79 + # && make node \ 80 + # && cd .. \ 81 + # && rm -rf streamplace 76 82 77 83 LABEL org.opencontainers.image.authors="support@stream.place"
+17
docker/sources.list
··· 1 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy main restricted 2 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy-updates main restricted 3 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy universe 4 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy-updates universe 5 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy multiverse 6 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy-updates multiverse 7 + deb [arch=amd64,i386] http://azure.archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse 8 + deb [arch=amd64,i386] http://security.ubuntu.com/ubuntu/ jammy-security main restricted 9 + deb [arch=amd64,i386] http://security.ubuntu.com/ubuntu/ jammy-security universe 10 + deb [arch=amd64,i386] http://security.ubuntu.com/ubuntu/ jammy-security multiverse 11 + 12 + deb [arch=amd64,i386 signed-by=/etc/apt/keyrings/winehq-archive.key] https://storage.googleapis.com/streamplace-crap/dl.winehq.org/wine-builds/ubuntu/ jammy main 13 + 14 + deb [arch=arm64] http://azure.ports.ubuntu.com/ jammy main multiverse universe 15 + deb [arch=arm64] http://azure.ports.ubuntu.com/ jammy-security main multiverse universe 16 + deb [arch=arm64] http://azure.ports.ubuntu.com/ jammy-backports main multiverse universe 17 + deb [arch=arm64] http://azure.ports.ubuntu.com/ jammy-updates main multiverse universe
+53
docker/winehq.key
··· 1 + -----BEGIN PGP PUBLIC KEY BLOCK----- 2 + 3 + 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 51 + uNBEXR+VjRvm 52 + =NUWj 53 + -----END PGP PUBLIC KEY BLOCK-----