From 8107c1581e73f976fe85b413311ed9b00d0f2cb9 Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Thu, 8 Aug 2024 09:47:42 +0200 Subject: [PATCH 01/57] fix as->AS casing --- packages/abseil-cpp/Containerfile | 10 +++---- packages/argp-standalone/Containerfile | 10 +++---- packages/autoconf-archive/Containerfile | 8 +++--- packages/autoconf/Containerfile | 8 +++--- packages/automake/Containerfile | 10 +++---- packages/aws-cli/Containerfile | 10 +++---- packages/bash/Containerfile | 10 +++---- packages/bc/Containerfile | 10 +++---- packages/binutils/Containerfile | 10 +++---- packages/bison/Containerfile | 8 +++--- packages/buf/Containerfile | 8 +++--- packages/busybox/Containerfile | 10 +++---- packages/bzip2/Containerfile | 10 +++---- packages/ca-certificates/Containerfile | 2 +- packages/ccid/Containerfile | 10 +++---- packages/clang/Containerfile | 10 +++---- packages/cmake/Containerfile | 10 +++---- packages/coreutils/Containerfile | 10 +++---- packages/cpio/Containerfile | 10 +++---- packages/curl/Containerfile | 10 +++---- packages/diffutils/Containerfile | 10 +++---- packages/docbook-xml/Containerfile | 10 +++---- packages/docbook-xsl/Containerfile | 10 +++---- packages/dosfstools/Containerfile | 10 +++---- packages/e2fsprogs/Containerfile | 10 +++---- packages/ed/Containerfile | 10 +++---- packages/eif_build/Containerfile | 10 +++---- packages/elfutils/Containerfile | 10 +++---- packages/file/Containerfile | 10 +++---- packages/filesystem/Containerfile | 4 +-- packages/findutils/Containerfile | 10 +++---- packages/flashtools/Containerfile | 8 +++--- packages/flex/Containerfile | 10 +++---- packages/gawk/Containerfile | 10 +++---- packages/gcc/Containerfile | 12 ++++----- packages/gen_initramfs/Containerfile | 10 +++---- packages/gettext/Containerfile | 8 +++--- packages/git/Containerfile | 12 ++++----- packages/go-md2man/Containerfile | 8 +++--- packages/go/Containerfile | 12 ++++----- packages/gpg/Containerfile | 12 ++++----- packages/grep/Containerfile | 10 +++---- packages/grpcurl/Containerfile | 8 +++--- packages/grub/Containerfile | 10 +++---- packages/gzip/Containerfile | 10 +++---- packages/helm/Containerfile | 8 +++--- packages/icu/Containerfile | 10 +++---- packages/jq/Containerfile | 10 +++---- packages/json-c/Containerfile | 10 +++---- packages/k9s/Containerfile | 8 +++--- packages/ksops-dry-run/Containerfile | 8 +++--- packages/kubeconform/Containerfile | 8 +++--- packages/kubectl/Containerfile | 8 +++--- packages/kustomize-sops/Containerfile | 8 +++--- packages/kustomize/Containerfile | 8 +++--- packages/libarchive/Containerfile | 10 +++---- packages/libassuan/Containerfile | 12 ++++----- packages/libcap/Containerfile | 12 ++++----- packages/libffi/Containerfile | 10 +++---- packages/libgcrypt/Containerfile | 12 ++++----- packages/libgpg-error/Containerfile | 12 ++++----- packages/libksba/Containerfile | 12 ++++----- packages/libqrencode/Containerfile | 10 +++---- packages/libtool/Containerfile | 10 +++---- packages/libunwind/Containerfile | 10 +++---- packages/libusb/Containerfile | 10 +++---- packages/libxml2/Containerfile | 10 +++---- packages/libxslt/Containerfile | 10 +++---- packages/libzstd/Containerfile | 10 +++---- packages/linux-airgap/Containerfile | 10 +++---- packages/linux-generic/Containerfile | 10 +++---- packages/linux-headers/Containerfile | 10 +++---- packages/linux-nitro/Containerfile | 10 +++---- packages/lld/Containerfile | 10 +++---- packages/llvm/Containerfile | 10 +++---- packages/llvm13/Containerfile | 10 +++---- packages/lua/Containerfile | 10 +++---- packages/lzip/Containerfile | 10 +++---- packages/m4/Containerfile | 10 +++---- packages/make/Containerfile | 10 +++---- packages/meson/Containerfile | 10 +++---- packages/mockgen/Containerfile | 8 +++--- packages/mtools/Containerfile | 10 +++---- packages/musl-fts/Containerfile | 10 +++---- packages/musl-obstack/Containerfile | 10 +++---- packages/musl/Containerfile | 10 +++---- packages/ncurses/Containerfile | 10 +++---- packages/ninja/Containerfile | 10 +++---- packages/npth/Containerfile | 12 ++++----- packages/opensc/Containerfile | 10 +++---- packages/openssh/Containerfile | 10 +++---- packages/openssl/Containerfile | 10 +++---- packages/pcsc-lite/Containerfile | 12 ++++----- packages/pcsc-tools/Containerfile | 10 +++---- packages/perl-module-build/Containerfile | 10 +++---- packages/perl-pod-parser/Containerfile | 10 +++---- packages/perl/Containerfile | 12 ++++----- packages/pkgconf/Containerfile | 10 +++---- packages/po4a/Containerfile | 10 +++---- packages/postgresql/Containerfile | 10 +++---- packages/protobuf/Containerfile | 10 +++---- packages/protoc-gen-go-grpc/Containerfile | 8 +++--- packages/protoc-gen-go/Containerfile | 8 +++--- .../protoc-gen-grpc-gateway/Containerfile | 8 +++--- packages/protoc-gen-openapiv2/Containerfile | 8 +++--- packages/protoc-go-inject-tag/Containerfile | 8 +++--- packages/py-awscrt/Containerfile | 10 +++---- packages/py-botocore/Containerfile | 8 +++--- packages/py-build/Containerfile | 8 +++--- packages/py-certifi/Containerfile | 8 +++--- packages/py-cffi/Containerfile | 10 +++---- packages/py-colorama/Containerfile | 8 +++--- packages/py-cparser/Containerfile | 10 +++---- packages/py-cryptography/Containerfile | 10 +++---- packages/py-dateutil/Containerfile | 8 +++--- packages/py-distro/Containerfile | 8 +++--- packages/py-docutils/Containerfile | 8 +++--- packages/py-flit/Containerfile | 8 +++--- packages/py-gpep517/Containerfile | 8 +++--- packages/py-installer/Containerfile | 10 +++---- packages/py-jmespath/Containerfile | 8 +++--- packages/py-packaging/Containerfile | 8 +++--- packages/py-pep517/Containerfile | 8 +++--- packages/py-prompt_toolkit/Containerfile | 8 +++--- packages/py-ruamel.yaml/Containerfile | 10 +++---- packages/py-semantic-version/Containerfile | 10 +++---- packages/py-setuptools-rust/Containerfile | 10 +++---- packages/py-setuptools-scm/Containerfile | 10 +++---- packages/py-setuptools/Containerfile | 10 +++---- packages/py-six/Containerfile | 8 +++--- packages/py-toml/Containerfile | 8 +++--- packages/py-typing-extensions/Containerfile | 10 +++---- packages/py-urllib3/Containerfile | 10 +++---- packages/py-wcwidth/Containerfile | 10 +++---- packages/py-wheel/Containerfile | 8 +++--- packages/python/Containerfile | 12 ++++----- packages/redis/Containerfile | 10 +++---- packages/rust/Containerfile | 18 ++++++------- packages/sed/Containerfile | 10 +++---- packages/sops/Containerfile | 8 +++--- packages/sqlite3/Containerfile | 10 +++---- packages/stage0/Containerfile | 26 +++++++++---------- packages/stage1/Containerfile | 14 +++++----- packages/stage2/Containerfile | 10 +++---- packages/stage3/Containerfile | 10 +++---- packages/strace/Containerfile | 10 +++---- packages/sxctl/Containerfile | 10 +++---- packages/syslinux/Containerfile | 12 ++++----- packages/talosctl/Containerfile | 8 +++--- packages/tar/Containerfile | 10 +++---- packages/tcl/Containerfile | 10 +++---- packages/texinfo/Containerfile | 10 +++---- packages/tflint/Containerfile | 8 +++--- packages/tofu/Containerfile | 8 +++--- packages/tpm2-tools/Containerfile | 10 +++---- packages/tpm2-tss/Containerfile | 10 +++---- packages/util-linux/Containerfile | 10 +++---- packages/xorriso/Containerfile | 12 ++++----- packages/xz/Containerfile | 10 +++---- packages/yq/Containerfile | 8 +++--- packages/zig/Containerfile | 10 +++---- packages/zip/Containerfile | 10 +++---- packages/zlib/Containerfile | 10 +++---- 163 files changed, 795 insertions(+), 795 deletions(-) diff --git a/packages/abseil-cpp/Containerfile b/packages/abseil-cpp/Containerfile index eaa3ba4..278b1c1 100644 --- a/packages/abseil-cpp/Containerfile +++ b/packages/abseil-cpp/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=20240116.2 ENV SRC_HASH=733726b8c3a6d39a4120d7e45ea8b41a434cdacde401cba500f14236c49b39dc ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/abseil/abseil-cpp/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/linux-headers . / @@ -38,8 +38,8 @@ RUN <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/argp-standalone/Containerfile b/packages/argp-standalone/Containerfile index 316032f..2e95803 100644 --- a/packages/argp-standalone/Containerfile +++ b/packages/argp-standalone/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.5.0 ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/argp-standalone/argp-standalone/archive/refs/tags/${SRC_FILE} ENV SRC_HASH=c29eae929dfebd575c38174f2c8c315766092cec99a8f987569d0cad3c6d64f6 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -32,12 +32,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux install -D -m644 argp.h /rootfs/usr/include/argp.h install -D -m755 libargp.a /rootfs/usr/lib/libargp.a EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/autoconf-archive/Containerfile b/packages/autoconf-archive/Containerfile index f174fd7..ab3a800 100644 --- a/packages/autoconf-archive/Containerfile +++ b/packages/autoconf-archive/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2023.02.20 ENV SRC_HASH=71d4048479ae28f1f5794619c3d72df9c01df49b1c628ef85fde37596dc31a33 ENV SRC_FILE=autoconf-archive-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/autoconf-archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / #COPY --from=stagex/gcc . / #COPY --from=stagex/binutils . / @@ -30,5 +30,5 @@ EOF from build as install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/autoconf/Containerfile b/packages/autoconf/Containerfile index 45e4e0c..66d5b9b 100644 --- a/packages/autoconf/Containerfile +++ b/packages/autoconf/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.71 ENV SRC_HASH=f14c83cfebcc9427f2c3cea7258bd90df972d92eb26752da4ddad81c87a0faa4 ENV SRC_FILE=autoconf-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/autoconf/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -28,5 +28,5 @@ EOF from build as install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/automake/Containerfile b/packages/automake/Containerfile index a399055..9b1ef31 100644 --- a/packages/automake/Containerfile +++ b/packages/automake/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.16.5 ENV SRC_HASH=f01d58cd6d9d77fbdca9eb4bbd5ead1988228fdb73d6f7a201f5f8d6b118b469 ENV SRC_FILE=automake-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/automake/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -25,8 +25,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/aws-cli/Containerfile b/packages/aws-cli/Containerfile index f6c7338..f7b20a1 100644 --- a/packages/aws-cli/Containerfile +++ b/packages/aws-cli/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.15.31 ENV SRC_HASH=6507f894a30036ad002b54e12f49959c592c8507765405c52cf7b4ba4dc2509d ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/aws/aws-cli/archive/refs/tags/${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -42,7 +42,7 @@ RUN --network=none \ --wheel-dir .dist \ --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl @@ -50,5 +50,5 @@ RUN --network=none <<-EOF rm /rootfs/usr/lib/python*/site-packages/awscli-*.dist-info/RECORD EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/bash/Containerfile b/packages/bash/Containerfile index a2c125e..c24def6 100644 --- a/packages/bash/Containerfile +++ b/packages/bash/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=5.2.21 ENV SRC_HASH=c8e31bdc59b69aaffc5b36509905ba3e5cbb12747091d27b4b977f078560d5b8 ENV SRC_FILE=bash-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/bash/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -31,8 +31,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/bc/Containerfile b/packages/bc/Containerfile index 8940995..dd2cef3 100644 --- a/packages/bc/Containerfile +++ b/packages/bc/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.07.1 ENV SRC_HASH=62adfca89b0a1c0164c2cdca59ca210c1d44c3ffc46daf9931cf4942664cb02a ENV SRC_FILE=bc-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/bc/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/coreutils . / COPY --from=stagex/musl . / @@ -42,8 +42,8 @@ RUN --network=none <<-EOF make -j1 EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/binutils/Containerfile b/packages/binutils/Containerfile index 504dd25..c508583 100644 --- a/packages/binutils/Containerfile +++ b/packages/binutils/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.35 ENV SRC_HASH=1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 ENV SRC_FILE=binutils-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/binutils/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf binutils-${VERSION}.tar.xz WORKDIR binutils-${VERSION} @@ -49,8 +49,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/bison/Containerfile b/packages/bison/Containerfile index 663affe..b3630d9 100644 --- a/packages/bison/Containerfile +++ b/packages/bison/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.4.2 ENV SRC_HASH=27d05534699735dc69e86add5b808d6cb35900ad3fd63fa82e3eb644336abfa0 ENV SRC_FILE=bison-${VERSION}.tar.xz ENV SRC_SITE=http://mirrors.kernel.org/gnu/bison/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / @@ -31,5 +31,5 @@ EOF from build as install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/buf/Containerfile b/packages/buf/Containerfile index aeba1b1..1b3fe66 100644 --- a/packages/buf/Containerfile +++ b/packages/buf/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.30.1 ENV SRC_HASH=56da0c31b11bd15b99049af8b364c7bf4e11106152ab27d5ccb98d28123ab785 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/bufbuild/buf/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/buf /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/busybox/Containerfile b/packages/busybox/Containerfile index dea74b9..7d1249b 100644 --- a/packages/busybox/Containerfile +++ b/packages/busybox/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.36.1 ENV SRC_HASH=b8cc24c9574d809e7279c3be349795c5d5ceb6fdf19ca709f80cde50e47de314 ENV SRC_FILE=busybox-${VERSION}.tar.bz2 ENV SRC_SITE=https://busybox.net/downloads/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xjf ${SRC_FILE} WORKDIR busybox-${VERSION} @@ -51,7 +51,7 @@ RUN --network=none <<-EOF make EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux mkdir -p /rootfs/usr/bin @@ -61,6 +61,6 @@ RUN --network=none <<-EOF /usr/bin/busybox --install -s usr/bin EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / ENTRYPOINT ["/bin/sh"] diff --git a/packages/bzip2/Containerfile b/packages/bzip2/Containerfile index cff1563..97b1aaf 100644 --- a/packages/bzip2/Containerfile +++ b/packages/bzip2/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.0.8 ENV SRC_HASH=ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269 ENV SRC_FILE=bzip2-${VERSION}.tar.gz ENV SRC_SITE=https://sourceware.org/pub/bzip2/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -22,8 +22,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" all EOF -FROM build as install +FROM build AS install RUN --network=none make PREFIX="/rootfs/usr" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/ca-certificates/Containerfile b/packages/ca-certificates/Containerfile index c08fec0..d58f003 100644 --- a/packages/ca-certificates/Containerfile +++ b/packages/ca-certificates/Containerfile @@ -33,7 +33,7 @@ RUN --network=none <<-EOF make EOF -FROM build as install +FROM build AS install RUN --network=none make install DESTDIR=/rootfs RUN --network=none mv cert.pem /rootfs/etc/ssl/certs/ca-certificates.crt diff --git a/packages/ccid/Containerfile b/packages/ccid/Containerfile index a9d1b97..f863b1d 100644 --- a/packages/ccid/Containerfile +++ b/packages/ccid/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.5.5 ENV SRC_HASH=194708f75fe369d45dd7c15e8b3e8a7db8b49cfc5557574ca2a2e76ef12ca0ca ENV SRC_FILE=ccid-${VERSION}.tar.bz2 ENV SRC_SITE=https://ccid.apdu.fr/files/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/m4 . / COPY --from=stagex/musl . / @@ -34,8 +34,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index 72e896a..2776004 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.0.6 ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvm-org-${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -41,8 +41,8 @@ RUN --network=none <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/cmake/Containerfile b/packages/cmake/Containerfile index 0914059..d0de56e 100644 --- a/packages/cmake/Containerfile +++ b/packages/cmake/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.27.8 ENV SRC_HASH=fece24563f697870fbb982ea8bf17482c9d5f855d8c9bf0b82463d76c9e8d0cc ENV SRC_FILE=cmake-${VERSION}.tar.gz ENV SRC_SITE=https://cmake.org/files/v3.27/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/ninja . / @@ -33,8 +33,8 @@ RUN --network=none <<-EOF ninja EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR=/rootfs bin/cmake -P cmake_install.cmake -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/coreutils/Containerfile b/packages/coreutils/Containerfile index dd6e739..a23f121 100644 --- a/packages/coreutils/Containerfile +++ b/packages/coreutils/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=9.4 ENV SRC_HASH=ea613a4cf44612326e917201bbbcdfbd301de21ffc3b59b6e5c07e040b275e52 ENV SRC_FILE=coreutils-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/coreutils/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/openssl . / @@ -38,8 +38,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/cpio/Containerfile b/packages/cpio/Containerfile index 6a600b5..e6efeb8 100644 --- a/packages/cpio/Containerfile +++ b/packages/cpio/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.15 ENV SRC_HASH=efa50ef983137eefc0a02fdb51509d624b5e3295c980aa127ceee4183455499e ENV SRC_FILE=cpio-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/cpio/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -28,8 +28,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/curl/Containerfile b/packages/curl/Containerfile index 660f71c..7fbc922 100644 --- a/packages/curl/Containerfile +++ b/packages/curl/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=8.9.1 ENV SRC_HASH=f292f6cc051d5bbabf725ef85d432dfeacc8711dd717ea97612ae590643801e5 ENV SRC_FILE=curl-${VERSION}.tar.xz ENV SRC_SITE=https://curl.se/download/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / @@ -33,8 +33,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make install DESTDIR=/rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/diffutils/Containerfile b/packages/diffutils/Containerfile index dd17cbb..6403813 100644 --- a/packages/diffutils/Containerfile +++ b/packages/diffutils/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=3.10 ENV SRC_HASH=90e5e93cc724e4ebe12ede80df1634063c7a855692685919bfe60b556c9bd09e ENV SRC_FILE=diffutils-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/diffutils/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -28,8 +28,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/docbook-xml/Containerfile b/packages/docbook-xml/Containerfile index a0f7202..1c15ee8 100644 --- a/packages/docbook-xml/Containerfile +++ b/packages/docbook-xml/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.5 ENV SRC_HASH_4_5=4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4 ENV SRC_HASH_4_4=02f159eb88c4254d95e831c51c144b1863b216d909b5ff45743a1ce6f5273090 @@ -7,14 +7,14 @@ ENV SRC_HASH_4_2=acc4601e4f97a196076b7e64b368d9248b07c7abf26b34a02cca40eeebe60fa ENV SRC_HASH_4_1_2=30f0644064e0ea71751438251940b1431f46acada814a062870f486c772e7772 ENV SRC_SITE=https://docbook.org/xml -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH_4_5} ${SRC_SITE}/4.5/docbook-xml-4.5.zip . ADD --checksum=sha256:${SRC_HASH_4_4} ${SRC_SITE}/4.4/docbook-xml-4.4.zip . ADD --checksum=sha256:${SRC_HASH_4_3} ${SRC_SITE}/4.3/docbook-xml-4.3.zip . ADD --checksum=sha256:${SRC_HASH_4_2} ${SRC_SITE}/4.2/docbook-xml-4.2.zip . ADD --checksum=sha256:${SRC_HASH_4_1_2} ${SRC_SITE}/4.1.2/docbkx412.zip . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -278,8 +278,8 @@ RUN --network=none <<-EOF out/etc/xml/catalog EOF -FROM build as install +FROM build AS install RUN --network=none mv out/ /rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/docbook-xsl/Containerfile b/packages/docbook-xsl/Containerfile index 7dc1097..2664fc9 100644 --- a/packages/docbook-xsl/Containerfile +++ b/packages/docbook-xsl/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.79.2 ENV SRC_HASH=966188d7c05fc76eaca115a55893e643dd01a3486f6368733c9ad974fcee7a26 ENV SRC_FILE=docbook-xsl-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/docbook/xslt10-stylesheets/releases/download/release%2F${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/docbook-xml . / COPY --from=stagex/zlib . / @@ -51,8 +51,8 @@ RUN --network=none <<-EOF done EOF -FROM build as install +FROM build AS install RUN --network=none mv out /rootfs && ls -Rlah /rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/dosfstools/Containerfile b/packages/dosfstools/Containerfile index daee2a5..365427e 100644 --- a/packages/dosfstools/Containerfile +++ b/packages/dosfstools/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.2 ENV SRC_HASH=64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527 ENV SRC_FILE=dosfstools-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/dosfstools/dosfstools/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -34,8 +34,8 @@ RUN --network=none <<-EOF --enable-compat-symlinks EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/e2fsprogs/Containerfile b/packages/e2fsprogs/Containerfile index 22f9e2d..2aac137 100644 --- a/packages/e2fsprogs/Containerfile +++ b/packages/e2fsprogs/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.47.0 ENV SRC_HASH=74c8ea97c73294edc6c11dc5e7fbb4324f86c28efd66ad0ba50be4eec8a48be2 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/tytso/e2fsprogs/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/bash . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / @@ -36,8 +36,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/ed/Containerfile b/packages/ed/Containerfile index 1045086..0ee2ffa 100644 --- a/packages/ed/Containerfile +++ b/packages/ed/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.20 ENV SRC_HASH=c6030defe6ae172f1687906d7354054c75a6a9130af319d4e73c50a91959c5a6 ENV SRC_FILE=ed-${VERSION}.tar.lz ENV SRC_SITE=https://ftp.gnu.org/gnu/ed/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index 856e53c..ce147ab 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -1,10 +1,10 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.2.2 ENV SRC_HASH=525514cd5b28a315564e2c4b4425189b567b71bf13584804cf266ba6dee71a0e ENV SRC_FILE=eif_build.tgz ENV SRC_SITE=https://codeload.github.com/tkhq/eif_build/legacy.tar.gz/${VERSION} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} COPY --from=stagex/busybox . / COPY --from=stagex/musl . / @@ -23,7 +23,7 @@ RUN mv tkhq-eif_build-* eif_build WORKDIR eif_build RUN cargo fetch --locked -FROM fetch as build +FROM fetch AS build RUN --network=none \ cargo build \ --no-default-features \ @@ -31,9 +31,9 @@ RUN --network=none \ --release \ --target x86_64-unknown-linux-musl -FROM build as install +FROM build AS install WORKDIR /rootfs/usr/bin RUN cp /eif_build/target/x86_64-unknown-linux-musl/release/eif_build . -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/elfutils/Containerfile b/packages/elfutils/Containerfile index da15f5e..d97f761 100644 --- a/packages/elfutils/Containerfile +++ b/packages/elfutils/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.190 ENV SRC_HASH=8e00a3a9b5f04bc1dc273ae86281d2d26ed412020b391ffcc23198f10231d692 ENV SRC_FILE=elfutils-${VERSION}.tar.bz2 ENV SRC_SITE=https://sourceware.org/elfutils/ftp/${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -54,8 +54,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/file/Containerfile b/packages/file/Containerfile index 8f82b73..4e7ae53 100644 --- a/packages/file/Containerfile +++ b/packages/file/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=5.45 ENV SRC_HASH=28c01a5ef1a127ef71758222ca019ba6c6bfa4a8fe20c2b525ce75943ee9da3c ENV SRC_FILE=FILE5_45.tar.gz ENV SRC_SITE=https://github.com/file/file/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -32,8 +32,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/filesystem/Containerfile b/packages/filesystem/Containerfile index 07fca20..f99aa93 100644 --- a/packages/filesystem/Containerfile +++ b/packages/filesystem/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as build +FROM scratch AS build COPY --from=stagex/stage3 . / WORKDIR rootfs RUN <<-EOF @@ -104,7 +104,7 @@ COPY --chmod=644 <<-EOF etc/os-release BUG_REPORT_URL="https://codeberg.org/stagex/stagex/issues" EOF -FROM scratch as package +FROM scratch AS package COPY --from=build /rootfs/. / USER 1000:1000 ENTRYPOINT ["/bin/sh"] diff --git a/packages/findutils/Containerfile b/packages/findutils/Containerfile index 2a8c738..f8bbfff 100644 --- a/packages/findutils/Containerfile +++ b/packages/findutils/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=4.9.0 ENV SRC_HASH=a2bfb8c09d436770edc59f50fa483e785b161a3b7b9d547573cb08065fd462fe ENV SRC_FILE=findutils-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/findutils/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/flashtools/Containerfile b/packages/flashtools/Containerfile index 66d103c..b4c0953 100644 --- a/packages/flashtools/Containerfile +++ b/packages/flashtools/Containerfile @@ -1,10 +1,10 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=d1e6f12568cb23387144a4b7a6535fe1bc1e79b1 ENV SRC_HASH=a68cdb4a2e312f96862119a6d829ac900b53d0cbc80caa5632efd43b5b7eed6c ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/osresearch/flashtools/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/make . / @@ -14,7 +14,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . RUN tar -xvf ${SRC_FILE} WORKDIR flashtools-${VERSION} -FROM fetch as build +FROM fetch AS build RUN --network=none make all from build as install @@ -27,5 +27,5 @@ RUN <<-EOF install -D -m 0755 uefi /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/flex/Containerfile b/packages/flex/Containerfile index 5e6a38d..67f8fee 100644 --- a/packages/flex/Containerfile +++ b/packages/flex/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.6.4 ENV SRC_HASH=e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995 ENV SRC_FILE=flex-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/westes/flex/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/perl . / COPY --from=stagex/gcc . / @@ -35,8 +35,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" LDFLAGS=-static EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gawk/Containerfile b/packages/gawk/Containerfile index 1d240de..2678666 100644 --- a/packages/gawk/Containerfile +++ b/packages/gawk/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=5.3.0 ENV SRC_HASH=ca9c16d3d11d0ff8c69d79dc0b47267e1329a69b39b799895604ed447d3ca90b ENV SRC_FILE=gawk-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/gawk/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gcc/Containerfile b/packages/gcc/Containerfile index e2c88ad..6f33c54 100644 --- a/packages/gcc/Containerfile +++ b/packages/gcc/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION 13.1.0 ENV SRC_FILE gcc-$VERSION.tar.xz ENV SRC_SITE https://mirrors.kernel.org/gnu/gcc/gcc-${VERSION}/${SRC_FILE} @@ -13,14 +13,14 @@ ENV MPC_HASH 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 ENV ISL_FILE isl-0.24.tar.bz2 ENV ISL_HASH fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . ADD --checksum=sha256:${GMP_HASH} ${DEP_SITE}/${GMP_FILE} . ADD --checksum=sha256:${MPFR_HASH} ${DEP_SITE}/${MPFR_FILE} . ADD --checksum=sha256:${MPC_HASH} ${DEP_SITE}/${MPC_FILE} . ADD --checksum=sha256:${ISL_HASH} ${DEP_SITE}/${ISL_FILE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf ${SRC_FILE} WORKDIR gcc-${VERSION} @@ -52,7 +52,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install-strip @@ -61,7 +61,7 @@ RUN --network=none <<-EOF rm -rf /rootfs/usr/lib64 EOF -FROM scratch as test +FROM scratch AS test COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -76,5 +76,5 @@ RUN <<-EOF ./main | grep "Success" EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gen_initramfs/Containerfile b/packages/gen_initramfs/Containerfile index 184ee0f..72f1ada 100644 --- a/packages/gen_initramfs/Containerfile +++ b/packages/gen_initramfs/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=6.8 ENV SRC_HASH=c969dea4e8bb6be991bbf7c010ba0e0a5643a3a8d8fb0a2aaa053406f1e965f3 ENV SRC_FILE=linux-${VERSION}.tar.xz ENV SRC_SITE=http://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -16,7 +16,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR linux-${VERSION} RUN --network=none gcc usr/gen_init_cpio.c -o usr/gen_init_cpio -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux mkdir -p /rootfs/usr/bin @@ -27,5 +27,5 @@ RUN --network=none <<-EOF cp -a usr/gen_init_cpio /rootfs/usr/bin EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gettext/Containerfile b/packages/gettext/Containerfile index 6c211f0..9ee996f 100644 --- a/packages/gettext/Containerfile +++ b/packages/gettext/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.21 ENV SRC_HASH=d20fcbb537e02dcf1383197ba05bd0734ef7bf5db06bdb241eb69b7d16b73192 ENV SRC_FILE=gettext-${VERSION}.tar.xz ENV SRC_SITE=https://mirrors.kernel.org/gnu/gettext/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -30,5 +30,5 @@ EOF from build as install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/git/Containerfile b/packages/git/Containerfile index ed2e9f9..a80848b 100644 --- a/packages/git/Containerfile +++ b/packages/git/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.9.5 ENV SRC_HASH=a4bea37ecb9a3fb5c0c8ef18c2f7eeaf8ccbcfec91f72f3bccfc6bf72a3e3902 ENV SRC_FILE=git-${VERSION}.tar.xz ENV SRC_SITE=http://mirrors.edge.kernel.org/pub/software/scm/git/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -38,10 +38,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/zlib . / COPY --from=stagex/musl . / @@ -56,5 +56,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/go-md2man/Containerfile b/packages/go-md2man/Containerfile index fbae729..fa26925 100644 --- a/packages/go-md2man/Containerfile +++ b/packages/go-md2man/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.0.3 ENV SRC_HASH=7ca3a04bb4ab83387538235decc42a535097a05d2fb9f2266d0c47b33119501f ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/cpuguy83/go-md2man/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -31,5 +31,5 @@ RUN <<-EOF cp bin/go-md2man /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/go/Containerfile b/packages/go/Containerfile index c39b01f..1406ea1 100644 --- a/packages/go/Containerfile +++ b/packages/go/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.22.3 ENV SRC_HASH=80648ef34f903193d72a59c0dff019f5f98ae0c9aa13ade0b0ecbff991a76f68 ENV SRC_FILE=go${VERSION}.src.tar.gz @@ -16,13 +16,13 @@ ENV SRC_HASH_BOOTSTRAP_1=f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f ENV SRC_FILE_BOOTSTRAP_1=go${VERSION_BOOTSTRAP_1}.tar.gz ENV SRC_SITE_BOOTSTRAP_1=https://dl.google.com/go/${SRC_FILE_BOOTSTRAP_1} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH_BOOTSTRAP_1} ${SRC_SITE_BOOTSTRAP_1} . ADD --checksum=sha256:${SRC_HASH_BOOTSTRAP_2} ${SRC_SITE_BOOTSTRAP_2} . ADD --checksum=sha256:${SRC_HASH_BOOTSTRAP_3} ${SRC_SITE_BOOTSTRAP_3} . ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -99,7 +99,7 @@ RUN --network=none <<-EOF bash make.bash EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr @@ -107,7 +107,7 @@ RUN <<-EOF cp -R bin lib /rootfs/usr EOF -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY <<-EOF test.go package main @@ -120,5 +120,5 @@ RUN <<-EOF ./test | grep "Success" EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gpg/Containerfile b/packages/gpg/Containerfile index 51838d1..86526bc 100644 --- a/packages/gpg/Containerfile +++ b/packages/gpg/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.4.4 ENV SRC_HASH=67ebe016ca90fa7688ce67a387ebd82c6261e95897db7b23df24ff335be85bc6 ENV SRC_FILE=gnupg-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/gnupg/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -32,10 +32,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/zlib . / COPY --from=stagex/musl . / @@ -56,5 +56,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/grep/Containerfile b/packages/grep/Containerfile index 3648bba..548d527 100644 --- a/packages/grep/Containerfile +++ b/packages/grep/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=3.11 ENV SRC_HASH=1db2aedde89d0dea42b16d9528f894c8d15dae4e190b59aecc78f5a951276eab ENV SRC_FILE=grep-${VERSION}.tar.xz ENV SRC_SITE=https://mirrors.kernel.org/gnu/grep/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/grpcurl/Containerfile b/packages/grpcurl/Containerfile index 0ad3c46..5fa0d53 100644 --- a/packages/grpcurl/Containerfile +++ b/packages/grpcurl/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.8.9 ENV SRC_HASH=962fe7d3da7653519d2975e130244af9286db32041b0745613aebf89949a9009 ENV SRC_FILE=v${VERSION}.tar.gz @@ -12,7 +12,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GOLDFLAGS="-w -extldflags \"-static\" -X \"main.version=${VERSION}\"" -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ WORKDIR grpcurl-${VERSION} ENV GOPATH="/grpcurl-${VERSION}" RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -trimpath -v ./cmd/grpcurl from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp grpcurl /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/grub/Containerfile b/packages/grub/Containerfile index a0b540d..b7213ca 100644 --- a/packages/grub/Containerfile +++ b/packages/grub/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.12 ENV SRC_HASH=b30919fa5be280417c17ac561bb1650f60cfb80cc6237fa1e2b6f56154cb9c91 ENV SRC_FILE=grub-${VERSION}.tar.gz ENV SRC_SITE=https://mirrors.kernel.org/gnu/grub/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/bison . / COPY --from=stagex/flex . / @@ -64,7 +64,7 @@ RUN --network=none <<-EOF make EOF -FROM build as install +FROM build AS install RUN <<-EOF cd build-pc make DESTDIR=/rootfs install-strip @@ -73,5 +73,5 @@ RUN <<-EOF make DESTDIR=/rootfs install-strip EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gzip/Containerfile b/packages/gzip/Containerfile index 0857012..f190d9e 100644 --- a/packages/gzip/Containerfile +++ b/packages/gzip/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.13 ENV SRC_HASH=7454eb6935db17c6655576c2e1b0fabefd38b4d0936e0f87f48cd062ce91a057 ENV SRC_FILE=gzip-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/gzip/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -29,8 +29,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/helm/Containerfile b/packages/helm/Containerfile index df0c5c1..a6560c1 100644 --- a/packages/helm/Containerfile +++ b/packages/helm/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.14.3 ENV SRC_HASH=e0d46f69954002d27eaac3bd6543ee4f486cdd3795c5aac921e7f02791df8d8e ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=on -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR helm-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -v -trimpath ./cmd/helm from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp helm /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/icu/Containerfile b/packages/icu/Containerfile index e3670d0..e255887 100644 --- a/packages/icu/Containerfile +++ b/packages/icu/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=74.2 ENV SRC_HASH=68db082212a96d6f53e35d60f47d38b962e9f9d207a74cfac78029ae8ff5e08c @@ -8,13 +8,13 @@ ENV SRC_DATA_BIN_L_HASH=2acdb1b982228040963d183b2dd9d321252c613e0f4db213d4bbc104 ENV SRC_FILE=icu4c-74_2-src.tgz ENV SRC_SITE=https://github.com/unicode-org/icu/releases/download/release-74-2 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE}/${SRC_FILE} . ADD --checksum=sha256:${SRC_DATA_HASH} ${SRC_SITE}/icu4c-74_2-data.zip . ADD --checksum=sha256:${SRC_DATA_BIN_B_HASH} ${SRC_SITE}/icu4c-74_2-data-bin-b.zip . ADD --checksum=sha256:${SRC_DATA_BIN_L_HASH} ${SRC_SITE}/icu4c-74_2-data-bin-l.zip . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/bash . / COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / @@ -36,7 +36,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF make DESTDIR=/rootfs install install -D -m644 /icu4c-74_2-data.zip /rootfs/usr/share/icu/74.2/ @@ -44,5 +44,5 @@ RUN --network=none <<-EOF install -D -m644 /icu4c-74_2-data-bin-l.zip /rootfs/usr/share/icu/74.2/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs / diff --git a/packages/jq/Containerfile b/packages/jq/Containerfile index 5c0e362..ba1e28e 100644 --- a/packages/jq/Containerfile +++ b/packages/jq/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.7.1 ENV SRC_HASH=478c9ca129fd2e3443fe27314b455e211e0d8c60bc8ff7df703873deeee580c2 ENV SRC_FILE=jq-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/jqlang/jq/releases/download/jq-${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -29,11 +29,11 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu make DESTDIR="/rootfs" install EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/json-c/Containerfile b/packages/json-c/Containerfile index e3f55b6..0b6881d 100644 --- a/packages/json-c/Containerfile +++ b/packages/json-c/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.17 ENV SRC_HASH=7550914d58fb63b2c3546f3ccfbe11f1c094147bd31a69dcd23714d7956159e6 ENV SRC_FILE=json-c-${VERSION}.tar.gz ENV SRC_SITE=https://s3.amazonaws.com/json-c_releases/releases/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -35,8 +35,8 @@ RUN <<-EOF cmake --build build --target all EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/k9s/Containerfile b/packages/k9s/Containerfile index c2e1440..e8c928d 100644 --- a/packages/k9s/Containerfile +++ b/packages/k9s/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.32.3 ENV SRC_HASH=1b22781ff5f1f5ab0f8c831fe68609411627406198b7de71ac5ea80b7100700e ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=off -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR k9s-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -trimpath -o k9s -v main.go from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp k9s /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/ksops-dry-run/Containerfile b/packages/ksops-dry-run/Containerfile index 9aef5e5..9491dff 100644 --- a/packages/ksops-dry-run/Containerfile +++ b/packages/ksops-dry-run/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.2.0 ENV SRC_HASH=80690d0d702b997aeb1ae6d6a7dc8ea8800d64c7307c004209387947bbd33aa2 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=off -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR ksops-dry-run-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none \ go build \ -v \ @@ -36,5 +36,5 @@ RUN <<-EOF cp ksops-dry-run /rootfs/usr/lib/kustomize/plugins/viduct.ai/v1/ksops/ksops EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/kubeconform/Containerfile b/packages/kubeconform/Containerfile index dee5fc7..160c86c 100644 --- a/packages/kubeconform/Containerfile +++ b/packages/kubeconform/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.6.4 ENV SRC_HASH=fa5f1f7de0d6cd97106b70965c6275cc5e7afb22ff6e2459a94f8f33341b5c93 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=off -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR kubeconform-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -o bin/ -trimpath -v ./... from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/kubeconform /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/kubectl/Containerfile b/packages/kubectl/Containerfile index a9f81ff..0cf0710 100644 --- a/packages/kubectl/Containerfile +++ b/packages/kubectl/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.29.3 ENV SRC_HASH=401d29af71cb962eb328cefd5166695587f195f9bd960edd1ede630f7e98bf7a ENV SRC_FILE=v${VERSION}.tar.gz @@ -12,7 +12,7 @@ ENV CGO_ENABLED=0 ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -21,7 +21,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR kubernetes-${VERSION} RUN GOPATH="/kubernetes-${VERSION}" go mod download -FROM fetch as build +FROM fetch AS build RUN --network=none go build -trimpath -v k8s.io/kubernetes/cmd/kubectl from build as install @@ -31,5 +31,5 @@ RUN <<-EOF cp kubectl /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/kustomize-sops/Containerfile b/packages/kustomize-sops/Containerfile index 0576d25..2dc6018 100644 --- a/packages/kustomize-sops/Containerfile +++ b/packages/kustomize-sops/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.3.1 ENV SRC_HASH=e7248a158d503a73d9f658cc9ac0ccf16a3d8efb856d93ca50a97f7b89332516 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=off -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR kustomize-sops-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -trimpath -v from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp kustomize-sops /rootfs/usr/lib/kustomize/plugins/viduct.ai/v1/ksops/ksops EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/kustomize/Containerfile b/packages/kustomize/Containerfile index 8b65b65..da2b129 100644 --- a/packages/kustomize/Containerfile +++ b/packages/kustomize/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.3.1 ENV SRC_HASH=04e7b957e764ba7d32ae182d0b290e75c8785c18ab922ae6ac7087de103fd8de ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=on -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR kustomize-${VERSION}/kustomize RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -v -trimpath from build as install @@ -32,5 +32,5 @@ RUN <<-EOF cp kustomize /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/libarchive/Containerfile b/packages/libarchive/Containerfile index 8785bfd..324aede 100644 --- a/packages/libarchive/Containerfile +++ b/packages/libarchive/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=3.7.4 ENV SRC_HASH=f887755c434a736a609cbd28d87ddbfbe9d6a3bb5b703c22c02f6af80a802735 ENV SRC_FILE=libarchive-${VERSION}.tar.xz ENV SRC_SITE=https://libarchive.org/downloads/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -26,8 +26,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libassuan/Containerfile b/packages/libassuan/Containerfile index 550762d..30e93e0 100644 --- a/packages/libassuan/Containerfile +++ b/packages/libassuan/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.5.6 ENV SRC_HASH=e9fd27218d5394904e4e39788f9b1742711c3e6b41689a31aa3380bd5aa4f426 ENV SRC_FILE=libassuan-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/libassuan/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -28,10 +28,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/busybox . / RUN /bin/sh <<-EOF @@ -43,5 +43,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libcap/Containerfile b/packages/libcap/Containerfile index 51481db..4759908 100644 --- a/packages/libcap/Containerfile +++ b/packages/libcap/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.69 ENV SRC_HASH=9cc2fa3ee744d881629cdac1a1b54c302e7684fda3e3622056218c7681642ffb ENV SRC_FILE=libcap-${VERSION}.tar.gz ENV SRC_SITE=https://git.kernel.org/pub/scm/libs/libcap/libcap.git/snapshot/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/bash . / COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / @@ -20,10 +20,10 @@ RUN tar -xzf ${SRC_FILE} WORKDIR libcap-${VERSION} RUN --network=none make -j "$(nproc)" lib=lib prefix=/usr GOLANG=no DESTDIR=/rootfs -FROM build as install +FROM build AS install RUN --network=none make lib=lib prefix=/usr GOLANG=no DESTDIR=/rootfs install -FROM scratch as test +FROM scratch AS test COPY --from=install /rootfs / RUN --network=none <<-EOF set -eux @@ -33,5 +33,5 @@ RUN --network=none <<-EOF capsh --license | grep License || true EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs / diff --git a/packages/libffi/Containerfile b/packages/libffi/Containerfile index 2807b41..13b49c6 100644 --- a/packages/libffi/Containerfile +++ b/packages/libffi/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=3.4.6 ENV SRC_HASH=b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e ENV SRC_FILE=libffi-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/libffi/libffi/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,7 +30,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu make DESTDIR="/rootfs" install @@ -38,5 +38,5 @@ RUN --network=none <<-EOF rm -rf /rootfs/usr/lib64 EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libgcrypt/Containerfile b/packages/libgcrypt/Containerfile index 24c345f..0a60990 100644 --- a/packages/libgcrypt/Containerfile +++ b/packages/libgcrypt/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.10.3 ENV SRC_HASH=8b0870897ac5ac67ded568dcfadf45969cfa8a6beb0fd60af2a9eadc2a3272aa ENV SRC_FILE=libgcrypt-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/libgcrypt/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -29,10 +29,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/busybox . / RUN /bin/sh <<-EOF @@ -44,5 +44,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libgpg-error/Containerfile b/packages/libgpg-error/Containerfile index baf7f02..3513bf3 100644 --- a/packages/libgpg-error/Containerfile +++ b/packages/libgpg-error/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.47 ENV SRC_HASH=9e3c670966b96ecc746c28c2c419541e3bcb787d1a73930f5e5f5e1bcbbb9bdb ENV SRC_FILE=libgpg-error-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/libgpg-error/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -28,10 +28,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/busybox . / RUN /bin/sh <<-EOF @@ -43,5 +43,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libksba/Containerfile b/packages/libksba/Containerfile index 1ca4ecb..e5e7e60 100644 --- a/packages/libksba/Containerfile +++ b/packages/libksba/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6.5 ENV SRC_HASH=a564628c574c99287998753f98d750babd91a4e9db451f46ad140466ef2a6d16 ENV SRC_FILE=libksba-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/libksba/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -29,10 +29,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/zlib . / COPY --from=stagex/musl . / @@ -46,5 +46,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libqrencode/Containerfile b/packages/libqrencode/Containerfile index 802c506..188bb5f 100644 --- a/packages/libqrencode/Containerfile +++ b/packages/libqrencode/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=4.1.1 ENV SRC_HASH=da448ed4f52aba6bcb0cd48cac0dd51b8692bccc4cd127431402fca6f8171e8e ENV SRC_FILE=qrencode-${VERSION}.tar.gz ENV SRC_SITE=https://fukuchi.org/works/qrencode/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -31,8 +31,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libtool/Containerfile b/packages/libtool/Containerfile index a1a305c..c7e6e96 100644 --- a/packages/libtool/Containerfile +++ b/packages/libtool/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.4.6 ENV SRC_HASH=7c87a8c2c8c0fc9cd5019e402bed4292462d00a718a7cd5f11218153bf28b26f ENV SRC_FILE=libtool-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/libtool/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -23,8 +23,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libunwind/Containerfile b/packages/libunwind/Containerfile index a860e9a..063a9a0 100644 --- a/packages/libunwind/Containerfile +++ b/packages/libunwind/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.7.2 ENV SRC_HASH=a18a6a24307443a8ace7a8acc2ce79fbbe6826cd0edf98d6326d0225d6a5d6e6 ENV SRC_FILE=libunwind-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/libunwind/libunwind/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/make . / @@ -33,8 +33,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libusb/Containerfile b/packages/libusb/Containerfile index 5ed5533..d6f101c 100644 --- a/packages/libusb/Containerfile +++ b/packages/libusb/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.0.27 ENV SRC_FILE=libusb-${VERSION}.tar.bz2 ENV SRC_SITE=https://github.com/libusb/libusb/releases/download/v${VERSION}/${SRC_FILE} ENV SRC_HASH=ffaa41d741a8a3bee244ac8e54a72ea05bf2879663c098c82fc5757853441575 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -25,8 +25,8 @@ RUN --network=none <<-EOF make -j1 EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libxml2/Containerfile b/packages/libxml2/Containerfile index 4abe015..f1f6652 100644 --- a/packages/libxml2/Containerfile +++ b/packages/libxml2/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.12.1 ENV SRC_HASH=1090e62c5a1900429f63e4681263b96e7829876ccbc66cf2d9266cd589f67286 ENV SRC_FILE=libxml2-v${VERSION}.tar.gz ENV SRC_SITE=https://gitlab.gnome.org/GNOME/libxml2/-/archive/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -40,12 +40,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libxslt/Containerfile b/packages/libxslt/Containerfile index 795ee78..da765c6 100644 --- a/packages/libxslt/Containerfile +++ b/packages/libxslt/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.1.39 ENV SRC_HASH=2a20ad621148339b0759c4d4e96719362dee64c9a096dbba625ba053846349f0 ENV SRC_FILE=libxslt-${VERSION}.tar.xz ENV SRC_SITE=https://download.gnome.org/sources/libxslt/1.1/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -32,8 +32,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libzstd/Containerfile b/packages/libzstd/Containerfile index 508090c..fda47a0 100644 --- a/packages/libzstd/Containerfile +++ b/packages/libzstd/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.5.5 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/facebook/zstd/archive/${SRC_FILE} ENV SRC_HASH=98e9c3d949d1b924e28e01eccb7deed865eefebf25c2f21c702e5cd5b63b85e1 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/python . / COPY --from=stagex/gcc . / @@ -67,8 +67,8 @@ RUN --network=none <<-EOF meson compile -C output EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR=/rootfs meson install --no-rebuild -C output -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/linux-airgap/Containerfile b/packages/linux-airgap/Containerfile index e8b425c..8c34a9a 100644 --- a/packages/linux-airgap/Containerfile +++ b/packages/linux-airgap/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=6.7 ENV SRC_HASH=ef31144a2576d080d8c31698e83ec9f66bf97c677fa2aaf0d5bbb9f3345b1069 ENV SRC_FILE=linux-${VERSION}.tar.xz ENV SRC_SITE=http://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/binutils . / @@ -45,7 +45,7 @@ RUN <<-EOF make -j "$(nproc)" bzImage EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir /rootfs @@ -53,5 +53,5 @@ RUN <<-EOF cp arch/x86_64/boot/bzImage /rootfs EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/linux-generic/Containerfile b/packages/linux-generic/Containerfile index ee8126f..55bc4c4 100644 --- a/packages/linux-generic/Containerfile +++ b/packages/linux-generic/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=6.6 ENV SRC_HASH=d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 ENV SRC_FILE=linux-${VERSION}.tar.xz ENV SRC_SITE=http://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/binutils . / @@ -59,7 +59,7 @@ RUN <<-EOF make -j "$(nproc)" modules INSTALL_MOD_PATH=/rootfs EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/lib/modules @@ -68,5 +68,5 @@ RUN <<-EOF cp arch/x86_64/boot/bzImage /rootfs EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/linux-headers/Containerfile b/packages/linux-headers/Containerfile index 68002d6..cb1ea72 100644 --- a/packages/linux-headers/Containerfile +++ b/packages/linux-headers/Containerfile @@ -1,19 +1,19 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=6.6 ENV SRC_HASH=d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 ENV SRC_FILE=linux-${VERSION}.tar.xz ENV SRC_SITE=https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf linux-${VERSION}.tar.xz WORKDIR linux-${VERSION} RUN --network=none make headers -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr @@ -22,5 +22,5 @@ RUN <<-EOF rm -rf /rootfs/usr/include/drm EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/linux-nitro/Containerfile b/packages/linux-nitro/Containerfile index 229a564..8fddd87 100644 --- a/packages/linux-nitro/Containerfile +++ b/packages/linux-nitro/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=5.19.6 ENV SRC_HASH=41a4f824af614460c429a7c723e8dcbb0e042f0047d328c18b4ed6f2b4efa63a ENV SRC_FILE=linux-${VERSION}.tar.xz @@ -8,11 +8,11 @@ ENV NSM_SRC_HASH=720916a640f7579a1e9a972ddd43448d201b9ce4d4750079d8256e83be3e937 ENV NSM_SRC_FILE=nsm.tgz ENV NSM_SRC_SITE=https://codeload.github.com/aws/aws-nitro-enclaves-sdk-bootstrap/legacy.tar.gz/${NSM_VERSION} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . ADD --checksum=sha256:${NSM_SRC_HASH} ${NSM_SRC_SITE} ${NSM_SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/binutils . / @@ -56,7 +56,7 @@ RUN <<-EOF make -C ../linux-${VERSION} M=../nitro-bootstrap/nsm-driver EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir /rootfs @@ -65,5 +65,5 @@ RUN <<-EOF cp /nitro-bootstrap/nsm-driver/nsm.ko /rootfs EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/lld/Containerfile b/packages/lld/Containerfile index 6569cb2..3cb7712 100644 --- a/packages/lld/Containerfile +++ b/packages/lld/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.0.6 ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -37,8 +37,8 @@ RUN set -eux; \ -DLLVM_ENABLE_ZLIB=FORCE_ON; \ cmake --build build -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/llvm/Containerfile b/packages/llvm/Containerfile index 243f0f0..cd614c5 100644 --- a/packages/llvm/Containerfile +++ b/packages/llvm/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.0.6 ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -61,7 +61,7 @@ RUN --network=none <<-EOF python3 llvm/utils/lit/setup.py build EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux DESTDIR="/rootfs" cmake --install build @@ -69,5 +69,5 @@ RUN --network=none <<-EOF ln -s lit /rootfs/usr/bin/llvm-lit EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/llvm13/Containerfile b/packages/llvm13/Containerfile index 066a4eb..98ff369 100644 --- a/packages/llvm13/Containerfile +++ b/packages/llvm13/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=13.0.1 ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} ENV SRC_HASH=326335a830f2e32d06d0a36393b5455d17dc73e0bd1211065227ee014f92cbf8 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -63,7 +63,7 @@ RUN --network=none <<-EOF python3 llvm/utils/lit/setup.py build EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux DESTDIR="/rootfs" cmake --install build @@ -71,5 +71,5 @@ RUN --network=none <<-EOF ln -s lit /rootfs/usr/bin/llvm-lit EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/lua/Containerfile b/packages/lua/Containerfile index aeff113..d0cccfd 100644 --- a/packages/lua/Containerfile +++ b/packages/lua/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=5.4.6 ENV SRC_HASH=7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88 ENV SRC_FILE=lua-${VERSION}.tar.gz ENV SRC_SITE=https://www.lua.org/ftp/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -50,7 +50,7 @@ RUN --network=none <<-EOF linux EOF -FROM build as install +FROM build AS install RUN --network=none \ make \ V="${VERSION}" \ @@ -59,5 +59,5 @@ RUN --network=none \ INSTALL_LIB="/rootfs/usr/lib/lua" \ install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/lzip/Containerfile b/packages/lzip/Containerfile index 107ecca..bd5b365 100644 --- a/packages/lzip/Containerfile +++ b/packages/lzip/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.24 ENV SRC_HASH=d42659229b10e066eeb6e81eb673cdd893b672e512d26719c2d95975556ca56c ENV SRC_FILE=lzip-${VERSION}.tar.gz ENV SRC_SITE=http://download.savannah.gnu.org/releases/lzip/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -23,8 +23,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/m4/Containerfile b/packages/m4/Containerfile index 32afefa..6ba43ca 100644 --- a/packages/m4/Containerfile +++ b/packages/m4/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.4.18 ENV SRC_HASH=ab2633921a5cd38e48797bf5521ad259bdc4b979078034a3b790d7fec5493fab ENV SRC_FILE=m4-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/m4/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -22,8 +22,8 @@ RUN --network=none <<-EOF make -j "$(nproc)"; EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/make/Containerfile b/packages/make/Containerfile index ad8b0e3..bdd71f2 100644 --- a/packages/make/Containerfile +++ b/packages/make/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.4 ENV SRC_FILE=make-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/make/${SRC_FILE} ENV SRC_HASH=581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf ${SRC_FILE} WORKDIR make-${VERSION} @@ -21,8 +21,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/meson/Containerfile b/packages/meson/Containerfile index 9398931..6e3ed57 100644 --- a/packages/meson/Containerfile +++ b/packages/meson/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.3.1 ENV SRC_FILE=meson-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/mesonbuild/meson/releases/download/${VERSION}/${SRC_FILE} ENV SRC_HASH=6020568bdede1643d4fb41e28215be38eff5d52da28ac7d125457c59e0032ad7 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -17,8 +17,8 @@ RUN tar -xf ${SRC_FILE} WORKDIR meson-${VERSION} RUN python setup.py build -FROM build as install +FROM build AS install RUN --network=none python setup.py install --root=/rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/mockgen/Containerfile b/packages/mockgen/Containerfile index 4787867..f4d7324 100644 --- a/packages/mockgen/Containerfile +++ b/packages/mockgen/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.7.0-rc.1 ENV SRC_HASH=69c7b1a9f65644d14c4566835dc56a480e4cf4b34f4cc44c607455bd133fb23e ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/golang/mock/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/mockgen /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/mtools/Containerfile b/packages/mtools/Containerfile index 9e9c44b..8d9c5e5 100644 --- a/packages/mtools/Containerfile +++ b/packages/mtools/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=4.0.43 ENV SRC_HASH=541e179665dc4e272b9602f2074243591a157da89cc47064da8c5829dbd2b339 ENV SRC_FILE=mtools-${VERSION}.tar.bz2 ENV SRC_SITE=https://ftp.gnu.org/gnu/mtools/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/musl-fts/Containerfile b/packages/musl-fts/Containerfile index 3dcc8f0..5e068b0 100644 --- a/packages/musl-fts/Containerfile +++ b/packages/musl-fts/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.2.7 ENV SRC_HASH=49ae567a96dbab22823d045ffebe0d6b14b9b799925e9ca9274d47d26ff482a6 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/void-linux/musl-fts/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -34,12 +34,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux make DESTDIR=/rootfs install install -Dm644 musl-fts.pc -t /rootfs/usr/lib/pkgconfig/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/musl-obstack/Containerfile b/packages/musl-obstack/Containerfile index 7558413..e19a781 100644 --- a/packages/musl-obstack/Containerfile +++ b/packages/musl-obstack/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.2.3 ENV SRC_HASH=9ffb3479b15df0170eba4480e51723c3961dbe0b461ec289744622db03a69395 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/void-linux/musl-obstack/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -28,8 +28,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/musl/Containerfile b/packages/musl/Containerfile index 1462db4..33f7696 100644 --- a/packages/musl/Containerfile +++ b/packages/musl/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.2.4 ENV SRC_FILE=musl-${VERSION}.tar.gz @@ -8,10 +8,10 @@ ENV CFLAGS="-Os -fstack-clash-protection -Wformat -Werror=format-security" ENV CXXFLAGS="-Os -fstack-clash-protection -Wformat -Werror=format-security -D_GLIBCXX_ASSERTIONS=1 -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS=1 -D_LIBCPP_ENABLE_HARDENED_MODE=1" ENV LDFLAGS="-Wl,--as-needed,-O1,--sort-common -Wl,-soname,libc.musl-${ARCH}.so.1" -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xzf ${SRC_FILE} WORKDIR musl-${VERSION} @@ -33,7 +33,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install @@ -45,5 +45,5 @@ RUN --network=none <<-EOF ln -sf /usr/lib/ld-musl-${ARCH}.so.1 /rootfs/usr/lib/libc.so EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/ncurses/Containerfile b/packages/ncurses/Containerfile index b14214a..312cc5a 100644 --- a/packages/ncurses/Containerfile +++ b/packages/ncurses/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=6.4-20240309 ENV SRC_HASH=ff909c46f219c4a4756da5f2e9f1925704560718765282aae73841f6cce021d5 ENV SRC_FILE=ncurses-${VERSION}.tgz ENV SRC_SITE=https://invisible-mirror.net/archives/ncurses/current/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -42,7 +42,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu make DESTDIR="/rootfs" install @@ -59,5 +59,5 @@ RUN --network=none <<-EOF echo 'INPUT(-lncursesw)' > usr/lib/libcursesw.so EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/ninja/Containerfile b/packages/ninja/Containerfile index 799f356..c7234e5 100644 --- a/packages/ninja/Containerfile +++ b/packages/ninja/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.9.0 ENV SRC_HASH=5d7ec75828f8d3fd1a0c2f31b5b0cea780cdfe1031359228c428c1a48bfcd5b9 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/martine/ninja/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / @@ -24,12 +24,12 @@ RUN --network=none <<-EOF python ./configure.py --bootstrap EOF -FROM build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ cp ninja /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/npth/Containerfile b/packages/npth/Containerfile index 050a689..cb9c948 100644 --- a/packages/npth/Containerfile +++ b/packages/npth/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6 ENV SRC_HASH=1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1 ENV SRC_FILE=npth-${VERSION}.tar.bz2 ENV SRC_SITE=https://gnupg.org/ftp/gcrypt/npth/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -27,10 +27,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/zlib . / COPY --from=stagex/musl . / @@ -45,5 +45,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/opensc/Containerfile b/packages/opensc/Containerfile index 37003d1..6496ba6 100644 --- a/packages/opensc/Containerfile +++ b/packages/opensc/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.25.1 ENV SRC_HASH=989e6305900d4f2f56ef84aa0da07c044459b4f8a508957a4cdefce6a1367c7b ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/opensc/opensc/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -49,12 +49,12 @@ RUN --network=none <<-EOF make -C src/tools EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install install -D -m644 etc/opensc.conf /rootfs/etc/opensc.conf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/openssh/Containerfile b/packages/openssh/Containerfile index 0de282c..dc3af4a 100644 --- a/packages/openssh/Containerfile +++ b/packages/openssh/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=9.8p1 ENV SRC_HASH=dd8bd002a379b5d499dfb050dd1fa9af8029e80461f4bb6c523c49973f5a39f3 ENV SRC_FILE=openssh-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -57,8 +57,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/openssl/Containerfile b/packages/openssl/Containerfile index 4507ffa..300f3e2 100644 --- a/packages/openssl/Containerfile +++ b/packages/openssl/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.0.12 ENV SRC_HASH=f93c9e8edde5e9166119de31755fc87b4aa34863662f67ddfcba14d0b6b69b61 ENV SRC_FILE=openssl-${VERSION}.tar.gz ENV SRC_SITE=https://www.openssl.org/source/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -42,8 +42,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/pcsc-lite/Containerfile b/packages/pcsc-lite/Containerfile index 513a267..93dcf37 100644 --- a/packages/pcsc-lite/Containerfile +++ b/packages/pcsc-lite/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.0.0 ENV SRC_HASH=d6c3e2b64510e5ed6fcd3323febf2cc2a8e5fda5a6588c7671f2d77f9f189356 ENV SRC_FILE=pcsc-lite-${VERSION}.tar.bz2 ENV SRC_SITE=https://pcsclite.apdu.fr/files/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/m4 . / COPY --from=stagex/musl . / @@ -42,10 +42,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/busybox . / RUN /bin/sh <<-EOF @@ -57,5 +57,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/pcsc-tools/Containerfile b/packages/pcsc-tools/Containerfile index e587b57..04204cc 100644 --- a/packages/pcsc-tools/Containerfile +++ b/packages/pcsc-tools/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.7.1 ENV SRC_HASH=0d024b589e15d79eac8506cd67df7b53cf91e9e6a493c8319f33cd29b5f36426 ENV SRC_FILE=pcsc-tools-${VERSION}.tar.bz2 ENV SRC_SITE=https://pcsc-tools.apdu.fr/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/m4 . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/perl-module-build/Containerfile b/packages/perl-module-build/Containerfile index 2381a41..917e61b 100644 --- a/packages/perl-module-build/Containerfile +++ b/packages/perl-module-build/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.4234 ENV SRC_HASH=66aeac6127418be5e471ead3744648c766bd01482825c5b66652675f2bc86a8f ENV SRC_FILE=Module-Build-${VERSION}.tar.gz ENV SRC_SITE=https://search.cpan.org/CPAN/authors/id/L/LE/LEONT/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -22,8 +22,8 @@ RUN --network=none <<-EOF perl Build EOF -FROM build as install +FROM build AS install RUN --network=none perl Build install destdir="/rootfs" -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/perl-pod-parser/Containerfile b/packages/perl-pod-parser/Containerfile index 04364a3..1211bba 100644 --- a/packages/perl-pod-parser/Containerfile +++ b/packages/perl-pod-parser/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.67 ENV SRC_HASH=5deccbf55d750ce65588cd211c1a03fa1ef3aaa15d1ac2b8d85383a42c1427ea ENV SRC_FILE=Pod-Parser-${VERSION}.tar.gz ENV SRC_SITE=https://search.cpan.org/CPAN/authors/id/M/MA/MAREKR/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/make . / COPY --from=stagex/musl . / @@ -21,8 +21,8 @@ RUN --network=none <<-EOF make EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/perl/Containerfile b/packages/perl/Containerfile index 7343caf..47879f6 100644 --- a/packages/perl/Containerfile +++ b/packages/perl/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=5.38.0 ENV SRC_HASH=eca551caec3bc549a4e590c0015003790bdd1a604ffe19cc78ee631d51f7072e ENV SRC_FILE=perl-${VERSION}.tar.xz ENV SRC_SITE=https://www.cpan.org/src/5.0/${SRC_FILE} ENV SOURCE_DATE_EPOCH=1 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -56,10 +56,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM scratch as test +FROM scratch AS test COPY --from=install /rootfs/. / COPY --from=stagex/musl . / COPY <<-EOF test.pl @@ -69,5 +69,5 @@ COPY <<-EOF test.pl EOF RUN perl test.pl | grep "Success" -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/pkgconf/Containerfile b/packages/pkgconf/Containerfile index 344fb0a..f8503d8 100644 --- a/packages/pkgconf/Containerfile +++ b/packages/pkgconf/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6.3 ENV SRC_HASH=61f0b31b0d5ea0e862b454a80c170f57bad47879c0c42bd8de89200ff62ea210 ENV SRC_FILE=pkgconf-${VERSION}.tar.xz ENV SRC_SITE=https://distfiles.ariadne.space/pkgconf/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -22,12 +22,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install ln -s pkgconf /rootfs/usr/bin/pkg-config EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/po4a/Containerfile b/packages/po4a/Containerfile index 09cbc3b..aa8fa72 100644 --- a/packages/po4a/Containerfile +++ b/packages/po4a/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.73 ENV SRC_HASH=ad5edc38bf004807843622fddbf67bd5ac604fc16e14c2bfefa7b07718ad21f3 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/mquinson/po4a/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -36,8 +36,8 @@ RUN --network=none <<-EOF LC_ALL=en_US.UTF-8 perl Build EOF -FROM build as install +FROM build AS install RUN --network=none ./Build install --destdir="/rootfs" -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/postgresql/Containerfile b/packages/postgresql/Containerfile index e0c0fc7..6338bee 100644 --- a/packages/postgresql/Containerfile +++ b/packages/postgresql/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.2 ENV SRC_HASH=2b8201047ec81acd1bad29dba278d788e7891b9c3e8232eda16bb29dec8131c7 ENV SRC_FILE=postgresql-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.postgresql.org/pub/source/v16.2/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / @@ -53,8 +53,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" world EOF -FROM build as install +FROM build AS install RUN --network=none make install-world DESTDIR=/rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/protobuf/Containerfile b/packages/protobuf/Containerfile index c2ef7bc..e01d864 100644 --- a/packages/protobuf/Containerfile +++ b/packages/protobuf/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=26.1 ENV SRC_HASH=4fc5ff1b2c339fb86cd3a25f0b5311478ab081e65ad258c6789359cd84d421f8 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/protocolbuffers/protobuf/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -38,8 +38,8 @@ RUN <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/protoc-gen-go-grpc/Containerfile b/packages/protoc-gen-go-grpc/Containerfile index 0512b06..437b71f 100644 --- a/packages/protoc-gen-go-grpc/Containerfile +++ b/packages/protoc-gen-go-grpc/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.63.2 ENV SRC_HASH=ffc7611e4989de79de4c17b015ff10db810b85f749b12520336314746e9d7095 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/grpc/grpc-go/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/protoc-gen-go-grpc /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/protoc-gen-go/Containerfile b/packages/protoc-gen-go/Containerfile index dcce0ae..e4e7853 100644 --- a/packages/protoc-gen-go/Containerfile +++ b/packages/protoc-gen-go/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.5.4 ENV SRC_HASH=d75e6960ecfabaaa83a7261b1b630d24e9c63aca79615fb15bf33e11b62fd019 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/golang/protobuf/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/protoc-gen-go /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/protoc-gen-grpc-gateway/Containerfile b/packages/protoc-gen-grpc-gateway/Containerfile index c3df705..5f9aca4 100644 --- a/packages/protoc-gen-grpc-gateway/Containerfile +++ b/packages/protoc-gen-grpc-gateway/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.19.1 ENV SRC_HASH=89d78abbe4aca77ce7823223945e852aec31c87a8c7aac084340ef9f53fd9637 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/grpc-ecosystem/grpc-gateway/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/protoc-gen-grpc-gateway /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/protoc-gen-openapiv2/Containerfile b/packages/protoc-gen-openapiv2/Containerfile index eaefe57..e4d3c18 100644 --- a/packages/protoc-gen-openapiv2/Containerfile +++ b/packages/protoc-gen-openapiv2/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.17.1 ENV SRC_HASH=092bc95544d6089ccea00fb124a0a81eadf212bf06d61a4ba422ad331bf3c6da ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/grpc-ecosystem/grpc-gateway/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/protoc-gen-openapiv2 /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/protoc-go-inject-tag/Containerfile b/packages/protoc-go-inject-tag/Containerfile index 138c696..7591d5f 100644 --- a/packages/protoc-go-inject-tag/Containerfile +++ b/packages/protoc-go-inject-tag/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.4.0 ENV SRC_HASH=0ec154e2b8159b1e449a7d182accf925bdad3b084ba75b8a497bcc816e49f47d ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/favadi/protoc-go-inject-tag/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/protoc-go-inject-tag /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/py-awscrt/Containerfile b/packages/py-awscrt/Containerfile index a8bac2f..1428c76 100644 --- a/packages/py-awscrt/Containerfile +++ b/packages/py-awscrt/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.20.3 ENV SRC_HASH=c41e471c3494287606a2c6c26b8fe97acc74b8941aae9d9a121a470c19838758 ENV SRC_FILE=awscrt-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/a/awscrt/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -27,12 +27,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR awscrt-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-botocore/Containerfile b/packages/py-botocore/Containerfile index a0959ca..937d7e9 100644 --- a/packages/py-botocore/Containerfile +++ b/packages/py-botocore/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.34.68 ENV SRC_HASH=e7ae9d69cc3e7b31d926e6a1a9ae673ba02da263e35cf12ff2bae35a21755cc6 ENV SRC_FILE=botocore-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/b/botocore/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-build/Containerfile b/packages/py-build/Containerfile index 60aee52..a43aa84 100644 --- a/packages/py-build/Containerfile +++ b/packages/py-build/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.7.0 ENV SRC_HASH=1aaadcd69338252ade4f7ec1265e1a19184bf916d84c9b7df095f423948cb89f ENV SRC_FILE=build-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/b/build/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -21,5 +21,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-certifi/Containerfile b/packages/py-certifi/Containerfile index 089f0fd..0a059d2 100644 --- a/packages/py-certifi/Containerfile +++ b/packages/py-certifi/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2024.2.2 ENV SRC_HASH=0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f ENV SRC_FILE=certifi-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/c/certifi/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-cffi/Containerfile b/packages/py-cffi/Containerfile index b96ee0b..ffd5205 100644 --- a/packages/py-cffi/Containerfile +++ b/packages/py-cffi/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.16.0 ENV SRC_HASH=bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0 ENV SRC_FILE=cffi-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/c/cffi/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -24,12 +24,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR cffi-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-colorama/Containerfile b/packages/py-colorama/Containerfile index b7e8a83..618a5a7 100644 --- a/packages/py-colorama/Containerfile +++ b/packages/py-colorama/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.4.6 ENV SRC_HASH=08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44 ENV SRC_FILE=colorama-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/c/colorama/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-cparser/Containerfile b/packages/py-cparser/Containerfile index 2a2bd91..b84c512 100644 --- a/packages/py-cparser/Containerfile +++ b/packages/py-cparser/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.21 ENV SRC_HASH=e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206 ENV SRC_FILE=pycparser-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pycparser/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -27,12 +27,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR pycparser-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-cryptography/Containerfile b/packages/py-cryptography/Containerfile index c364ceb..00ce6d1 100644 --- a/packages/py-cryptography/Containerfile +++ b/packages/py-cryptography/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=41.0.7 ENV SRC_HASH=13f93ce9bea8016c253b34afc6bd6a75993e5c40672ed5405a9c832f0d4a00bc ENV SRC_FILE=cryptography-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/c/cryptography/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -35,12 +35,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR cryptography-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/cryptography-*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-dateutil/Containerfile b/packages/py-dateutil/Containerfile index 2181e94..d043fe0 100644 --- a/packages/py-dateutil/Containerfile +++ b/packages/py-dateutil/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.9.0 ENV SRC_HASH=78e73e19c63f5b20ffa567001531680d939dc042bf7850431877645523c66709 ENV SRC_FILE=python-dateutil-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/python-dateutil/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-distro/Containerfile b/packages/py-distro/Containerfile index 2219119..ef84236 100644 --- a/packages/py-distro/Containerfile +++ b/packages/py-distro/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.9.0 ENV SRC_HASH=2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed ENV SRC_FILE=distro-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/d/distro/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-docutils/Containerfile b/packages/py-docutils/Containerfile index 5e535d3..fd841a8 100644 --- a/packages/py-docutils/Containerfile +++ b/packages/py-docutils/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.20.1 ENV SRC_HASH=f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b ENV SRC_FILE=docutils-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/d/docutils/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-flit/Containerfile b/packages/py-flit/Containerfile index 4c74e57..1e313b1 100644 --- a/packages/py-flit/Containerfile +++ b/packages/py-flit/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.9.0 ENV SRC_HASH=d75edf5eb324da20d53570a6a6f87f51e606eee8384925cd66a90611140844c7 ENV SRC_FILE=flit-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/f/flit/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -25,5 +25,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-gpep517/Containerfile b/packages/py-gpep517/Containerfile index 754289c..718895f 100644 --- a/packages/py-gpep517/Containerfile +++ b/packages/py-gpep517/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=15 ENV SRC_HASH=368fa8dfb0775589e3f85d34df18395c22980de8520dc6447e778fc1d0102787 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/projg2/gpep517/archive/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -32,5 +32,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-installer/Containerfile b/packages/py-installer/Containerfile index 140fc8b..a3812dc 100644 --- a/packages/py-installer/Containerfile +++ b/packages/py-installer/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.7.0 ENV SRC_HASH=a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631 ENV SRC_FILE=installer-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/i/installer/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -22,7 +22,7 @@ RUN tar -xzf ${SRC_FILE} WORKDIR installer-${VERSION} RUN python -m build -wn --skip-dependency-check -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu PYTHONPATH=src python -m installer --destdir=/rootfs dist/*.whl @@ -30,5 +30,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-jmespath/Containerfile b/packages/py-jmespath/Containerfile index a909553..994d6c6 100644 --- a/packages/py-jmespath/Containerfile +++ b/packages/py-jmespath/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.0.1 ENV SRC_HASH=90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe ENV SRC_FILE=jmespath-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/j/jmespath/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-packaging/Containerfile b/packages/py-packaging/Containerfile index eaf9d48..55bc54a 100644 --- a/packages/py-packaging/Containerfile +++ b/packages/py-packaging/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=24.0 ENV SRC_HASH=eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9 ENV SRC_FILE=packaging-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/packaging/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-pep517/Containerfile b/packages/py-pep517/Containerfile index f302063..b10022b 100644 --- a/packages/py-pep517/Containerfile +++ b/packages/py-pep517/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base #ENV VERSION=0.13.1 #ENV SRC_HASH=1b2fa2ffd3938bb4beffe5d6146cbcb2bda996a5a4da9f31abffd8b24e07b317 ENV VERSION=0.9.1 @@ -6,10 +6,10 @@ ENV SRC_HASH=aeb78601f2d1aa461960b43add204cc7955667687fbcf9cdb5170f00556f117f ENV SRC_FILE=pep517-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pep517/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -23,5 +23,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-prompt_toolkit/Containerfile b/packages/py-prompt_toolkit/Containerfile index e822683..63dc42e 100644 --- a/packages/py-prompt_toolkit/Containerfile +++ b/packages/py-prompt_toolkit/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.0.43 ENV SRC_HASH=3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d ENV SRC_FILE=prompt_toolkit-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/prompt_toolkit/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-ruamel.yaml/Containerfile b/packages/py-ruamel.yaml/Containerfile index d5e48ec..977662e 100644 --- a/packages/py-ruamel.yaml/Containerfile +++ b/packages/py-ruamel.yaml/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.17.28 ENV SRC_HASH=3bf6df1c481d2463a633be6ee86e8aece941bb3298a9a0cd6d0865f47b1ddce6 ENV SRC_FILE=ruamel.yaml-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/r/ruamel.yaml/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/libffi . / @@ -22,12 +22,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR ruamel.yaml-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-semantic-version/Containerfile b/packages/py-semantic-version/Containerfile index e78599b..8e624e9 100644 --- a/packages/py-semantic-version/Containerfile +++ b/packages/py-semantic-version/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.10.0 ENV SRC_HASH=bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c ENV SRC_FILE=semantic_version-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/semantic_version/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -22,12 +22,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR semantic_version-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-setuptools-rust/Containerfile b/packages/py-setuptools-rust/Containerfile index bedcc57..c2ef278 100644 --- a/packages/py-setuptools-rust/Containerfile +++ b/packages/py-setuptools-rust/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6.0 ENV SRC_HASH=c86e734deac330597998bfbc08da45187e6b27837e23bd91eadb320732392262 ENV SRC_FILE=setuptools-rust-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/setuptools-rust/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -24,12 +24,12 @@ WORKDIR setuptools-rust-${VERSION} ENV SETUPTOOLS_SCM_PRETEND_VERSION=${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-setuptools-scm/Containerfile b/packages/py-setuptools-scm/Containerfile index 8f1b0af..09c5f9e 100644 --- a/packages/py-setuptools-scm/Containerfile +++ b/packages/py-setuptools-scm/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=8.0.4 ENV SRC_HASH=b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7 ENV SRC_FILE=setuptools-scm-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/setuptools-scm/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -23,12 +23,12 @@ WORKDIR setuptools-scm-${VERSION}/src ENV SETUPTOOLS_SCM_PRETEND_VERSION=${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-setuptools/Containerfile b/packages/py-setuptools/Containerfile index 5bb28b4..049cc20 100644 --- a/packages/py-setuptools/Containerfile +++ b/packages/py-setuptools/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=68.2.2 ENV SRC_HASH=4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87 ENV SRC_FILE=setuptools-${VERSION}.tar.gz ENV SRC_SITE=https://pypi.io/packages/source/s/setuptools/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -16,8 +16,8 @@ RUN tar -xzf ${SRC_FILE} WORKDIR setuptools-${VERSION} RUN python setup.py build -FROM build as install +FROM build AS install RUN --network=none python setup.py install --root=/rootfs -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-six/Containerfile b/packages/py-six/Containerfile index c2bc145..aea1c44 100644 --- a/packages/py-six/Containerfile +++ b/packages/py-six/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.16.0 ENV SRC_HASH=1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 ENV SRC_FILE=six-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/six/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -24,5 +24,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-toml/Containerfile b/packages/py-toml/Containerfile index f3d5403..9c8d6ce 100644 --- a/packages/py-toml/Containerfile +++ b/packages/py-toml/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.10.2 ENV SRC_HASH=b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f ENV SRC_FILE=toml-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/t/toml/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -21,5 +21,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-typing-extensions/Containerfile b/packages/py-typing-extensions/Containerfile index 9b4e699..9f52182 100644 --- a/packages/py-typing-extensions/Containerfile +++ b/packages/py-typing-extensions/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.10.0 ENV SRC_HASH=b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb ENV SRC_FILE=typing_extensions-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/t/typing_extensions/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -22,12 +22,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR typing_extensions-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-urllib3/Containerfile b/packages/py-urllib3/Containerfile index 1a9ce68..908c048 100644 --- a/packages/py-urllib3/Containerfile +++ b/packages/py-urllib3/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.26.18 ENV SRC_HASH=f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0 ENV SRC_FILE=urllib3-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/u/urllib3/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -23,12 +23,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR urllib3-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-wcwidth/Containerfile b/packages/py-wcwidth/Containerfile index 485e9fa..2e43ee5 100644 --- a/packages/py-wcwidth/Containerfile +++ b/packages/py-wcwidth/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.2.13 ENV SRC_HASH=72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5 ENV SRC_FILE=wcwidth-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/w/wcwidth/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/zlib . / @@ -23,12 +23,12 @@ RUN tar -xzf ${SRC_FILE} WORKDIR wcwidth-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eu python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/py-wheel/Containerfile b/packages/py-wheel/Containerfile index 33d2535..5f5fa4c 100644 --- a/packages/py-wheel/Containerfile +++ b/packages/py-wheel/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.43.0 ENV SRC_HASH=465ef92c69fa5c5da2d1cf8ac40559a8c940886afcef87dcf14b9470862f1d85 ENV SRC_FILE=wheel-${VERSION}.tar.gz ENV SRC_SITE=https://files.pythonhosted.org/packages/source/w/wheel/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as install +FROM fetch AS install COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / @@ -21,5 +21,5 @@ RUN --network=none <<-EOF find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/python/Containerfile b/packages/python/Containerfile index cc07f5d..428af9c 100644 --- a/packages/python/Containerfile +++ b/packages/python/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.11.8 ENV SRC_HASH=9e06008c8901924395bc1da303eac567a729ae012baa182ab39269f650383bb3 ENV SRC_FILE=Python-${VERSION}.tar.xz ENV SRC_SITE=https://www.python.org/ftp/python/${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -33,14 +33,14 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install ln -s /usr/bin/python3 /rootfs/usr/bin/python EOF -FROM scratch as test +FROM scratch AS test COPY --from=install /rootfs/. / COPY --from=stagex/musl . / COPY <<-EOF test.py @@ -48,5 +48,5 @@ COPY <<-EOF test.py EOF RUN python test.py | grep "Success" -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/redis/Containerfile b/packages/redis/Containerfile index 38e947b..4e91255 100644 --- a/packages/redis/Containerfile +++ b/packages/redis/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=7.2.4 ENV SRC_FILE=redis-${VERSION}.tar.gz ENV SRC_SITE=https://download.redis.io/releases/${SRC_FILE} ENV SRC_HASH=8d104c26a154b29fd67d6568b4f375212212ad41e0c2caa3d66480e78dbd3b59 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -21,8 +21,8 @@ WORKDIR redis-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN make BUILD_TLS=yes all -FROM build as install +FROM build AS install RUN --network=none make install PREFIX="/rootfs" INSTALL_BIN="/rootfs/usr/bin" -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/rust/Containerfile b/packages/rust/Containerfile index b6ff763..67c1c6d 100644 --- a/packages/rust/Containerfile +++ b/packages/rust/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ARG VERSION=1.76.0 ENV SRC_SITE=https://static.rust-lang.org/dist ENV MRUSTC_VERSION=16d744fd62e74a2d4356df864b5850bf782918da @@ -29,7 +29,7 @@ ENV SRC_HASH_1_74_0=882b584bc321c5dcfe77cdaa69f277906b936255ef7808fcd5c7492925cf ENV SRC_HASH_1_75_0=5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088 ENV SRC_HASH_1_76_0=9e5cff033a7f0d2266818982ad90e4d3e4ef8f8ee1715776c6e25073a136c021 -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / ADD --checksum=sha256:${MRUSTC_SRC_HASH} ${MRUSTC_SRC_SITE} ${MRUSTC_SRC_FILE} ADD --checksum=sha256:${SRC_HASH_1_54_0} ${SRC_SITE}/rustc-1.54.0-src.tar.gz . @@ -56,7 +56,7 @@ ADD --checksum=sha256:${SRC_HASH_1_74_0} ${SRC_SITE}/rustc-1.74.0-src.tar.gz . ADD --checksum=sha256:${SRC_HASH_1_75_0} ${SRC_SITE}/rustc-1.75.0-src.tar.gz . ADD --checksum=sha256:${SRC_HASH_1_76_0} ${SRC_SITE}/rustc-1.76.0-src.tar.gz . -FROM fetch as build-base +FROM fetch AS build-base COPY --from=stagex/binutils . / COPY --from=stagex/bash . / COPY --from=stagex/make . / @@ -71,7 +71,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/libunwind . / COPY --from=stagex/musl . / -FROM build-base as build-mrustc +FROM build-base AS build-mrustc COPY --from=stagex/llvm13 . / ADD gcc_version.patch . RUN tar -xzf ${MRUSTC_SRC_FILE} @@ -102,7 +102,7 @@ RUN <<-EOF cp -R run_rustc/output/prefix ../rust-1.54.0/usr EOF -FROM build-base as build-script +FROM build-base AS build-script COPY <<-'EOF' build.sh set -eux VERSION=${1} @@ -158,7 +158,7 @@ COPY <<-'EOF' build.sh python3 x.py install EOF -FROM build-script as build-llvm13 +FROM build-script AS build-llvm13 COPY --from=stagex/llvm13 . / COPY --from=build-mrustc /rust-1.54.0 /rust-1.54.0 RUN sh build.sh 1.55.0 1.54.0 @@ -176,7 +176,7 @@ RUN sh build.sh 1.66.0 1.65.0 RUN sh build.sh 1.67.0 1.66.0 RUN sh build.sh 1.68.0 1.67.0 -FROM build-script as build +FROM build-script AS build COPY --from=stagex/llvm . / COPY --from=build-llvm13 /rust-1.68.0 /rust-1.68.0 COPY --from=stagex/llvm13 /usr/lib/libLLVM-13.so /usr/lib/ @@ -194,7 +194,7 @@ RUN sh build.sh 1.75.0 1.74.0 ADD no-default-static.patch . RUN sh build.sh 1.76.0 1.75.0 cargo,clippy,rustdoc,rustfmt,rust-demangler no-default-static -FROM build as install +FROM build AS install RUN <<-EOF mv /rust-${VERSION} /rootfs cd /rootfs/usr/lib/rustlib @@ -207,5 +207,5 @@ RUN <<-EOF rm -f x86_64-unknown-linux-musl/lib/self-contained/libunwind.a EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/sed/Containerfile b/packages/sed/Containerfile index 9d62cc2..bf05422 100644 --- a/packages/sed/Containerfile +++ b/packages/sed/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.9 ENV SRC_HASH=6e226b732e1cd739464ad6862bd1a1aba42d7982922da7a53519631d24975181 ENV SRC_FILE=sed-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/sed/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -22,8 +22,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/sops/Containerfile b/packages/sops/Containerfile index 52730ae..329abff 100644 --- a/packages/sops/Containerfile +++ b/packages/sops/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.8.1 ENV SRC_HASH=5ca70fb4f96797d09012c705a5bb935835896de7bcd063b98d498912b0e645a0 ENV SRC_FILE=${SRC_SITE}/v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/getsops/sops/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN --network=none <<-EOF cp bin/sops /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/sqlite3/Containerfile b/packages/sqlite3/Containerfile index f8c9bbb..af48d1a 100644 --- a/packages/sqlite3/Containerfile +++ b/packages/sqlite3/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.45.1 ENV SRC_HASH=af857d9ba958d26486639e2e0ffcd8be9d9f0d725fed0b174e017aa916d82d48 ENV SRC_FILE=vesion-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/sqlite/sqlite/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/gcc . / @@ -23,8 +23,8 @@ RUN --network=none <<-EOF make EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/stage0/Containerfile b/packages/stage0/Containerfile index 4a7544b..3f4056b 100644 --- a/packages/stage0/Containerfile +++ b/packages/stage0/Containerfile @@ -1,8 +1,8 @@ -FROM alpine@sha256:51b67269f354137895d43f3b3d810bfacd3945438e94dc5ac55fdac340352f48 as alpine -FROM debian@sha256:bac353db4cc04bc672b14029964e686cd7bad56fe34b51f432c1a1304b9928da as debian -FROM archlinux@sha256:1f83ba0580a15cd6ad1d02d62ad432ddc940f53f07d0e39c8982d6c9c74e53e0 as archlinux +FROM alpine@sha256:51b67269f354137895d43f3b3d810bfacd3945438e94dc5ac55fdac340352f48 AS alpine +FROM debian@sha256:bac353db4cc04bc672b14029964e686cd7bad56fe34b51f432c1a1304b9928da AS debian +FROM archlinux@sha256:1f83ba0580a15cd6ad1d02d62ad432ddc940f53f07d0e39c8982d6c9c74e53e0 AS archlinux -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6.0 ENV SRC_FILE=stage0-posix-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/oriansj/stage0-posix/releases/download/Release_${VERSION}/${SRC_FILE} @@ -19,53 +19,53 @@ COPY <<-EOF build.sh sha256sum x86/bin/* > hashes.txt EOF -FROM base as build1 +FROM base AS build1 COPY --from=debian . / RUN apt update && apt install -y wget gcc COPY --from=base . / RUN --network=none sh build.sh -FROM base as build2 +FROM base AS build2 COPY --from=archlinux . / RUN pacman -Sy --noconfirm wget gcc COPY --from=base . / RUN --network=none sh build.sh -FROM base as build3 +FROM base AS build3 COPY --from=alpine . / RUN apk add wget gcc COPY --from=base . / RUN --network=none sh build.sh -FROM scratch as compare +FROM scratch AS compare COPY --from=build1 /rootfs/ /a COPY --from=build2 /rootfs/ /b COPY --from=build3 /rootfs/ /c -FROM compare as test1 +FROM compare AS test1 WORKDIR /a RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] -FROM compare as test2 +FROM compare AS test2 WORKDIR /b RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] -FROM compare as test3 +FROM compare AS test3 WORKDIR /c RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] -FROM scratch as install +FROM scratch AS install COPY --from=test1 /a/hashes.txt /a-hashes.txt COPY --from=test2 /b/hashes.txt /b-hashes.txt COPY --from=test3 /c/hashes.txt /c-hashes.txt COPY --from=build1 /rootfs / -FROM scratch as package +FROM scratch AS package COPY --from=install / / CMD ["x86/bin/kaem","--version"] diff --git a/packages/stage1/Containerfile b/packages/stage1/Containerfile index 1b3b771..13ef7cd 100644 --- a/packages/stage1/Containerfile +++ b/packages/stage1/Containerfile @@ -1,10 +1,10 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=fc6eeb6bd75ea0d0025a79ea9fe45614bd60ba14 ENV SRC_SITE=https://codeload.github.com/lrvick/live-bootstrap/legacy.tar.gz ENV SRC_HASH=0c268b19cf9f4eefdaf45dab64ac393ccf8ee43de58f0721624cab358044bf78 ARG CORES=1 -FROM base as fetch +FROM base AS fetch WORKDIR distfiles ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE}/${VERSION} live-bootstrap.tgz # Generate with: cat live-bootstrap/steps/*/sources | awk -F" " '{ printf("ADD --checksum=sha256:%s %s ./%s\n",$2,$1,$3) }' @@ -257,7 +257,7 @@ ADD --checksum=sha256:dd172acb53867a68012f94c17389401b2f274a1aa5ae8f84cbfb8b7e38 ADD --checksum=sha256:b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f846ab30 https://zlib.net/fossils/zlib-1.2.13.tar.gz ./ # HACK: stage0 tar is currently incompatible with symlinks and github tgz files -#FROM base as extract +#FROM base AS extract #COPY --from=stagex/stage0 . / #COPY --from=fetch distfiles/live-bootstrap.tgz . #SHELL ["/x86/bin/kaem","--verbose","--strict","--file"] @@ -269,13 +269,13 @@ ADD --checksum=sha256:b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f8 # echo "" > lrvick-live-bootstrap-fc6eeb6/steps/lwext4-1.0.0-lb1/files/fiwix-file-list.txt #EOF #RUN --network=none ./extract.kaem -FROM debian@sha256:bac353db4cc04bc672b14029964e686cd7bad56fe34b51f432c1a1304b9928da as extract +FROM debian@sha256:bac353db4cc04bc672b14029964e686cd7bad56fe34b51f432c1a1304b9928da AS extract COPY --from=fetch distfiles/live-bootstrap.tgz . RUN --network=none tar -xvf live-bootstrap.tgz # HACK: fixed in live-bootstrap upstream and can be dropped on next source bump RUN echo "" > lrvick-live-bootstrap-fc6eeb6/steps/lwext4-1.0.0-lb1/files/fiwix-file-list.txt -FROM base as build +FROM base AS build USER 0:0 COPY --from=stagex/stage0 . / COPY --from=fetch distfiles external/distfiles @@ -301,7 +301,7 @@ ENV ARCH=x86 SHELL ["/x86/bin/kaem","--verbose","--strict","--file"] RUN --network=none ./after.kaem -FROM build as install +FROM build AS install USER 0:0 COPY <<-EOF install.kaem set -ex @@ -318,7 +318,7 @@ EOF SHELL ["/x86/bin/kaem","--verbose","--strict","--file"] RUN --network=none ./install.kaem -FROM scratch as package +FROM scratch AS package COPY --from=install /rootfs / USER 1000:1000 ENTRYPOINT ["/bin/bash"] diff --git a/packages/stage2/Containerfile b/packages/stage2/Containerfile index c25fb47..fb2748a 100644 --- a/packages/stage2/Containerfile +++ b/packages/stage2/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV GCC_VERSION 13.1.0 ENV GCC_HASH 61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 ENV GCC_FILE gcc-$GCC_VERSION.tar.xz @@ -49,7 +49,7 @@ ENV LINUX_DIR ${HOME}/build-linux ENV BINUTILS_DIR ${HOME}/build-binutils ENV MUSL_DIR=${HOME}/build-musl -FROM base as fetch +FROM base AS fetch WORKDIR ${HOME} ADD --checksum=sha256:${LINUX_HASH} ${LINUX_SITE} . ADD --checksum=sha256:${MUSL_HASH} ${MUSL_SITE} . @@ -60,7 +60,7 @@ ADD --checksum=sha256:${MPFR_HASH} ${MPFR_SITE} . ADD --checksum=sha256:${MPC_HASH} ${MPC_SITE} . ADD --checksum=sha256:${ISL_HASH} ${ISL_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage1 . / RUN --network=none <<-EOF set -eux @@ -183,7 +183,7 @@ RUN --network=none <<-EOF cp -rv usr/include ${LINUX_DIR} EOF -FROM build as install +FROM build AS install WORKDIR ${HOME} COPY --from=stagex/stage1 . /rootfs/ RUN <<-EOF @@ -198,7 +198,7 @@ RUN <<-EOF ln -s /${TARGET}/lib/ld-musl-${TARGET_ARCH}.so.1 /rootfs/lib/ld-musl-${TARGET_ARCH}.so.1 EOF -FROM base as package +FROM base AS package COPY --from=install /rootfs/ / USER 1000:1000 ENTRYPOINT ["/bin/bash"] diff --git a/packages/stage3/Containerfile b/packages/stage3/Containerfile index 1c6dc68..762245d 100644 --- a/packages/stage3/Containerfile +++ b/packages/stage3/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV GCC_VERSION 13.1.0 ENV GCC_HASH 61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 ENV GCC_FILE gcc-$GCC_VERSION.tar.xz @@ -57,7 +57,7 @@ ENV BUSYBOX_DIR ${HOME}/build-busybox ENV MAKE_DIR ${HOME}/build-make ENV GCC_DIR ${HOME}/build-gcc -FROM base as fetch +FROM base AS fetch WORKDIR ${HOME} ADD --checksum=sha256:${LINUX_HASH} ${LINUX_SITE} . ADD --checksum=sha256:${MUSL_HASH} ${MUSL_SITE} . @@ -70,7 +70,7 @@ ADD --checksum=sha256:${MPFR_HASH} ${MPFR_SITE} . ADD --checksum=sha256:${MPC_HASH} ${MPC_SITE} . ADD --checksum=sha256:${ISL_HASH} ${ISL_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/stage2 . / RUN --network=none <<-EOF set -eux @@ -204,7 +204,7 @@ RUN --network=none <<-EOF cp -rv usr/include ${LINUX_DIR} EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux env -C ${BUSYBOX_DIR} make \ @@ -224,7 +224,7 @@ RUN --network=none <<-EOF chown -R 1000:1000 tmp var/tmp home/user EOF -FROM base as package +FROM base AS package COPY --from=install /rootfs/ . USER 1000:1000 ENTRYPOINT ["/bin/sh"] diff --git a/packages/strace/Containerfile b/packages/strace/Containerfile index 51c9cb3..bdfd6cb 100644 --- a/packages/strace/Containerfile +++ b/packages/strace/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=6.7 ENV SRC_HASH=2090201e1a3ff32846f4fe421c1163b15f440bb38e31355d09f82d3949922af7 ENV SRC_FILE=strace-${VERSION}.tar.xz ENV SRC_SITE=https://github.com/strace/strace/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/sxctl/Containerfile b/packages/sxctl/Containerfile index 1b08c8d..dab0084 100644 --- a/packages/sxctl/Containerfile +++ b/packages/sxctl/Containerfile @@ -1,23 +1,23 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.0.5 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://codeberg.org/stagex/sxctl/archive/${SRC_FILE} ENV SRC_HASH=26f0dd95e72b632036c598d055ef6b78cec88c497dd67ede30d1498bb8229412 -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / RUN tar -xf ${SRC_FILE} WORKDIR sxctl/cmd/sxctl RUN go build -o sxctl -FROM build as install +FROM build AS install WORKDIR /rootfs RUN cp /sxctl/cmd/sxctl/sxctl . -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / ENTRYPOINT ["/sxctl"] diff --git a/packages/syslinux/Containerfile b/packages/syslinux/Containerfile index 663dc81..7ec684a 100644 --- a/packages/syslinux/Containerfile +++ b/packages/syslinux/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=6.04-pre1 ENV SRC_HASH=3f6d50a57f3ed47d8234fd0ab4492634eb7c9aaf7dd902f33d3ac33564fd631d ENV SRC_FILE=syslinux-${VERSION}.tar.xz ENV SRC_SITE=https://www.kernel.org/pub/linux/utils/boot/syslinux/Testing/6.04/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -26,7 +26,7 @@ RUN --network=none <<-EOF make -j1 bios efi64 installer EOF -FROM build as install +FROM build AS install RUN make -j1 \ INSTALLROOT="/rootfs" \ MANDIR=/usr/share/man \ @@ -35,11 +35,11 @@ RUN make -j1 \ LIBDIR=/usr/lib \ install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/musl . / COPY --from=stagex/busybox . / RUN syslinux --version -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/talosctl/Containerfile b/packages/talosctl/Containerfile index adb7c4a..c36f651 100644 --- a/packages/talosctl/Containerfile +++ b/packages/talosctl/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.7.2 ENV SRC_HASH=7f16510394ebe12cd405bc9d2cf4c6ef2c8baf6213006d52c05dcbce0bf06100 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=on -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR talos-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -v -trimpath ./cmd/talosctl from build as install @@ -31,5 +31,5 @@ RUN <<-EOF cp talosctl /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/tar/Containerfile b/packages/tar/Containerfile index 283420c..c5f1a54 100644 --- a/packages/tar/Containerfile +++ b/packages/tar/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.35 ENV SRC_HASH=4d62ff37342ec7aed748535323930c7cf94acf71c3591882b26a7ea50f3edc16 ENV SRC_FILE=tar-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/tar/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -31,8 +31,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/tcl/Containerfile b/packages/tcl/Containerfile index 20f9f0a..d3c3446 100644 --- a/packages/tcl/Containerfile +++ b/packages/tcl/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=8.6.14 ENV SRC_HASH=5880225babf7954c58d4fb0f5cf6279104ce1cd6aa9b71e9a6322540e1c4de66 ENV SRC_FILE=tcl${VERSION}-src.tar.gz ENV SRC_SITE=https://fossies.org/linux/misc/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/bash . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / @@ -30,8 +30,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/texinfo/Containerfile b/packages/texinfo/Containerfile index 93274f0..e43c6ae 100644 --- a/packages/texinfo/Containerfile +++ b/packages/texinfo/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=7.1 ENV SRC_HASH=deeec9f19f159e046fdf8ad22231981806dac332cc372f1c763504ad82b30953 ENV SRC_FILE=texinfo-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/texinfo/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/openssl . / COPY --from=stagex/coreutils . / @@ -38,8 +38,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/tflint/Containerfile b/packages/tflint/Containerfile index 3b1861a..3dcda37 100644 --- a/packages/tflint/Containerfile +++ b/packages/tflint/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.50.3 ENV SRC_HASH=e90acdbf4cd1dc936e50b580ade53583baced53a93b3b01cee3e073b233ef8c5 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=on -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR tflint-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -o out/tflint -v -trimpath from build as install @@ -31,5 +31,5 @@ RUN <<-EOF cp out/tflint /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/tofu/Containerfile b/packages/tofu/Containerfile index 4a66c25..f30c7f6 100644 --- a/packages/tofu/Containerfile +++ b/packages/tofu/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.6.0-beta4 ENV SRC_HASH=b14f151839d90d06f95ba4257be159857606daf522d99e9285ddb248f814393f ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/opentofu/opentofu/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -32,5 +32,5 @@ RUN <<-EOF cp bin/tofu /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/tpm2-tools/Containerfile b/packages/tpm2-tools/Containerfile index 41ccb06..60cd01c 100644 --- a/packages/tpm2-tools/Containerfile +++ b/packages/tpm2-tools/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=5.6 ENV SRC_HASH=7169fac7b5afb3ce20091b8d66ee13a69cf0b107ea1e17f5d1aa087d99bcf8e2 ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/tpm2-software/tpm2-tools/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -39,12 +39,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install rm -rf /rootfs/var/run EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/tpm2-tss/Containerfile b/packages/tpm2-tss/Containerfile index ac094f8..333576e 100644 --- a/packages/tpm2-tss/Containerfile +++ b/packages/tpm2-tss/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.1.0 ENV SRC_HASH=4f6c53010b9f422107235d748178daf77817bd2bbe856befa3d54cab9f2f07e4 ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/tpm2-software/tpm2-tss/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -44,12 +44,12 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install rm -rf /rootfs/var/run EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/util-linux/Containerfile b/packages/util-linux/Containerfile index 204bd54..3ce056a 100644 --- a/packages/util-linux/Containerfile +++ b/packages/util-linux/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=2.39.3 ENV SRC_HASH=d3315ff701890f4fa1dd38ea387767fcb9e1aaeb763eb904677c03d2a7a5bdc1 ENV SRC_FILE=util-linux-${VERSION}.tar.gz ENV SRC_SITE=https://codeload.github.com/util-linux/util-linux/legacy.tar.gz/v${VERSION} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -45,8 +45,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/xorriso/Containerfile b/packages/xorriso/Containerfile index c14cf90..03a4e91 100644 --- a/packages/xorriso/Containerfile +++ b/packages/xorriso/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.5.6 ENV SRC_HASH=786f9f5df9865cc5b0c1fecee3d2c0f5e04cab8c9a859bd1c9c7ccd4964fdae1 ENV SRC_FILE=xorriso-${VERSION}.pl02.tar.gz ENV SRC_SITE=https://www.gnu.org/software/xorriso/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -23,10 +23,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM base as test +FROM base AS test COPY --from=install /rootfs/. / COPY --from=stagex/musl . / COPY --from=stagex/busybox . / @@ -39,5 +39,5 @@ RUN /bin/sh <<-EOF fi EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/xz/Containerfile b/packages/xz/Containerfile index 930c1bf..130adda 100644 --- a/packages/xz/Containerfile +++ b/packages/xz/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=5.6.2 ENV SRC_HASH=92a439948bba24c2bc25bb67a087a19194905209c56b5e600bc94fd2a472e687 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/tukaani-project/xz/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/musl . / @@ -40,8 +40,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/yq/Containerfile b/packages/yq/Containerfile index d281fe8..e25caee 100644 --- a/packages/yq/Containerfile +++ b/packages/yq/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=4.42.1 ENV SRC_HASH=be31e5e828a0251721ea71964596832d4a40cbc21c8a8392a804bc8d1c55dd62 ENV SRC_FILE=v${VERSION}.tar.gz @@ -13,7 +13,7 @@ ENV GOHOSTOS=linux ENV GOHOSTARCH=amd64 ENV GO11MODULE=on -FROM base as fetch +FROM base AS fetch COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / @@ -22,7 +22,7 @@ RUN tar -xvf ${SRC_FILE} WORKDIR yq-${VERSION} RUN go get ./... -FROM fetch as build +FROM fetch AS build RUN --network=none go build -v -trimpath from build as install @@ -31,5 +31,5 @@ RUN <<-EOF cp yq /rootfs/usr/bin/ EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/./ / diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index 3dc6461..f93bcca 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=0.11.0 ENV SRC_HASH=72014e700e50c0d3528cef3adf80b76b26ab27730133e8202716a187a799e951 ENV SRC_FILE=zig-${VERSION}.tar.xz ENV SRC_SITE=https://ziglang.org/download/${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . COPY static-glibc.patch . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / COPY --from=stagex/clang . / @@ -36,8 +36,8 @@ RUN --network=none <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR=/rootfs cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/zip/Containerfile b/packages/zip/Containerfile index c6bbd12..32c0596 100644 --- a/packages/zip/Containerfile +++ b/packages/zip/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=30 ENV SRC_HASH=f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369 ENV SRC_FILE=zip${VERSION}.tar.gz ENV SRC_SITE=https://fossies.org/linux/misc/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / @@ -22,12 +22,12 @@ RUN --network=none <<-EOF make -f unix/Makefile prefix=/usr generic EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux mkdir -p /rootfs/usr/bin/ DESTDIR=/rootfs make -f unix/Makefile prefix=/rootfs/usr MANDIR=rootfs/usr/share/man/man1 install EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/zlib/Containerfile b/packages/zlib/Containerfile index 6f52772..78f1910 100644 --- a/packages/zlib/Containerfile +++ b/packages/zlib/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=1.3.1 ENV SRC_HASH=9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23 ENV SRC_FILE=zlib-${VERSION}.tar.gz ENV SRC_SITE=https://www.zlib.net/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / @@ -24,8 +24,8 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / From 8b37ec90ed7c4d659f22601857ef4ba96bc1e27c Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Thu, 8 Aug 2024 09:50:50 +0200 Subject: [PATCH 02/57] fix from->FROM/as->AS casing --- packages/autoconf-archive/Containerfile | 2 +- packages/autoconf/Containerfile | 2 +- packages/bison/Containerfile | 2 +- packages/buf/Containerfile | 2 +- packages/flashtools/Containerfile | 2 +- packages/gettext/Containerfile | 2 +- packages/go-md2man/Containerfile | 2 +- packages/grpcurl/Containerfile | 2 +- packages/helm/Containerfile | 2 +- packages/k9s/Containerfile | 2 +- packages/ksops-dry-run/Containerfile | 2 +- packages/kubeconform/Containerfile | 2 +- packages/kubectl/Containerfile | 2 +- packages/kustomize-sops/Containerfile | 2 +- packages/kustomize/Containerfile | 2 +- packages/mockgen/Containerfile | 2 +- packages/protoc-gen-go-grpc/Containerfile | 2 +- packages/protoc-gen-go/Containerfile | 2 +- packages/protoc-gen-grpc-gateway/Containerfile | 2 +- packages/protoc-gen-openapiv2/Containerfile | 2 +- packages/protoc-go-inject-tag/Containerfile | 2 +- packages/sops/Containerfile | 2 +- packages/talosctl/Containerfile | 2 +- packages/tflint/Containerfile | 2 +- packages/tofu/Containerfile | 2 +- packages/yq/Containerfile | 2 +- 26 files changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/autoconf-archive/Containerfile b/packages/autoconf-archive/Containerfile index ab3a800..a7b56cd 100644 --- a/packages/autoconf-archive/Containerfile +++ b/packages/autoconf-archive/Containerfile @@ -27,7 +27,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -from build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install FROM stagex/filesystem AS package diff --git a/packages/autoconf/Containerfile b/packages/autoconf/Containerfile index 66d5b9b..43ee262 100644 --- a/packages/autoconf/Containerfile +++ b/packages/autoconf/Containerfile @@ -25,7 +25,7 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -from build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install FROM stagex/filesystem AS package diff --git a/packages/bison/Containerfile b/packages/bison/Containerfile index b3630d9..c1fa9f6 100644 --- a/packages/bison/Containerfile +++ b/packages/bison/Containerfile @@ -28,7 +28,7 @@ RUN --network=none <<-EOF make -j1 MAKEINFO=false EOF -from build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install FROM stagex/filesystem AS package diff --git a/packages/buf/Containerfile b/packages/buf/Containerfile index 1b3fe66..5fca118 100644 --- a/packages/buf/Containerfile +++ b/packages/buf/Containerfile @@ -26,7 +26,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/buf ./cmd/buf -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp bin/buf /rootfs/usr/bin/ diff --git a/packages/flashtools/Containerfile b/packages/flashtools/Containerfile index b4c0953..44b4836 100644 --- a/packages/flashtools/Containerfile +++ b/packages/flashtools/Containerfile @@ -17,7 +17,7 @@ WORKDIR flashtools-${VERSION} FROM fetch AS build RUN --network=none make all -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ install -D -m 0755 flashtool /rootfs/usr/bin/ diff --git a/packages/gettext/Containerfile b/packages/gettext/Containerfile index 9ee996f..a49fef6 100644 --- a/packages/gettext/Containerfile +++ b/packages/gettext/Containerfile @@ -27,7 +27,7 @@ RUN <<-EOF make -j "$(nproc)" EOF -from build as install +FROM build AS install RUN --network=none make DESTDIR=/rootfs install FROM stagex/filesystem AS package diff --git a/packages/go-md2man/Containerfile b/packages/go-md2man/Containerfile index fa26925..ae939d4 100644 --- a/packages/go-md2man/Containerfile +++ b/packages/go-md2man/Containerfile @@ -25,7 +25,7 @@ ENV GOHOSTARCH=amd64 RUN mkdir -p ${GOPATH} RUN go build -o bin/go-md2man -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp bin/go-md2man /rootfs/usr/bin/ diff --git a/packages/grpcurl/Containerfile b/packages/grpcurl/Containerfile index 5fa0d53..bef08d4 100644 --- a/packages/grpcurl/Containerfile +++ b/packages/grpcurl/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -trimpath -v ./cmd/grpcurl -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/helm/Containerfile b/packages/helm/Containerfile index a6560c1..84b5ec2 100644 --- a/packages/helm/Containerfile +++ b/packages/helm/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -v -trimpath ./cmd/helm -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/k9s/Containerfile b/packages/k9s/Containerfile index e8c928d..0e17e97 100644 --- a/packages/k9s/Containerfile +++ b/packages/k9s/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -trimpath -o k9s -v main.go -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/ksops-dry-run/Containerfile b/packages/ksops-dry-run/Containerfile index 9491dff..56f684d 100644 --- a/packages/ksops-dry-run/Containerfile +++ b/packages/ksops-dry-run/Containerfile @@ -29,7 +29,7 @@ RUN --network=none \ -trimpath \ -ldflags "-s -w -X main.version=${VERSION} -buildid=" -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/lib/kustomize/plugins/viduct.ai/v1/ksops diff --git a/packages/kubeconform/Containerfile b/packages/kubeconform/Containerfile index 160c86c..73a303d 100644 --- a/packages/kubeconform/Containerfile +++ b/packages/kubeconform/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -o bin/ -trimpath -v ./... -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/kubectl/Containerfile b/packages/kubectl/Containerfile index 0cf0710..36e0acb 100644 --- a/packages/kubectl/Containerfile +++ b/packages/kubectl/Containerfile @@ -24,7 +24,7 @@ RUN GOPATH="/kubernetes-${VERSION}" go mod download FROM fetch AS build RUN --network=none go build -trimpath -v k8s.io/kubernetes/cmd/kubectl -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/kustomize-sops/Containerfile b/packages/kustomize-sops/Containerfile index 2dc6018..97b5910 100644 --- a/packages/kustomize-sops/Containerfile +++ b/packages/kustomize-sops/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -trimpath -v -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/lib/kustomize/plugins/viduct.ai/v1/ksops diff --git a/packages/kustomize/Containerfile b/packages/kustomize/Containerfile index da2b129..e97a93a 100644 --- a/packages/kustomize/Containerfile +++ b/packages/kustomize/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -v -trimpath -from build as install +FROM build AS install RUN <<-EOF set -eu mkdir -p /rootfs/usr/bin/ diff --git a/packages/mockgen/Containerfile b/packages/mockgen/Containerfile index f4d7324..fec972c 100644 --- a/packages/mockgen/Containerfile +++ b/packages/mockgen/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/mockgen ./mockgen -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/protoc-gen-go-grpc/Containerfile b/packages/protoc-gen-go-grpc/Containerfile index 437b71f..0232303 100644 --- a/packages/protoc-gen-go-grpc/Containerfile +++ b/packages/protoc-gen-go-grpc/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/protoc-gen-go-grpc ./ -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/protoc-gen-go/Containerfile b/packages/protoc-gen-go/Containerfile index e4e7853..ca989d4 100644 --- a/packages/protoc-gen-go/Containerfile +++ b/packages/protoc-gen-go/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/protoc-gen-go ./protoc-gen-go -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/protoc-gen-grpc-gateway/Containerfile b/packages/protoc-gen-grpc-gateway/Containerfile index 5f9aca4..56c540e 100644 --- a/packages/protoc-gen-grpc-gateway/Containerfile +++ b/packages/protoc-gen-grpc-gateway/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/protoc-gen-grpc-gateway ./protoc-gen-grpc-gateway -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/protoc-gen-openapiv2/Containerfile b/packages/protoc-gen-openapiv2/Containerfile index e4d3c18..05883c1 100644 --- a/packages/protoc-gen-openapiv2/Containerfile +++ b/packages/protoc-gen-openapiv2/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/protoc-gen-openapiv2 ./protoc-gen-openapiv2 -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/protoc-go-inject-tag/Containerfile b/packages/protoc-go-inject-tag/Containerfile index 7591d5f..ff4fbd2 100644 --- a/packages/protoc-go-inject-tag/Containerfile +++ b/packages/protoc-go-inject-tag/Containerfile @@ -25,7 +25,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/protoc-go-inject-tag . -from build as install +FROM build AS install RUN <<-EOF set -eux mkdir -p /rootfs/usr/bin/ diff --git a/packages/sops/Containerfile b/packages/sops/Containerfile index 329abff..eef98cd 100644 --- a/packages/sops/Containerfile +++ b/packages/sops/Containerfile @@ -26,7 +26,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/sops ./cmd/sops -from build as install +FROM build AS install RUN --network=none <<-EOF mkdir -p /rootfs/usr/bin/ cp bin/sops /rootfs/usr/bin/ diff --git a/packages/talosctl/Containerfile b/packages/talosctl/Containerfile index c36f651..1ddd4f1 100644 --- a/packages/talosctl/Containerfile +++ b/packages/talosctl/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -v -trimpath ./cmd/talosctl -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp talosctl /rootfs/usr/bin/ diff --git a/packages/tflint/Containerfile b/packages/tflint/Containerfile index 3dcda37..b225336 100644 --- a/packages/tflint/Containerfile +++ b/packages/tflint/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -o out/tflint -v -trimpath -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp out/tflint /rootfs/usr/bin/ diff --git a/packages/tofu/Containerfile b/packages/tofu/Containerfile index f30c7f6..aecf520 100644 --- a/packages/tofu/Containerfile +++ b/packages/tofu/Containerfile @@ -26,7 +26,7 @@ ENV GOFLAGS=-trimpath RUN mkdir -p ${GOPATH} RUN go build -o bin/tofu ./cmd/tofu -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp bin/tofu /rootfs/usr/bin/ diff --git a/packages/yq/Containerfile b/packages/yq/Containerfile index e25caee..fa2895d 100644 --- a/packages/yq/Containerfile +++ b/packages/yq/Containerfile @@ -25,7 +25,7 @@ RUN go get ./... FROM fetch AS build RUN --network=none go build -v -trimpath -from build as install +FROM build AS install RUN <<-EOF mkdir -p /rootfs/usr/bin/ cp yq /rootfs/usr/bin/ From c011ae6ed6d9dce235f8c3db22617c3c9151ad52 Mon Sep 17 00:00:00 2001 From: ryan Date: Thu, 8 Aug 2024 21:27:01 -0400 Subject: [PATCH 03/57] mdbook: initial commit --- packages/mdbook/Containerfile | 41 +++++++++++++++++++++++++++++++++++ src/packages.mk | 17 +++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 packages/mdbook/Containerfile diff --git a/packages/mdbook/Containerfile b/packages/mdbook/Containerfile new file mode 100644 index 0000000..12a1fdb --- /dev/null +++ b/packages/mdbook/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=0.4.40 +ENV SRC_HASH=550da7ff02ef62c60db6e813b6dbae65b9ed3d491186ea74929536feaceea94b +ENV SRC_FILE=mdBook-${VERSION}.tar.gz +ENV SRC_SITE=https://codeload.github.com/rust-lang/mdBook/tar.gz/refs/tags/v${VERSION} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +COPY --from=stagex/rust . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/llvm . / +COPY --from=stagex/libunwind . / +COPY --from=stagex/openssl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/ca-certificates . / +RUN tar xf ${SRC_FILE} +WORKDIR mdBook-${VERSION} +RUN cargo fetch + +FROM fetch AS build +COPY --from=stagex/binutils . / +ENV RUST_BACKTRACE=1 +ENV RUSTFLAGS='-C codegen-units=1 -C target-feature=+crt-static' +RUN --network=none \ + cargo build \ + --frozen \ + --release \ + --target x86_64-unknown-linux-musl \ + --bin mdbook + +FROM build AS install +RUN <<-EOF + set -eux + mkdir -p /rootfs/usr/bin + cp target/x86_64-unknown-linux-musl/release/mdbook /rootfs/usr/bin/mdbook +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index dec1f0e..9078667 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1272,6 +1272,23 @@ out/make/index.json: \ out/stage3/index.json $(call build,make) +.PHONY: mdbook +mdbook: out/mdbook/index.json +out/mdbook/index.json: \ + packages/mdbook/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/ca-certificates/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libunwind/index.json \ + out/llvm/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/rust/index.json \ + out/zlib/index.json + $(call build,mdbook) + .PHONY: meson meson: out/meson/index.json out/meson/index.json: \ From 8796c132f5b392267e85172434a2df7b1d45f6c0 Mon Sep 17 00:00:00 2001 From: Danny Grove Date: Mon, 12 Aug 2024 14:24:46 -0700 Subject: [PATCH 04/57] Use SOURCE_DATE_EPOCH to ensure timestamps stay static --- packages/curl/Containerfile | 1 + packages/perl-module-build/Containerfile | 1 + packages/po4a/Containerfile | 1 + 3 files changed, 3 insertions(+) diff --git a/packages/curl/Containerfile b/packages/curl/Containerfile index 660f71c..e7432ad 100644 --- a/packages/curl/Containerfile +++ b/packages/curl/Containerfile @@ -3,6 +3,7 @@ ENV VERSION=8.9.1 ENV SRC_HASH=f292f6cc051d5bbabf725ef85d432dfeacc8711dd717ea97612ae590643801e5 ENV SRC_FILE=curl-${VERSION}.tar.xz ENV SRC_SITE=https://curl.se/download/${SRC_FILE} +ENV SOURCE_DATE_EPOCH=1 FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . diff --git a/packages/perl-module-build/Containerfile b/packages/perl-module-build/Containerfile index 2381a41..42d79e1 100644 --- a/packages/perl-module-build/Containerfile +++ b/packages/perl-module-build/Containerfile @@ -3,6 +3,7 @@ ENV VERSION=0.4234 ENV SRC_HASH=66aeac6127418be5e471ead3744648c766bd01482825c5b66652675f2bc86a8f ENV SRC_FILE=Module-Build-${VERSION}.tar.gz ENV SRC_SITE=https://search.cpan.org/CPAN/authors/id/L/LE/LEONT/${SRC_FILE} +ENV SOURCE_DATE_EPOCH=1 FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . diff --git a/packages/po4a/Containerfile b/packages/po4a/Containerfile index 09cbc3b..835d01c 100644 --- a/packages/po4a/Containerfile +++ b/packages/po4a/Containerfile @@ -3,6 +3,7 @@ ENV VERSION=0.73 ENV SRC_HASH=ad5edc38bf004807843622fddbf67bd5ac604fc16e14c2bfefa7b07718ad21f3 ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/mquinson/po4a/archive/refs/tags/${SRC_FILE} +ENV SOURCE_DATE_EPOCH=1 FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . From afbdbcbd709662ffe0477a535dff5e1206790b3b Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Tue, 6 Aug 2024 14:54:53 +0200 Subject: [PATCH 05/57] fix MAINTAINERS file to be proper TOML doc --- .taplo.toml | 1 + MAINTAINERS | 250 ++++++++++++++++++++++++++-------------------------- 2 files changed, 126 insertions(+), 125 deletions(-) create mode 100644 .taplo.toml diff --git a/.taplo.toml b/.taplo.toml new file mode 100644 index 0000000..e79f485 --- /dev/null +++ b/.taplo.toml @@ -0,0 +1 @@ +include = ["MAINTAINERS", ".taplo.toml"] diff --git a/MAINTAINERS b/MAINTAINERS index 8d5a813..993351d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1,160 +1,160 @@ [people] [people.lancevick] -Name = "Lance Vick" -Location = Silicon Valley, USA -Email = stagex@lance.vick.house -Matrix = @lance:matrix.org -Fediverse = @lrvick@mastodon.social -Keyoxide = https://keyoxide.org/E90A401336C8AAA9 -Website = https://lance.dev +name = "Lance Vick" +location = "Silicon Valley, USA" +email = "stagex@lance.vick.house" +matrix = "@lance:matrix.org" +fediverse = "@lrvick@mastodon.social" +keyoxide = "https://keyoxide.org/E90A401336C8AAA9" +website = "https://lance.dev" [people.antonlivaja] -Name = "Anton Livaja" -Location = Toronto, Canada -Email = stagex@livaja.me -Matrix = @antonleviathan:matrix.org -Fediverse = @anton@mastodon.online -Keyoxide = https://keyoxide.org/DC4B7D1F52E0BA4D -Website = https://antonlivaja.com/ +name = "Anton Livaja" +location = "Toronto, Canada" +email = "stagex@livaja.me" +matrix = "@antonleviathan:matrix.org" +fediverse = "@anton@mastodon.online" +keyoxide = "https://keyoxide.org/DC4B7D1F52E0BA4D" +website = "https://antonlivaja.com/" [people.ryanheywood] -Name = "Ryan Heywood" -Location = Florida, USA -Email = me@ryansquared.pub -Matrix = @ryansquared:beeper.com -Fediverse = @ryan@tilde.zone -Keyoxide = https://keyoxide.org/8E401478A3FBEF72 -Website = https://ryansquared.pub +name = "Ryan Heywood" +location = "Florida, USA" +email = "me@ryansquared.pub" +matrix = "@ryansquared:beeper.com" +fediverse = "@ryan@tilde.zone" +keyoxide = "https://keyoxide.org/8E401478A3FBEF72" +website = "https://ryansquared.pub" [people.dannygrove] -Name = "Danny Grove" -Location = California, USA -Email = stagex@dannygrove.com -Matrix = @dgrove:matrix.org -Keyoxide = https://keyoxide.org/C92FE5A3FBD58DD3EC5AA26BB10116B8193F2DBD -Website = https://dannygrove.com +name = "Danny Grove" +location = "California, USA" +email = "stagex@dannygrove.com" +matrix = "@dgrove:matrix.org" +keyoxide = "https://keyoxide.org/C92FE5A3FBD58DD3EC5AA26BB10116B8193F2DBD" +website = "https://dannygrove.com" [keys] [keys.lancevick.personal] -ID = 6B61ECD76088748C70590D55E90A401336C8AAA9 -Algorithm = RSA4096 -Servers = openpgp.org -Devices = Yubikey 4 Nano, Yubikey 5c, FST-01 -OfflineCA = Yes -Backup = Yes -Interaction = Yes +id = "6B61ECD76088748C70590D55E90A401336C8AAA9" +algorithm = "RSA4096" +servers = "openpgp.org" +devices = "Yubikey 4 Nano, Yubikey 5c, FST-01" +offline-ca = true +backup = true +interaction = true [keys.antonlivaja.personal] -ID = F4BF5C81EC78A5DD341C91EEDC4B7D1F52E0BA4D -Algorithm = RSA4096 -Servers = openpgp.org -Devices = Yubikey 5c -OfflineCA = Yes -Backup = Yes -Interaction = Yes +id = "F4BF5C81EC78A5DD341C91EEDC4B7D1F52E0BA4D" +algorithm = "RSA4096" +servers = "openpgp.org" +devices = "Yubikey 5c" +offline-ca = true +backup = true +interaction = true [keys.ryanheywood.personal] -ID = 88823A75ECAA786B0FF38B148E401478A3FBEF72 -Algorithm = RSA4096 -Servers = openpgp.org -Devices = Yubikey 4c Nano, Yubikey 5 NFC -OfflineCA = No -Backup = Yes -Interaction = Yes +id = "88823A75ECAA786B0FF38B148E401478A3FBEF72" +algorithm = "RSA4096" +servers = "openpgp.org" +devices = "Yubikey 4c Nano, Yubikey 5 NFC" +offline-ca = false +backup = true +interaction = true [keys.dannygrove.personal] -ID = C92FE5A3FBD58DD3EC5AA26BB10116B8193F2DBD -Algorithm = RSA4096 -Servers = openpgp.org -Devices = Yubikey 5 NFC, Yubikey 5C -OfflineCA = Yes -Backup = Yes -Interaction = Yes +id = "C92FE5A3FBD58DD3EC5AA26BB10116B8193F2DBD" +algorithm = "RSA4096" +servers = "openpgp.org" +devices = "Yubikey 5 NFC, Yubikey 5C" +offline-ca = true +backup = true +interaction = true [machines] [machines.lancevick.local1] -Owner = Lance Vick -Location = Silicon Valley, USA -Type = metal -Arch = x86_64 -Brand = AMD -Model = Ryzen Threadripper 2990WX -Ghz = 3 -Cores = 32 -OS = QubesOS / Debian -Runtime = Docker +owner = "Lance Vick" +location = "Silicon Valley, USA" +type = "metal" +arch = "x86_64" +brand = "AMD" +model = "Ryzen Threadripper 2990WX" +ghz = 3 +cores = 32 +os = "QubesOS / Debian" +runtime = "Docker" [machines.antonlivaja.local1] -Owner = Anton Livaja -Location = Toronto, Canada -Type = metal -Arch = x86_64 -Brand = AMD -Model = Ryzen Threadripper 2970X -Ghz = 3 -Cores = 24 -OS = QubesOS / Debian -Runtime = Docker +owner = "Anton Livaja" +location = "Toronto, Canada" +type = "metal" +arch = "x86_64" +brand = "AMD" +model = "Ryzen Threadripper 2970X" +ghz = 3 +cores = 24 +os = "QubesOS / Debian" +runtime = "Docker" [machines.lancevick.remote1] -Owner = Hetzner Online GmbH -Location = Finland, Europe -Type = metal -Arch = x86_64 -Brand = AMD -Model = EPYC 7502P -Ghz = 2.2 -Cores = 32 -OS = Debian -Runtime = Docker +owner = "Hetzner Online GmbH" +location = "Finland, Europe" +type = "metal" +arch = "x86_64" +brand = "AMD" +model = "EPYC 7502P" +ghz = 2.2 +cores = 32 +os = "Debian" +runtime = "Docker" [machines.antonlivaja.remote1] -Owner = Hetzner Online GmbH -Location = Hillsboro, OR, USA -Type = vm -Arch = x86_64 -Brand = AMD -Model = EPYC Milan -Ghz = 2.0 -Cores = 32 -OS = Debian -Runtime = Docker +owner = "Hetzner Online GmbH" +location = "Hillsboro, OR, USA" +type = "vm" +arch = "x86_64" +brand = "AMD" +model = "EPYC Milan" +ghz = 2.0 +cores = 32 +os = "Debian" +runtime = "Docker" [machines.ryanheywood.remote] -Owner = Hetzner Online GmbH -Location = Falkstein, Germany -Type = metal -Arch = x86_64 -Brand = AMD -Model = Ryzen Threadripper 2950X -Ghz = 3.5 -Cores = 16 -OS = Debian -Runtime = Docker +owner = "Hetzner Online GmbH" +location = "Falkstein, Germany" +type = "metal" +arch = "x86_64" +brand = "AMD" +model = "Ryzen Threadripper 2950X" +ghz = 3.5 +cores = 16 +os = "Debian" +runtime = "Docker" [machines.dannygrove.local1] -Owner = Danny Grove -Location = California, USA -Type = metal -Arch = x86_64 -Brand = Intel -Model = Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz -Ghz = 4.2 -Cores = 4 -OS = Arch Linux -Runtime = Docker +owner = "Danny Grove" +location = "California, USA" +type = "metal" +arch = "x86_64" +brand = "Intel" +model = "Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz" +ghz = 4.2 +cores = 4 +os = "arch Linux" +runtime = "Docker" [machines.dannygrove.local2] -Owner = Danny Grove -Location = California, USA -Type = metal -Arch = x86_64 -Brand = AMD -Model = AMD Ryzen 7 7840U -Ghz = 3.3 -Cores = 8 -OS = Arch Linux -Runtime = Docker +owner = "Danny Grove" +location = "California, USA" +type = "metal" +arch = "x86_64" +brand = "AMD" +model = "AMD Ryzen 7 7840U" +ghz = 3.3 +cores = 8 +os = "arch Linux" +runtime = "Docker" From 09b4cd76bbf074a2f96a5d164df0fa0b6598e6ee Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Tue, 13 Aug 2024 20:52:57 -0400 Subject: [PATCH 06/57] feat: bump llvm and clang --- packages/clang/Containerfile | 8 +-- packages/clang16/Containerfile | 48 +++++++++++++++ packages/eif_build/Containerfile | 2 +- packages/keyfork/Containerfile | 4 +- packages/lld/Containerfile | 2 +- packages/llvm/Containerfile | 10 ++-- packages/llvm16/Containerfile | 73 +++++++++++++++++++++++ packages/openpgp-card-tools/Containerfile | 4 +- packages/postgresql/Containerfile | 4 +- packages/py-cryptography/Containerfile | 2 +- packages/rust/Containerfile | 4 +- packages/zig/Containerfile | 4 +- 12 files changed, 143 insertions(+), 22 deletions(-) create mode 100644 packages/clang16/Containerfile create mode 100644 packages/llvm16/Containerfile diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index 2776004..dc92d44 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -1,6 +1,6 @@ -FROM scratch AS base -ENV VERSION=16.0.6 -ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e +FROM scratch as base +ENV VERSION=18.1.8 +ENV SRC_HASH=0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvm-org-${VERSION}/${SRC_FILE} @@ -18,7 +18,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/zlib . / RUN tar -xf ${SRC_FILE} diff --git a/packages/clang16/Containerfile b/packages/clang16/Containerfile new file mode 100644 index 0000000..9e792bc --- /dev/null +++ b/packages/clang16/Containerfile @@ -0,0 +1,48 @@ +FROM scratch as base +ENV VERSION=16.0.6 +ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e +ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz +ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvm-org-${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/python . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/openssl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/llvm16 . / +COPY --from=stagex/zlib . / + +RUN tar -xf ${SRC_FILE} +WORKDIR llvm-project-${VERSION}.src +RUN --network=none <<-EOF + set -eux + cmake \ + -S clang \ + -B build \ + -G Ninja \ + -Wno-dev \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr/ \ + -DCMAKE_INSTALL_RPATH=/usr/ \ + -DCLANG_BUILT_STANDALONE=ON \ + -DCLANG_LINK_CLANG_DYLIB=ON \ + -DCLANG_PLUGIN_SUPPORT=ON \ + -DCLANG_VENDOR=stagex \ + -DLIBCLANG_BUILD_STATIC=ON + cmake --build build +EOF + +FROM build as install +RUN --network=none DESTDIR="/rootfs" cmake --install build + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index ce147ab..4b0a940 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/zlib . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / COPY --from=stagex/git . / diff --git a/packages/keyfork/Containerfile b/packages/keyfork/Containerfile index 6cb9961..6f4689c 100644 --- a/packages/keyfork/Containerfile +++ b/packages/keyfork/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / @@ -24,7 +24,7 @@ ADD <<-EOF /.cargo/config.toml RUN cargo fetch FROM fetch AS build -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/linux-headers . / COPY --from=stagex/gmp . / COPY --from=stagex/nettle . / diff --git a/packages/lld/Containerfile b/packages/lld/Containerfile index 3cb7712..79a2e1d 100644 --- a/packages/lld/Containerfile +++ b/packages/lld/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/zlib . / # HACK: figure out why gcc package puts these in the wrong path at install time COPY --from=stagex/gcc /usr/lib64/* /usr/lib/ diff --git a/packages/llvm/Containerfile b/packages/llvm/Containerfile index cd614c5..c085733 100644 --- a/packages/llvm/Containerfile +++ b/packages/llvm/Containerfile @@ -1,10 +1,9 @@ -FROM scratch AS base -ENV VERSION=16.0.6 +FROM scratch as base +ENV VERSION=18.1.8 ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} -ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e - -FROM base AS fetch +ENV SRC_HASH=0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a +FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build @@ -21,6 +20,7 @@ COPY --from=stagex/openssl . / RUN tar -xf ${SRC_FILE} WORKDIR llvm-project-${VERSION}.src ADD *.patch . + RUN --network=none <<-EOF set -eux python -c "import setuptools; print(setuptools.__version__)" diff --git a/packages/llvm16/Containerfile b/packages/llvm16/Containerfile new file mode 100644 index 0000000..243f0f0 --- /dev/null +++ b/packages/llvm16/Containerfile @@ -0,0 +1,73 @@ +FROM scratch as base +ENV VERSION=16.0.6 +ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz +ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} +ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/python . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR llvm-project-${VERSION}.src +ADD *.patch . +RUN --network=none <<-EOF + set -eux + python -c "import setuptools; print(setuptools.__version__)" + cmake \ + -B build \ + -G Ninja \ + -Wno-dev -S llvm \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr/ \ + -DCMAKE_INSTALL_RPATH=/usr/ \ + -DLLVM_DEFAULT_TARGET_TRIPLE="x86_64-linux-musl" \ + -DLLVM_HOST_TRIPLE="x86_64-linux-musl" \ + -DLLVM_APPEND_VC_REV=OFF \ + -DLLVM_BINUTILS_INCDIR=/usr/include \ + -DLLVM_BUILD_DOCS=OFF \ + -DLLVM_BUILD_EXAMPLES=OFF \ + -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_BUILD_TESTS=ON \ + -DLLVM_ENABLE_ASSERTIONS=OFF \ + -DLLVM_ENABLE_DUMP=ON \ + -DLLVM_ENABLE_EH=ON \ + -DLLVM_ENABLE_FFI=OFF \ + -DLLVM_ENABLE_LIBCXX=OFF \ + -DLLVM_ENABLE_LIBEDIT=OFF \ + -DLLVM_ENABLE_PIC=ON \ + -DLLVM_ENABLE_RTTI=ON \ + -DLLVM_ENABLE_SPHINX=OFF \ + -DLLVM_ENABLE_TERMINFO=ON \ + -DLLVM_ENABLE_ZLIB=FORCE_ON \ + -DLLVM_ENABLE_ZSTD=OFF \ + -DLLVM_INCLUDE_BENCHMARKS=OFF \ + -DLLVM_INCLUDE_EXAMPLES=OFF \ + -DLLVM_INSTALL_UTILS=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_USE_PERF=ON + cmake --build build + python3 llvm/utils/lit/setup.py build +EOF + +FROM build as install +RUN --network=none <<-EOF + set -eux + DESTDIR="/rootfs" cmake --install build + python3 llvm/utils/lit/setup.py install --root="/rootfs" + ln -s lit /rootfs/usr/bin/llvm-lit +EOF + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/openpgp-card-tools/Containerfile b/packages/openpgp-card-tools/Containerfile index 12e186d..90e7c95 100644 --- a/packages/openpgp-card-tools/Containerfile +++ b/packages/openpgp-card-tools/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / @@ -20,7 +20,7 @@ WORKDIR openpgp-card-tools RUN cargo fetch FROM fetch AS build -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/linux-headers . / COPY --from=stagex/gmp . / COPY --from=stagex/nettle . / diff --git a/packages/postgresql/Containerfile b/packages/postgresql/Containerfile index 6338bee..ba2a340 100644 --- a/packages/postgresql/Containerfile +++ b/packages/postgresql/Containerfile @@ -14,10 +14,10 @@ COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/pkgconf . / COPY --from=stagex/icu . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/zlib . / COPY --from=stagex/gcc . / -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/perl . / COPY --from=stagex/ncurses . / COPY --from=stagex/bison . / diff --git a/packages/py-cryptography/Containerfile b/packages/py-cryptography/Containerfile index 00ce6d1..9d7119e 100644 --- a/packages/py-cryptography/Containerfile +++ b/packages/py-cryptography/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / diff --git a/packages/rust/Containerfile b/packages/rust/Containerfile index 67c1c6d..ad55d72 100644 --- a/packages/rust/Containerfile +++ b/packages/rust/Containerfile @@ -176,8 +176,8 @@ RUN sh build.sh 1.66.0 1.65.0 RUN sh build.sh 1.67.0 1.66.0 RUN sh build.sh 1.68.0 1.67.0 -FROM build-script AS build -COPY --from=stagex/llvm . / +FROM build-script as build +COPY --from=stagex/llvm16 . / COPY --from=build-llvm13 /rust-1.68.0 /rust-1.68.0 COPY --from=stagex/llvm13 /usr/lib/libLLVM-13.so /usr/lib/ RUN sh build.sh 1.69.0 1.68.0 diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index f93bcca..19a17e7 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -11,12 +11,12 @@ COPY static-glibc.patch . FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/cmake . / COPY --from=stagex/gcc . / COPY --from=stagex/libzstd . / COPY --from=stagex/lld . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/openssl . / From afa95fa2eaf6c432d3934169f53ee78fee5cdfa3 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Tue, 13 Aug 2024 20:55:29 -0400 Subject: [PATCH 07/57] fix: use latest llvm version for clang compilation --- packages/clang/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index dc92d44..d122967 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/zlib . / RUN tar -xf ${SRC_FILE} From 43a3fed77d129953e3c3d3332e332f27058d714a Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Wed, 14 Aug 2024 06:05:43 -0400 Subject: [PATCH 08/57] fix: add missing flag and dep --- packages/llvm/Containerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/llvm/Containerfile b/packages/llvm/Containerfile index c085733..34b8b26 100644 --- a/packages/llvm/Containerfile +++ b/packages/llvm/Containerfile @@ -8,6 +8,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build COPY --from=stagex/busybox . / +COPY --from=stagex/linux-headers . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / COPY --from=stagex/ninja . / @@ -54,6 +55,7 @@ RUN --network=none <<-EOF -DLLVM_ENABLE_ZSTD=OFF \ -DLLVM_INCLUDE_BENCHMARKS=OFF \ -DLLVM_INCLUDE_EXAMPLES=OFF \ + -DLLVM_INSTALL_GTEST=ON \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_LINK_LLVM_DYLIB=ON \ -DLLVM_USE_PERF=ON From 0966afb66a30d8e75057c4ea24f071169fc34d0c Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Wed, 14 Aug 2024 06:12:27 -0400 Subject: [PATCH 09/57] fix: use llvm 18 wherever possible --- packages/eif_build/Containerfile | 2 +- packages/keyfork/Containerfile | 2 +- packages/lld/Containerfile | 2 +- packages/openpgp-card-tools/Containerfile | 2 +- packages/postgresql/Containerfile | 2 +- packages/py-cryptography/Containerfile | 2 +- packages/zig/Containerfile | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index 4b0a940..ce147ab 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/zlib . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / COPY --from=stagex/git . / diff --git a/packages/keyfork/Containerfile b/packages/keyfork/Containerfile index 6f4689c..711a21d 100644 --- a/packages/keyfork/Containerfile +++ b/packages/keyfork/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / diff --git a/packages/lld/Containerfile b/packages/lld/Containerfile index 79a2e1d..3cb7712 100644 --- a/packages/lld/Containerfile +++ b/packages/lld/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/zlib . / # HACK: figure out why gcc package puts these in the wrong path at install time COPY --from=stagex/gcc /usr/lib64/* /usr/lib/ diff --git a/packages/openpgp-card-tools/Containerfile b/packages/openpgp-card-tools/Containerfile index 90e7c95..5d30e0a 100644 --- a/packages/openpgp-card-tools/Containerfile +++ b/packages/openpgp-card-tools/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / diff --git a/packages/postgresql/Containerfile b/packages/postgresql/Containerfile index ba2a340..812515e 100644 --- a/packages/postgresql/Containerfile +++ b/packages/postgresql/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/pkgconf . / COPY --from=stagex/icu . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/zlib . / COPY --from=stagex/gcc . / COPY --from=stagex/clang16 . / diff --git a/packages/py-cryptography/Containerfile b/packages/py-cryptography/Containerfile index 9d7119e..00ce6d1 100644 --- a/packages/py-cryptography/Containerfile +++ b/packages/py-cryptography/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index 19a17e7..e537b2e 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/cmake . / COPY --from=stagex/gcc . / COPY --from=stagex/libzstd . / COPY --from=stagex/lld . / -COPY --from=stagex/llvm16 . / +COPY --from=stagex/llvm . / COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/openssl . / From a9e37355e23aec67536b8b9a95932af48eee08a8 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Wed, 14 Aug 2024 21:37:57 -0400 Subject: [PATCH 10/57] fix: add target dir flag for llvm 18 --- packages/llvm/Containerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/llvm/Containerfile b/packages/llvm/Containerfile index 34b8b26..764aef1 100644 --- a/packages/llvm/Containerfile +++ b/packages/llvm/Containerfile @@ -28,6 +28,7 @@ RUN --network=none <<-EOF cmake \ -B build \ -G Ninja \ + -DCMAKE_INSTALL_LIBDIR=lib \ -Wno-dev -S llvm \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr/ \ From 157fb936b3f803610268deb0783c343e3cdcc72c Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Wed, 14 Aug 2024 23:17:54 -0400 Subject: [PATCH 11/57] fix: use AS instead of as and switch to newer clang and llvm --- packages/clang16/Containerfile | 10 +++++----- packages/llvm16/Containerfile | 10 +++++----- packages/openpgp-card-tools/Containerfile | 2 +- packages/postgresql/Containerfile | 2 +- packages/zig/Containerfile | 2 +- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/clang16/Containerfile b/packages/clang16/Containerfile index 9e792bc..6689390 100644 --- a/packages/clang16/Containerfile +++ b/packages/clang16/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.0.6 ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvm-org-${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -41,8 +41,8 @@ RUN --network=none <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN --network=none DESTDIR="/rootfs" cmake --install build -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/llvm16/Containerfile b/packages/llvm16/Containerfile index 243f0f0..cd614c5 100644 --- a/packages/llvm16/Containerfile +++ b/packages/llvm16/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=16.0.6 ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} ENV SRC_HASH=ce5e71081d17ce9e86d7cbcfa28c4b04b9300f8fb7e78422b1feb6bc52c3028e -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / @@ -61,7 +61,7 @@ RUN --network=none <<-EOF python3 llvm/utils/lit/setup.py build EOF -FROM build as install +FROM build AS install RUN --network=none <<-EOF set -eux DESTDIR="/rootfs" cmake --install build @@ -69,5 +69,5 @@ RUN --network=none <<-EOF ln -s lit /rootfs/usr/bin/llvm-lit EOF -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/openpgp-card-tools/Containerfile b/packages/openpgp-card-tools/Containerfile index 5d30e0a..12e186d 100644 --- a/packages/openpgp-card-tools/Containerfile +++ b/packages/openpgp-card-tools/Containerfile @@ -20,7 +20,7 @@ WORKDIR openpgp-card-tools RUN cargo fetch FROM fetch AS build -COPY --from=stagex/clang16 . / +COPY --from=stagex/clang . / COPY --from=stagex/linux-headers . / COPY --from=stagex/gmp . / COPY --from=stagex/nettle . / diff --git a/packages/postgresql/Containerfile b/packages/postgresql/Containerfile index 812515e..6338bee 100644 --- a/packages/postgresql/Containerfile +++ b/packages/postgresql/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/icu . / COPY --from=stagex/llvm . / COPY --from=stagex/zlib . / COPY --from=stagex/gcc . / -COPY --from=stagex/clang16 . / +COPY --from=stagex/clang . / COPY --from=stagex/perl . / COPY --from=stagex/ncurses . / COPY --from=stagex/bison . / diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index e537b2e..f93bcca 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -11,7 +11,7 @@ COPY static-glibc.patch . FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / -COPY --from=stagex/clang16 . / +COPY --from=stagex/clang . / COPY --from=stagex/cmake . / COPY --from=stagex/gcc . / COPY --from=stagex/libzstd . / From 1a94ad07cdf8ba0f62bd5fbaa8bfd9570c6707bd Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Wed, 14 Aug 2024 23:23:49 -0400 Subject: [PATCH 12/57] fix: as capitalization --- packages/clang/Containerfile | 2 +- packages/llvm/Containerfile | 4 ++-- packages/rust/Containerfile | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index d122967..c500eff 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -1,4 +1,4 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=18.1.8 ENV SRC_HASH=0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz diff --git a/packages/llvm/Containerfile b/packages/llvm/Containerfile index 764aef1..2e24686 100644 --- a/packages/llvm/Containerfile +++ b/packages/llvm/Containerfile @@ -1,9 +1,9 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=18.1.8 ENV SRC_FILE=llvm-project-${VERSION}.src.tar.xz ENV SRC_SITE=https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}/${SRC_FILE} ENV SRC_HASH=0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build diff --git a/packages/rust/Containerfile b/packages/rust/Containerfile index ad55d72..3089acc 100644 --- a/packages/rust/Containerfile +++ b/packages/rust/Containerfile @@ -176,7 +176,7 @@ RUN sh build.sh 1.66.0 1.65.0 RUN sh build.sh 1.67.0 1.66.0 RUN sh build.sh 1.68.0 1.67.0 -FROM build-script as build +FROM build-script AS build COPY --from=stagex/llvm16 . / COPY --from=build-llvm13 /rust-1.68.0 /rust-1.68.0 COPY --from=stagex/llvm13 /usr/lib/libLLVM-13.so /usr/lib/ From 3318d411af1910cf54a832424629d6ae15123157 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:19:57 -0400 Subject: [PATCH 13/57] fix: add make file entries --- src/packages.mk | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/src/packages.mk b/src/packages.mk index dec1f0e..16be457 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -248,6 +248,24 @@ out/clang/index.json: \ out/zlib/index.json $(call build,clang) +.PHONY: clang16 +clang16: out/clang16/index.json +out/clang16/index.json: \ + packages/clang16/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/llvm16/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/py-setuptools/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,clang16) + .PHONY: cmake cmake: out/cmake/index.json out/cmake/index.json: \ @@ -796,7 +814,7 @@ out/keyfork/index.json: \ out/binutils/index.json \ out/busybox/index.json \ out/ca-certificates/index.json \ - out/clang/index.json \ + out/clang16/index.json \ out/filesystem/index.json \ out/gcc/index.json \ out/gmp/index.json \ @@ -1194,6 +1212,7 @@ out/llvm/index.json: \ out/cmake/index.json \ out/filesystem/index.json \ out/gcc/index.json \ + out/linux-headers/index.json \ out/musl/index.json \ out/ninja/index.json \ out/openssl/index.json \ @@ -1219,6 +1238,23 @@ out/llvm13/index.json: \ out/zlib/index.json $(call build,llvm13) +.PHONY: llvm16 +llvm16: out/llvm16/index.json +out/llvm16/index.json: \ + packages/llvm16/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/py-setuptools/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,llvm16) + .PHONY: lua lua: out/lua/index.json out/lua/index.json: \ @@ -1479,6 +1515,7 @@ out/openssh/index.json: \ out/musl/index.json \ out/musl-fts/index.json \ out/musl-obstack/index.json \ + out/openssl/index.json \ out/perl/index.json \ out/pkgconf/index.json \ out/zlib/index.json @@ -1825,7 +1862,7 @@ out/py-cryptography/index.json: \ out/gcc/index.json \ out/libffi/index.json \ out/libunwind/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/openssl/index.json \ out/pkgconf/index.json \ @@ -2201,8 +2238,8 @@ out/rust/index.json: \ out/filesystem/index.json \ out/gcc/index.json \ out/libunwind/index.json \ - out/llvm/index.json \ out/llvm13/index.json \ + out/llvm16/index.json \ out/make/index.json \ out/musl/index.json \ out/openssl/index.json \ From 64b3dbdd90fe871f84a49436fd223c463982c4ae Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:20:24 -0400 Subject: [PATCH 14/57] fix: py-cryptography needs llvm16 --- packages/py-cryptography/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-cryptography/Containerfile b/packages/py-cryptography/Containerfile index 00ce6d1..9d7119e 100644 --- a/packages/py-cryptography/Containerfile +++ b/packages/py-cryptography/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / From 81794ca1f14848cb33ae0ba1e681fbeaecf477a9 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:25:51 -0400 Subject: [PATCH 15/57] fix: llvm16 for eif_build --- packages/eif_build/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index ce147ab..4b0a940 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/zlib . / COPY --from=stagex/openssl . / COPY --from=stagex/ca-certificates . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/binutils . / COPY --from=stagex/pkgconf . / COPY --from=stagex/git . / From 036914db83c584f3a965dea03c2bd35a71f8da27 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:36:41 -0400 Subject: [PATCH 16/57] fix: use llvm16 with keyfork --- packages/keyfork/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/keyfork/Containerfile b/packages/keyfork/Containerfile index 711a21d..6f4689c 100644 --- a/packages/keyfork/Containerfile +++ b/packages/keyfork/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / From 053efde9ca7bc3cf154c3df9ebd05fe044af8c03 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:38:20 -0400 Subject: [PATCH 17/57] fix: use llvm16 for lld --- packages/lld/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/lld/Containerfile b/packages/lld/Containerfile index 3cb7712..79a2e1d 100644 --- a/packages/lld/Containerfile +++ b/packages/lld/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/zlib . / # HACK: figure out why gcc package puts these in the wrong path at install time COPY --from=stagex/gcc /usr/lib64/* /usr/lib/ From 0b0eec3f31b7049d084f9bfddc5fbed2baa5d1f9 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:39:18 -0400 Subject: [PATCH 18/57] fix: use llvm16 for openpgp-card-tools --- packages/openpgp-card-tools/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/openpgp-card-tools/Containerfile b/packages/openpgp-card-tools/Containerfile index 12e186d..a07c12a 100644 --- a/packages/openpgp-card-tools/Containerfile +++ b/packages/openpgp-card-tools/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / From 690aa3d960a186f28c90b953de83ea9b4dbfe92a Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 00:43:36 -0400 Subject: [PATCH 19/57] fix: use clang16 with openpgp-card-tools --- packages/openpgp-card-tools/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/openpgp-card-tools/Containerfile b/packages/openpgp-card-tools/Containerfile index a07c12a..90e7c95 100644 --- a/packages/openpgp-card-tools/Containerfile +++ b/packages/openpgp-card-tools/Containerfile @@ -20,7 +20,7 @@ WORKDIR openpgp-card-tools RUN cargo fetch FROM fetch AS build -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/linux-headers . / COPY --from=stagex/gmp . / COPY --from=stagex/nettle . / From 3bfdc8958d93a0e0e768e1758316470a0e4bc8ac Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Thu, 15 Aug 2024 06:21:37 +0200 Subject: [PATCH 20/57] ci: add staging/main check --- .forgejo/workflows/merge-main-check.yml | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .forgejo/workflows/merge-main-check.yml diff --git a/.forgejo/workflows/merge-main-check.yml b/.forgejo/workflows/merge-main-check.yml new file mode 100644 index 0000000..c95b1c0 --- /dev/null +++ b/.forgejo/workflows/merge-main-check.yml @@ -0,0 +1,26 @@ +name: merge-main-check +on: + pull_request: + types: + - opened + - edited + - reopened + - synchronize + +defaults: + run: + shell: 'sh -e {0}' + +jobs: + check: + runs-on: shell + if: github.base_ref == 'main' + steps: + - name: Check if non-staging -> main + if: github.head_ref != 'staging' + run: echo 'Cannot merge non-staging branch to main'; exit 1 + + - name: Check if staging -> main + if: github.head_ref == 'staging' + run: echo 'Merge from staging branch to main allowed'; exit 0 + From 99fd407a37868c1315c5650b3aa4853dbd3bd39d Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Thu, 15 Aug 2024 09:28:07 -0400 Subject: [PATCH 21/57] fix: use llvm16 and clang16 for zig --- packages/zig/Containerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index f93bcca..19a17e7 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -11,12 +11,12 @@ COPY static-glibc.patch . FROM fetch AS build COPY --from=stagex/binutils . / COPY --from=stagex/busybox . / -COPY --from=stagex/clang . / +COPY --from=stagex/clang16 . / COPY --from=stagex/cmake . / COPY --from=stagex/gcc . / COPY --from=stagex/libzstd . / COPY --from=stagex/lld . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/openssl . / From 031619ed8c75c31053f132f5a8d360716803437c Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 16 Aug 2024 22:16:36 -0400 Subject: [PATCH 22/57] ocismack: initial commit --- packages/ocismack/Containerfile | 40 +++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 packages/ocismack/Containerfile diff --git a/packages/ocismack/Containerfile b/packages/ocismack/Containerfile new file mode 100644 index 0000000..c5fc6d5 --- /dev/null +++ b/packages/ocismack/Containerfile @@ -0,0 +1,40 @@ +FROM scratch AS base +ENV VERSION=0.1.0 +ENV SRC_HASH=dc9ae7ce78e46351f4f0a8b5ffbb5ff5fdc90bffab9b55cea3c2b3f9ea20123d +ENV SRC_FILE=ocismack-v${VERSION}.tar.gz +ENV SRC_SITE=https://codeberg.org/stagex/ocismack/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . +COPY --from=stagex/rust . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/llvm . / +COPY --from=stagex/libunwind . / +COPY --from=stagex/openssl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/ca-certificates . / +RUN tar xf ${SRC_FILE} +WORKDIR ocismack +RUN cargo fetch + +FROM fetch AS build +COPY --from=stagex/binutils . / +ENV RUSTFLAGS='-C codegen-units=1 -C target-feature=+crt-static' +RUN --network=none \ + cargo build \ + --frozen \ + --release \ + --target x86_64-unknown-linux-musl \ + --bin ocismack + +FROM build AS install +RUN <<-EOF + set -eux + mkdir -p /rootfs/usr/bin + cp target/x86_64-unknown-linux-musl/release/ocismack /rootfs/usr/bin/ocismack +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / From 9a413e5aba81320f5024d6ac036cae0583214ae9 Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 16 Aug 2024 22:27:31 -0400 Subject: [PATCH 23/57] ocismack: add to packages.mk --- src/packages.mk | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/packages.mk b/src/packages.mk index dec1f0e..f05be95 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1,4 +1,3 @@ - .PHONY: abseil-cpp abseil-cpp: out/abseil-cpp/index.json out/abseil-cpp/index.json: \ @@ -1408,6 +1407,23 @@ out/npth/index.json: \ out/zlib/index.json $(call build,npth) +.PHONY: ocismack +ocismack: out/ocismack/index.json +out/ocismack/index.json: \ + packages/ocismack/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/ca-certificates/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libunwind/index.json \ + out/llvm/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/rust/index.json \ + out/zlib/index.json + $(call build,ocismack) + .PHONY: openpgp-card-tools openpgp-card-tools: out/openpgp-card-tools/index.json out/openpgp-card-tools/index.json: \ From 4cbb20120419726f5c6d6c4f2c66eed7d9d6f715 Mon Sep 17 00:00:00 2001 From: Danny Grove Date: Sat, 17 Aug 2024 01:52:19 -0700 Subject: [PATCH 24/57] Fix format for mdbook make block --- src/packages.mk | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/packages.mk b/src/packages.mk index 9078667..eb579a1 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1275,19 +1275,19 @@ out/make/index.json: \ .PHONY: mdbook mdbook: out/mdbook/index.json out/mdbook/index.json: \ - packages/mdbook/Containerfile \ - out/binutils/index.json \ - out/busybox/index.json \ - out/ca-certificates/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/libunwind/index.json \ - out/llvm/index.json \ - out/musl/index.json \ - out/openssl/index.json \ - out/rust/index.json \ - out/zlib/index.json - $(call build,mdbook) + packages/mdbook/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/ca-certificates/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libunwind/index.json \ + out/llvm/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/rust/index.json \ + out/zlib/index.json + $(call build,mdbook) .PHONY: meson meson: out/meson/index.json From 31c7695a5bf3e9bdabb2ea511e347456fea1d505 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sat, 17 Aug 2024 22:15:37 -0700 Subject: [PATCH 25/57] fix: corrections following recent merges to allow staging to build --- packages/mdbook/Containerfile | 2 +- packages/ocismack/Containerfile | 2 +- src/packages.mk | 41 +++++++++++++++++---------------- 3 files changed, 23 insertions(+), 22 deletions(-) diff --git a/packages/mdbook/Containerfile b/packages/mdbook/Containerfile index 12a1fdb..2639722 100644 --- a/packages/mdbook/Containerfile +++ b/packages/mdbook/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / diff --git a/packages/ocismack/Containerfile b/packages/ocismack/Containerfile index c5fc6d5..b255e33 100644 --- a/packages/ocismack/Containerfile +++ b/packages/ocismack/Containerfile @@ -10,7 +10,7 @@ COPY --from=stagex/rust . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / -COPY --from=stagex/llvm . / +COPY --from=stagex/llvm16 . / COPY --from=stagex/libunwind . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / diff --git a/src/packages.mk b/src/packages.mk index 226f9db..38103c3 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1,3 +1,4 @@ + .PHONY: abseil-cpp abseil-cpp: out/abseil-cpp/index.json out/abseil-cpp/index.json: \ @@ -421,7 +422,7 @@ out/eif_build/index.json: \ out/gcc/index.json \ out/git/index.json \ out/libunwind/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/openssl/index.json \ out/pkgconf/index.json \ @@ -819,7 +820,7 @@ out/keyfork/index.json: \ out/gmp/index.json \ out/libunwind/index.json \ out/linux-headers/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/nettle/index.json \ out/openssl/index.json \ @@ -1193,7 +1194,7 @@ out/lld/index.json: \ out/cmake/index.json \ out/filesystem/index.json \ out/gcc/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/ninja/index.json \ out/openssl/index.json \ @@ -1463,19 +1464,19 @@ out/npth/index.json: \ .PHONY: ocismack ocismack: out/ocismack/index.json out/ocismack/index.json: \ - packages/ocismack/Containerfile \ - out/binutils/index.json \ - out/busybox/index.json \ - out/ca-certificates/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/libunwind/index.json \ - out/llvm/index.json \ - out/musl/index.json \ - out/openssl/index.json \ - out/rust/index.json \ - out/zlib/index.json - $(call build,ocismack) + packages/ocismack/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/ca-certificates/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libunwind/index.json \ + out/llvm/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/rust/index.json \ + out/zlib/index.json + $(call build,ocismack) .PHONY: openpgp-card-tools openpgp-card-tools: out/openpgp-card-tools/index.json @@ -1484,13 +1485,13 @@ out/openpgp-card-tools/index.json: \ out/binutils/index.json \ out/busybox/index.json \ out/ca-certificates/index.json \ - out/clang/index.json \ + out/clang16/index.json \ out/filesystem/index.json \ out/gcc/index.json \ out/gmp/index.json \ out/libunwind/index.json \ out/linux-headers/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/nettle/index.json \ out/openssl/index.json \ @@ -2577,13 +2578,13 @@ out/zig/index.json: \ packages/zig/Containerfile \ out/binutils/index.json \ out/busybox/index.json \ - out/clang/index.json \ + out/clang16/index.json \ out/cmake/index.json \ out/filesystem/index.json \ out/gcc/index.json \ out/libzstd/index.json \ out/lld/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/make/index.json \ out/musl/index.json \ out/openssl/index.json \ From 1ba508ed1a8456d06512ba3110af2a388d0480d8 Mon Sep 17 00:00:00 2001 From: ConYel Date: Sun, 18 Aug 2024 21:25:51 +0200 Subject: [PATCH 26/57] feat: add cython --- packages/cython/Containerfile | 42 +++++++++++++++++++++++++ src/packages.mk | 58 +++++++++++++++++++++++++++++++++-- 2 files changed, 98 insertions(+), 2 deletions(-) create mode 100644 packages/cython/Containerfile diff --git a/packages/cython/Containerfile b/packages/cython/Containerfile new file mode 100644 index 0000000..307dfb6 --- /dev/null +++ b/packages/cython/Containerfile @@ -0,0 +1,42 @@ +FROM scratch AS base +ENV VERSION=3.0.10 +ENV SRC_HASH=00f97476cef9fcd9a89f9d2a49be3b518e1a74b91f377fe08c97fcb44bc0f7d7 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/cython/cython/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-distro . / +COPY --from=stagex/py-dateutil . / +COPY --from=stagex/py-urllib3 . / +COPY --from=stagex/py-cffi . / +RUN tar -xzf ${SRC_FILE} +WORKDIR cython-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 +# +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 38103c3..4ab3d25 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -322,6 +322,32 @@ out/curl/index.json: \ out/perl/index.json $(call build,curl) +.PHONY: cython +cython: out/cython/index.json +out/cython/index.json: \ + packages/cython/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-cffi/index.json \ + out/py-dateutil/index.json \ + out/py-distro/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-urllib3/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,cython) + .PHONY: diffutils diffutils: out/diffutils/index.json out/diffutils/index.json: \ @@ -986,6 +1012,34 @@ out/libqrencode/index.json: \ out/musl/index.json $(call build,libqrencode) +.PHONY: libseccomp +libseccomp: out/libseccomp/index.json +out/libseccomp/index.json: \ + packages/libseccomp/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/cython/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gperf/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-cffi/index.json \ + out/py-dateutil/index.json \ + out/py-distro/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-urllib3/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,libseccomp) + .PHONY: libtool libtool: out/libtool/index.json out/libtool/index.json: \ @@ -1318,7 +1372,7 @@ out/mdbook/index.json: \ out/filesystem/index.json \ out/gcc/index.json \ out/libunwind/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/openssl/index.json \ out/rust/index.json \ @@ -1471,7 +1525,7 @@ out/ocismack/index.json: \ out/filesystem/index.json \ out/gcc/index.json \ out/libunwind/index.json \ - out/llvm/index.json \ + out/llvm16/index.json \ out/musl/index.json \ out/openssl/index.json \ out/rust/index.json \ From 79dad5193e455fa348a84247a73bfae465efbbff Mon Sep 17 00:00:00 2001 From: ConYel Date: Sun, 18 Aug 2024 21:34:53 +0200 Subject: [PATCH 27/57] chore: remove libseccomb -not ready- --- src/packages.mk | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/src/packages.mk b/src/packages.mk index 4ab3d25..cedabfb 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1012,34 +1012,6 @@ out/libqrencode/index.json: \ out/musl/index.json $(call build,libqrencode) -.PHONY: libseccomp -libseccomp: out/libseccomp/index.json -out/libseccomp/index.json: \ - packages/libseccomp/Containerfile \ - out/binutils/index.json \ - out/busybox/index.json \ - out/cmake/index.json \ - out/cython/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/gperf/index.json \ - out/libffi/index.json \ - out/make/index.json \ - out/musl/index.json \ - out/openssl/index.json \ - out/py-cffi/index.json \ - out/py-dateutil/index.json \ - out/py-distro/index.json \ - out/py-flit/index.json \ - out/py-gpep517/index.json \ - out/py-installer/index.json \ - out/py-setuptools/index.json \ - out/py-urllib3/index.json \ - out/py-wheel/index.json \ - out/python/index.json \ - out/zlib/index.json - $(call build,libseccomp) - .PHONY: libtool libtool: out/libtool/index.json out/libtool/index.json: \ From 07e04c3d7d15781a87a061ec3c0fb744b01e1373 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Fri, 16 Aug 2024 15:26:04 -0400 Subject: [PATCH 28/57] wip: php 9 tests failing --- packages/abuild/Containerfile | 37 + packages/acl/Containerfile | 36 + packages/apache2/Containerfile | 78 ++ packages/apr-util/Containerfile | 48 + packages/apr/Containerfile | 38 + .../apr/apr-1.6.2-dont-test-dlclose.patch | 22 + packages/apr/semtimedop-s390x.patch | 16 + packages/argon2/Containerfile | 28 + packages/aspell/Containerfile | 38 + packages/attr/Containerfile | 43 + packages/brotli/Containerfile | 42 + packages/clang/Containerfile | 36 +- packages/dbus-glib/Containerfile | 44 + packages/dbus/Containerfile | 49 + packages/doxygen/Containerfile | 48 + .../doxygen/remove-usage-of-fstat64.patch | 23 + packages/enchant2/Containerfile | 51 + packages/expat/Containerfile | 35 + packages/fmt/Containerfile | 45 + .../fix-handling-of-static-separator.patch | 31 + packages/freetds/Containerfile | 48 + packages/gdbm/Containerfile | 40 + packages/glib/Containerfile | 71 ++ packages/glib/alwaysbash.patch | 16 + packages/glib/deprecated-no-warn.patch | 22 + packages/glib/fix-tests.patch | 456 +++++++++ packages/glib/flaky-tests.patch | 83 ++ packages/glib/tests-machine-id.patch | 41 + packages/groff/Containerfile | 37 + packages/hunspell/Containerfile | 38 + packages/krb5/Containerfile | 62 ++ packages/libaio/Containerfile | 37 + packages/libaio/libaio-cppflags.patch | 16 + packages/libaio/libaio-errno.patch | 11 + packages/libaio/test-poll.patch | 11 + packages/libaio/test.patch | 55 + packages/libedit/Containerfile | 43 + packages/libevent/Containerfile | 45 + packages/libical/Containerfile | 43 + packages/libiconv/Containerfile | 37 + packages/libsm/Containerfile | 44 + packages/libsodium/Containerfile | 37 + packages/libverto/Containerfile | 64 ++ packages/libx11/Containerfile | 40 + packages/libxcb/Containerfile | 42 + packages/linux-pam/Containerfile | 57 ++ packages/lmdb/Containerfile | 34 + packages/lmdb/lmdb-make.patch | 83 ++ packages/mariadb-connector-c/Containerfile | 50 + .../incorrect-sys-poll.patch | 11 + .../unused-paramater.patch | 25 + packages/mariadb/Containerfile | 121 +++ packages/mariadb/disable-failing-test.patch | 30 + packages/mariadb/gcc13.patch | 40 + packages/mariadb/have-stacktrace.patch | 21 + packages/mariadb/lfs64.patch | 936 ++++++++++++++++++ packages/mariadb/pcc-remove-glibc-dep.patch | 36 + packages/mariadb/revert-c432c9ef.patch | 0 packages/nasm/Containerfile | 38 + packages/nuspell/Containerfile | 43 + packages/oniguruma/Containerfile | 44 + packages/openldap/Containerfile | 56 ++ packages/pcre2/Containerfile | 57 ++ packages/perl-dbd-mysql/Containerfile | 36 + packages/perl-dbi/Containerfile | 34 + packages/perl-yaml-syck/Containerfile | 33 + packages/php/Containerfile | 180 ++++ packages/php/fix-lfs64-2.patch | 39 + packages/php/fix-tests-devserver.patch | 22 + packages/php/includedir.patch | 40 + packages/php/install-pear.patch | 14 + .../php/loongarch64-support-for-fibers.patch | 245 +++++ packages/php/php83-fpm-verson-suffix.patch | 79 ++ packages/php/phpinfo-avif.patch | 30 + packages/php/sharedir.patch | 11 + packages/re2c/Containerfile | 37 + packages/rhash/Containerfile | 36 + packages/samurai/CVE-2021-30218.patch | 29 + packages/samurai/CVE-2021-30219.patch | 26 + packages/samurai/Containerfile | 33 + packages/scdoc/Containerfile | 30 + packages/skalibs/Containerfile | 34 + packages/unixodbc/Containerfile | 46 + packages/util-macros/Containerfile | 37 + packages/utmps/Containerfile | 39 + ...PEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch | 76 ++ packages/vala/Containerfile | 46 + packages/xmlto/Containerfile | 49 + packages/xorgproto/Containerfile | 45 + 89 files changed, 5221 insertions(+), 14 deletions(-) create mode 100644 packages/abuild/Containerfile create mode 100644 packages/acl/Containerfile create mode 100644 packages/apache2/Containerfile create mode 100644 packages/apr-util/Containerfile create mode 100644 packages/apr/Containerfile create mode 100644 packages/apr/apr-1.6.2-dont-test-dlclose.patch create mode 100644 packages/apr/semtimedop-s390x.patch create mode 100644 packages/argon2/Containerfile create mode 100644 packages/aspell/Containerfile create mode 100644 packages/attr/Containerfile create mode 100644 packages/brotli/Containerfile create mode 100644 packages/dbus-glib/Containerfile create mode 100644 packages/dbus/Containerfile create mode 100644 packages/doxygen/Containerfile create mode 100644 packages/doxygen/remove-usage-of-fstat64.patch create mode 100644 packages/enchant2/Containerfile create mode 100644 packages/expat/Containerfile create mode 100644 packages/fmt/Containerfile create mode 100644 packages/fmt/fix-handling-of-static-separator.patch create mode 100644 packages/freetds/Containerfile create mode 100644 packages/gdbm/Containerfile create mode 100644 packages/glib/Containerfile create mode 100644 packages/glib/alwaysbash.patch create mode 100644 packages/glib/deprecated-no-warn.patch create mode 100644 packages/glib/fix-tests.patch create mode 100644 packages/glib/flaky-tests.patch create mode 100644 packages/glib/tests-machine-id.patch create mode 100644 packages/groff/Containerfile create mode 100644 packages/hunspell/Containerfile create mode 100644 packages/krb5/Containerfile create mode 100644 packages/libaio/Containerfile create mode 100644 packages/libaio/libaio-cppflags.patch create mode 100644 packages/libaio/libaio-errno.patch create mode 100644 packages/libaio/test-poll.patch create mode 100644 packages/libaio/test.patch create mode 100644 packages/libedit/Containerfile create mode 100644 packages/libevent/Containerfile create mode 100644 packages/libical/Containerfile create mode 100644 packages/libiconv/Containerfile create mode 100644 packages/libsm/Containerfile create mode 100644 packages/libsodium/Containerfile create mode 100644 packages/libverto/Containerfile create mode 100644 packages/libx11/Containerfile create mode 100644 packages/libxcb/Containerfile create mode 100644 packages/linux-pam/Containerfile create mode 100644 packages/lmdb/Containerfile create mode 100644 packages/lmdb/lmdb-make.patch create mode 100644 packages/mariadb-connector-c/Containerfile create mode 100644 packages/mariadb-connector-c/incorrect-sys-poll.patch create mode 100644 packages/mariadb-connector-c/unused-paramater.patch create mode 100644 packages/mariadb/Containerfile create mode 100644 packages/mariadb/disable-failing-test.patch create mode 100644 packages/mariadb/gcc13.patch create mode 100644 packages/mariadb/have-stacktrace.patch create mode 100644 packages/mariadb/lfs64.patch create mode 100644 packages/mariadb/pcc-remove-glibc-dep.patch create mode 100644 packages/mariadb/revert-c432c9ef.patch create mode 100644 packages/nasm/Containerfile create mode 100644 packages/nuspell/Containerfile create mode 100644 packages/oniguruma/Containerfile create mode 100644 packages/openldap/Containerfile create mode 100644 packages/pcre2/Containerfile create mode 100644 packages/perl-dbd-mysql/Containerfile create mode 100644 packages/perl-dbi/Containerfile create mode 100644 packages/perl-yaml-syck/Containerfile create mode 100644 packages/php/Containerfile create mode 100644 packages/php/fix-lfs64-2.patch create mode 100644 packages/php/fix-tests-devserver.patch create mode 100644 packages/php/includedir.patch create mode 100644 packages/php/install-pear.patch create mode 100644 packages/php/loongarch64-support-for-fibers.patch create mode 100644 packages/php/php83-fpm-verson-suffix.patch create mode 100644 packages/php/phpinfo-avif.patch create mode 100644 packages/php/sharedir.patch create mode 100644 packages/re2c/Containerfile create mode 100644 packages/rhash/Containerfile create mode 100644 packages/samurai/CVE-2021-30218.patch create mode 100644 packages/samurai/CVE-2021-30219.patch create mode 100644 packages/samurai/Containerfile create mode 100644 packages/scdoc/Containerfile create mode 100644 packages/skalibs/Containerfile create mode 100644 packages/unixodbc/Containerfile create mode 100644 packages/util-macros/Containerfile create mode 100644 packages/utmps/Containerfile create mode 100644 packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch create mode 100644 packages/vala/Containerfile create mode 100644 packages/xmlto/Containerfile create mode 100644 packages/xorgproto/Containerfile diff --git a/packages/abuild/Containerfile b/packages/abuild/Containerfile new file mode 100644 index 0000000..882c483 --- /dev/null +++ b/packages/abuild/Containerfile @@ -0,0 +1,37 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=3.12.0 +ENV SRC_HASH=5783e04ededa21ffa3f600551a7e2ca6db1c8e1a962a868311f5e5e4560908ce +ENV SRC_FILE=abuild-${VERSION}.tar.gz +ENV SRC_SITE=https://gitlab.alpinelinux.org/alpine/abuild/-/archive/${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/meson . / +COPY --from=stagex/openssl . / +COPY --from=stagex/make . / +COPY --from=stagex/lzip . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/zlib . / +COPY --from=stagex/elfutils . / +COPY --from=stagex/scdoc . / +RUN tar -xf ${SRC_FILE} +WORKDIR abuild-${VERSION} +RUN --network=none <<-EOF + set -eux + make VERSION="${VERSION}-r5" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / + diff --git a/packages/acl/Containerfile b/packages/acl/Containerfile new file mode 100644 index 0000000..a17639e --- /dev/null +++ b/packages/acl/Containerfile @@ -0,0 +1,36 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.3.2 +ENV SRC_HASH=5f2bdbad629707aa7d85c623f994aa8a1d2dec55a73de5205bac0bf6058a2f7c +ENV SRC_FILE=acl-${VERSION}.tar.gz +ENV SRC_SITE=https://download.savannah.nongnu.org/releases/acl/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/attr . / +RUN tar -xf ${SRC_FILE} +WORKDIR acl-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/libexec + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/apache2/Containerfile b/packages/apache2/Containerfile new file mode 100644 index 0000000..2485d72 --- /dev/null +++ b/packages/apache2/Containerfile @@ -0,0 +1,78 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.4.59 +ENV SRC_HASH=ec51501ec480284ff52f637258135d333230a7d229c3afa6f6c2f9040e321323 +ENV SRC_FILE=httpd-${VERSION}.tar.bz2 +ENV SRC_SITE=https://dlcdn.apache.org/httpd/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/expat . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/brotli . / +COPY --from=stagex/openssl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/lua . / + +RUN tar -xf ${SRC_FILE} +WORKDIR httpd-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --prefix=/usr \ + --enable-so \ + --enable-suexec \ + --with-suexec-caller=apache \ + --with-suexec-docroot=/var/www \ + --with-suexec-logfile=/var/log/apache2/suexec.log \ + --with-suexec-bin=/usr/sbin/suexec \ + --with-suexec-uidmin=99 \ + --with-suexec-gidmin=99 \ + --with-apr=/usr/bin/apr-1-config \ + --with-apr-util=/usr/bin/apu-1-config \ + --with-pcre=/usr \ + --enable-mods-shared=all \ + --enable-mpms-shared=all \ + --with-mpm=prefork \ + --enable-ssl \ + --with-ssl \ + --enable-proxy \ + --enable-cache \ + --enable-disk-cache \ + --enable-mem-cache \ + --enable-file-cache \ + --enable-ldap \ + --enable-authnz-ldap \ + --enable-cgid \ + --enable-cgi \ + --enable-authn-anon \ + --enable-authn-alias \ + --disable-imagemap \ + --enable-proxy-connect \ + --enable-proxy-http \ + --enable-proxy-ftp \ + --enable-deflate \ + --enable-dbd \ + --enable-exception-hook \ + --enable-dav \ + --enable-dav-fs \ + --enable-dav-lock + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/apr-util/Containerfile b/packages/apr-util/Containerfile new file mode 100644 index 0000000..9022ca6 --- /dev/null +++ b/packages/apr-util/Containerfile @@ -0,0 +1,48 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.6.3 +ENV SRC_HASH=a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5 +ENV SRC_FILE=apr-util-${VERSION}.tar.bz2 +ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/expat . / +COPY --from=stagex/gdbm . / +COPY --from=stagex/openldap . / +COPY --from=stagex/sqlite3 . / +COPY --from=stagex/openssl . / +COPY --from=stagex/postgresql . / + +RUN tar -xf ${SRC_FILE} +WORKDIR apr-util-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --prefix=/usr \ + --with-apr=/usr \ + --with-ldap \ + --with-pgsql \ + --with-mysql \ + --with-sqlite3 \ + --with-crypto \ + --with-openssl \ + --without-sqlite2 \ + --with-dbm=ndbm \ + --with-ndbm + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/apr/Containerfile b/packages/apr/Containerfile new file mode 100644 index 0000000..0a65758 --- /dev/null +++ b/packages/apr/Containerfile @@ -0,0 +1,38 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.7.4 +ENV SRC_HASH=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577 +ENV SRC_FILE=apr-${VERSION}.tar.bz2 +ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/util-linux . / +RUN tar -xf ${SRC_FILE} +WORKDIR apr-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 apr-1.6.2-dont-test-dlclose.patch + patch -p1 semtimedop-s390x.patch + ./configure \ + --prefix=/usr \ + --datadir=/usr/share \ + --enable-nonportable-atomics=no \ + --with-devrandom=/dev/urandom + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/apr/apr-1.6.2-dont-test-dlclose.patch b/packages/apr/apr-1.6.2-dont-test-dlclose.patch new file mode 100644 index 0000000..faf8b0b --- /dev/null +++ b/packages/apr/apr-1.6.2-dont-test-dlclose.patch @@ -0,0 +1,22 @@ +dlclose is a no-op on musl. Test will always fail. + +--- apr-1.6.2/test/testdso.c.old 2010-01-03 19:35:07.000000000 -0600 ++++ apr-1.6.2/test/testdso.c 2017-09-10 18:43:43.374983090 -0500 +@@ -244,7 +244,7 @@ + abts_run_test(suite, test_load_module, NULL); + abts_run_test(suite, test_dso_sym, NULL); + abts_run_test(suite, test_dso_sym_return_value, NULL); +- abts_run_test(suite, test_unload_module, NULL); ++ /* abts_run_test(suite, test_unload_module, NULL); */ + + #ifdef LIB_NAME + apr_filepath_merge(&libname, NULL, LIB_NAME, 0, p); +@@ -252,7 +252,7 @@ + abts_run_test(suite, test_load_library, NULL); + abts_run_test(suite, test_dso_sym_library, NULL); + abts_run_test(suite, test_dso_sym_return_value_library, NULL); +- abts_run_test(suite, test_unload_library, NULL); ++ /* abts_run_test(suite, test_unload_library, NULL); */ + #endif + + abts_run_test(suite, test_load_notthere, NULL); \ No newline at end of file diff --git a/packages/apr/semtimedop-s390x.patch b/packages/apr/semtimedop-s390x.patch new file mode 100644 index 0000000..f1bb9ea --- /dev/null +++ b/packages/apr/semtimedop-s390x.patch @@ -0,0 +1,16 @@ +the testsuite hangs on s390x when testing locking mechanism sysvsem. Work +around by avoid use semtimedop for s390x. + +diff --git a/locks/unix/proc_mutex.c b/locks/unix/proc_mutex.c +index 8e2187f..cad6c4a 100644 +--- a/locks/unix/proc_mutex.c ++++ b/locks/unix/proc_mutex.c +@@ -449,7 +449,7 @@ static const apr_proc_mutex_unix_lock_methods_t mutex_sysv_methods = + proc_mutex_sysv_create, + proc_mutex_sysv_acquire, + proc_mutex_sysv_tryacquire, +-#if defined(HAVE_SEMTIMEDOP) ++#if defined(HAVE_SEMTIMEDOP) && !defined(__s390x__) + proc_mutex_sysv_timedacquire, + #else + proc_mutex_spinsleep_timedacquire, \ No newline at end of file diff --git a/packages/argon2/Containerfile b/packages/argon2/Containerfile new file mode 100644 index 0000000..319466b --- /dev/null +++ b/packages/argon2/Containerfile @@ -0,0 +1,28 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=20190702 +ENV SRC_HASH=daf972a89577f8772602bf2eb38b6a3dd3d922bf5724d45e7f9589b5e830442c +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/P-H-C/phc-winner-argon2/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf $SRC_FILE +WORKDIR phc-winner-argon2-${VERSION} +RUN --network=none <<-EOF + set -eux + make -j $(nproc) OPTTARGET=none ARGON2_VERSION=${VERSION} +EOF + +FROM build as install +RUN make OPTTARGET=none LIBRARY_REL=lib DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/aspell/Containerfile b/packages/aspell/Containerfile new file mode 100644 index 0000000..46913e6 --- /dev/null +++ b/packages/aspell/Containerfile @@ -0,0 +1,38 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=0.60.8.1 +ENV SRC_HASH=d6da12b34d42d457fa604e435ad484a74b2effcd120ff40acd6bb3fb2887d21b +ENV SRC_FILE=aspell-${VERSION}.tar.gz +ENV SRC_SITE=https://ftp.gnu.org/gnu/aspell/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/perl . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +RUN tar -xf ${SRC_FILE} +WORKDIR aspell-${VERSION} +ENV SOURCE_DATE_EPOCH=1 +RUN --network=none <<-EOF + set -ex + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-dict-dir=/usr/share/aspell \ + --enable-pkgdatadir=/usr/share/aspell + make +EOF + +FROM build as install +RUN --network=none make DESTDIR="/rootfs" install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/attr/Containerfile b/packages/attr/Containerfile new file mode 100644 index 0000000..0f04f12 --- /dev/null +++ b/packages/attr/Containerfile @@ -0,0 +1,43 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.5.2 +ENV SRC_HASH=39bf67452fa41d0948c2197601053f48b3d78a029389734332a6309a680c6c87 +ENV SRC_FILE=attr-${VERSION}.tar.gz +ENV SRC_SITE=https://download.savannah.nongnu.org/releases/attr/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/perl . / + +RUN tar -xf ${SRC_FILE} +WORKDIR attr-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --prefix=/usr \ + --exec-prefix=/ \ + --sbindir=/bin \ + --bindir=/usr/bin \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --includedir=/usr/include \ + --mandir=/usr/share/man \ + --docdir=/usr/share/doc/attr \ + --datadir=/usr/share \ + --disable-nls + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/brotli/Containerfile b/packages/brotli/Containerfile new file mode 100644 index 0000000..4c540ea --- /dev/null +++ b/packages/brotli/Containerfile @@ -0,0 +1,42 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.1.0 +ENV SRC_HASH=e720a6ca29428b803f4ad165371771f5398faba397edf6778837a18599ea13ff +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/google/brotli/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/samurai . / +COPY --from=stagex/cmake . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR brotli-${VERSION} +RUN --network=none <<-EOF + set -eux + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_INSTALL_PREFIX=/usr/lib \ + -DBUILD_SHARED_LIBS=OFF + cmake --build build + + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_INSTALL_PREFIX=/usr/lib \ + -DBUILD_SHARED_LIBS=ON + cmake --build build +EOF + +FROM build as install +RUN DESTDIR=/rootfs cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index c500eff..3587d66 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -9,6 +9,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build COPY --from=stagex/busybox . / +COPY --from=stagex/linux-headers . / COPY --from=stagex/binutils . / COPY --from=stagex/cmake . / COPY --from=stagex/ninja . / @@ -17,28 +18,35 @@ COPY --from=stagex/gcc . / COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/openssl . / -COPY --from=stagex/gcc . / +COPY --from=stagex/git . / COPY --from=stagex/llvm . / COPY --from=stagex/zlib . / +COPY --from=stagex/ninja . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/samurai . / RUN tar -xf ${SRC_FILE} WORKDIR llvm-project-${VERSION}.src RUN --network=none <<-EOF set -eux cmake \ - -S clang \ - -B build \ - -G Ninja \ - -Wno-dev \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr/ \ - -DCMAKE_INSTALL_RPATH=/usr/ \ - -DCLANG_BUILT_STANDALONE=ON \ - -DCLANG_LINK_CLANG_DYLIB=ON \ - -DCLANG_PLUGIN_SUPPORT=ON \ - -DCLANG_VENDOR=stagex \ - -DLIBCLANG_BUILD_STATIC=ON - cmake --build build + -S clang \ + -B build \ + -G Ninja \ + -Wno-dev \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr/ \ + -DCLANG_BUILT_STANDALONE=ON \ + -DCLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang16 \ + -DCLANG_ENABLE_ARCMT=ON \ + -DCMAKE_INSTALL_RPATH=/usr/ \ + -DCLANG_LINK_CLANG_DYLIB=ON \ + -DCLANG_PLUGIN_SUPPORT=ON \ + -DCLANG_VENDOR=stagex \ + -DENABLE_LINKER_BUILD_ID=ON \ + -DLIBCLANG_BUILD_STATIC=ON + ninja -C build clang-tblgen + ninja -C build EOF FROM build AS install diff --git a/packages/dbus-glib/Containerfile b/packages/dbus-glib/Containerfile new file mode 100644 index 0000000..0ff10e2 --- /dev/null +++ b/packages/dbus-glib/Containerfile @@ -0,0 +1,44 @@ + +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=0.112 +ENV SRC_HASH=7d550dccdfcd286e33895501829ed971eeb65c614e73aadb4a08aeef719b143a +ENV SRC_FILE=dbus-glib-${VERSION}.tar.gz +ENV SRC_SITE=https://dbus.freedesktop.org/releases/dbus-glib/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/glib . / +COPY --from=stagex/gettext . / +COPY --from=stagex/expat . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/dbus . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR dbus-glib-${VERSION} +RUN ls -la . +RUN --network=none <<-EOF + set -eux \ + CFLAGS="-flto=auto" \ + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-static=no \ + --enable-bash-completion=no + make -j "$(nproc)" +EOF + +FROM build AS install +RUN DESTDIR=/rootfs cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/dbus/Containerfile b/packages/dbus/Containerfile new file mode 100644 index 0000000..c1af810 --- /dev/null +++ b/packages/dbus/Containerfile @@ -0,0 +1,49 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=1.14.10 +ENV SRC_HASH=ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f +ENV SRC_FILE=dbus-${VERSION}.tar.xz +ENV SRC_SITE=https://dbus.freedesktop.org/releases/dbus/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/glib . / +COPY --from=stagex/gettext . / +COPY --from=stagex/expat . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/meson . / +COPY --from=stagex/busybox . / +COPY --from=stagex/libsm . / +COPY --from=stagex/binutils . / +COPY --from=stagex/m4 . / +COPY --from=stagex/xmlto . / +COPY --from=stagex/make . / +COPY --from=stagex/automake . / +COPY --from=stagex/autoconf . / +RUN tar -xf ${SRC_FILE} +WORKDIR dbus-${VERSION} +RUN ls -la . +RUN --network=none <<-EOF + set -eux + ./autogen.sh + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --with-system-pid-file=/run/dbus/dbus.pid \ + --enable-checks \ + --disable-asserts + make -j "$(nproc)" +EOF + +FROM build AS install +RUN DESTDIR=/rootfs cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/doxygen/Containerfile b/packages/doxygen/Containerfile new file mode 100644 index 0000000..2a9f82f --- /dev/null +++ b/packages/doxygen/Containerfile @@ -0,0 +1,48 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.10.0 +ENV SRC_HASH=dd7c556b4d96ca5e682534bc1f1a78a5cfabce0c425b14c1b8549802686a4442 +ENV SRC_FILE=doxygen-${VERSION}.src.tar.gz +ENV SRC_SITE=https://doxygen.nl/files/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/flex . / +COPY --from=stagex/bison . / +COPY --from=stagex/coreutils . / +COPY --from=stagex/perl . / +COPY --from=stagex/python . / +COPY --from=stagex/cmake . / +COPY --from=stagex/samurai . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/perl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/m4 . / +RUN tar -xf ${SRC_FILE} +WORKDIR doxygen-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 remove-usage-of-fstat64.patch + cmake -B build -G Ninja \ + -DGIT_EXECUTABLE=/bin/false \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=MinSizeRel \ + -Dbuild_xmlparser=ON + cmake --build build +EOF + +FROM build as install +RUN DESTDIR=/rootfs cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/doxygen/remove-usage-of-fstat64.patch b/packages/doxygen/remove-usage-of-fstat64.patch new file mode 100644 index 0000000..4ec3cd2 --- /dev/null +++ b/packages/doxygen/remove-usage-of-fstat64.patch @@ -0,0 +1,23 @@ +--- a/deps/spdlog/include/spdlog/details/os-inl.h ++++ b/deps/spdlog/include/spdlog/details/os-inl.h +@@ -236,20 +236,11 @@ + # else + int fd = ::fileno(f); + # endif +-// 64 bits(but not in osx or cygwin, where fstat64 is deprecated) +-# if (defined(__linux__) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64)) +- struct stat64 st; +- if (::fstat64(fd, &st) == 0) +- { +- return static_cast(st.st_size); +- } +-# else // other unix or linux 32 bits or cygwin + struct stat st; + if (::fstat(fd, &st) == 0) + { + return static_cast(st.st_size); + } +-# endif + #endif + throw_spdlog_ex("Failed getting file size from fd", errno); + return 0; // will not be reached. \ No newline at end of file diff --git a/packages/enchant2/Containerfile b/packages/enchant2/Containerfile new file mode 100644 index 0000000..60873d9 --- /dev/null +++ b/packages/enchant2/Containerfile @@ -0,0 +1,51 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.6.9 +ENV SRC_HASH=d9a5a10dc9b38a43b3a0fa22c76ed6ebb7e09eb535aff62954afcdbd40efff6b +ENV SRC_FILE=enchant-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/AbiWord/enchant/releases/download/v${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/perl . / +COPY --from=stagex/file . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/glib . / +COPY --from=stagex/groff . / +COPY --from=stagex/hunspell . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/gettext . / +COPY --from=stagex/aspell . / +COPY --from=stagex/file . / +COPY --from=stagex/nuspell . / +RUN tar -xf ${SRC_FILE} +WORKDIR enchant-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --disable-static \ + --with-aspell \ + --with-hunspell \ + --with-nuspell + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/expat/Containerfile b/packages/expat/Containerfile new file mode 100644 index 0000000..9ad6408 --- /dev/null +++ b/packages/expat/Containerfile @@ -0,0 +1,35 @@ + +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.6.2 +ENV SRC_HASH=d4cf38d26e21a56654ffe4acd9cd5481164619626802328506a2869afab29ab3 +ENV SRC_FILE=expat-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/libexpat/libexpat/releases/download/R_2_6_2/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf $SRC_FILE +WORKDIR expat-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/fmt/Containerfile b/packages/fmt/Containerfile new file mode 100644 index 0000000..e4cd9a2 --- /dev/null +++ b/packages/fmt/Containerfile @@ -0,0 +1,45 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=10.2.1 +ENV SRC_HASH=1250e4cc58bf06ee631567523f48848dc4596133e163f02615c97f78bab6c811 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/fmtlib/fmt/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +COPY --from=stagex/postgresql . / +COPY --from=stagex/cmake . / +COPY --from=stagex/samurai . / +COPY --from=stagex/python . / +COPY --from=stagex/doxygen . / +RUN tar -xf ${SRC_FILE} +WORKDIR fmt-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 fix-handling-of-static-separator.patch + # Build in-tree so the prebuilt docs get installed correctly. + # See https://github.com/fmtlib/fmt/issues/2837 + cmake -B . -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=None \ + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + cmake --build . +EOF + +FROM build as install +RUN DESTDIR=/rootfs cmake --install . +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/fmt/fix-handling-of-static-separator.patch b/packages/fmt/fix-handling-of-static-separator.patch new file mode 100644 index 0000000..4a44c8c --- /dev/null +++ b/packages/fmt/fix-handling-of-static-separator.patch @@ -0,0 +1,31 @@ +From 44c3fe1ebb466ab5c296e1a1a6991c7c7b51b72e Mon Sep 17 00:00:00 2001 +From: Victor Zverovich +Date: Fri, 9 Feb 2024 15:58:56 -0800 +Subject: [PATCH] Fix handling of static separator + +--- + include/fmt/format-inl.h | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +--- a/include/fmt/format-inl.h ++++ b/include/fmt/format-inl.h +@@ -114,7 +114,11 @@ template FMT_FUNC Char d + + FMT_FUNC auto write_loc(appender out, loc_value value, + const format_specs<>& specs, locale_ref loc) -> bool { +-#ifndef FMT_STATIC_THOUSANDS_SEPARATOR ++#ifdef FMT_STATIC_THOUSANDS_SEPARATOR ++ value.visit(loc_writer<>{ ++ out, specs, std::string(1, FMT_STATIC_THOUSANDS_SEPARATOR), "\3", "."}); ++ return true; ++#else + auto locale = loc.get(); + // We cannot use the num_put facet because it may produce output in + // a wrong encoding. +@@ -123,7 +127,6 @@ FMT_FUNC auto write_loc(appender out, lo + return std::use_facet(locale).put(out, value, specs); + return facet(locale).put(out, value, specs); + #endif +- return false; + } + } // namespace detail diff --git a/packages/freetds/Containerfile b/packages/freetds/Containerfile new file mode 100644 index 0000000..158f3b8 --- /dev/null +++ b/packages/freetds/Containerfile @@ -0,0 +1,48 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=1.4.22 +ENV SRC_HASH=a9a7f24f0a7a871617e76e8cc6e6556ae788042f1c006195665505499b2334b1 +ENV SRC_FILE=freetds-${VERSION}.tar.bz2 +ENV SRC_SITE=https://www.freetds.org/files/stable/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/libtool . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/readline . / +COPY --from=stagex/unixodbc . / +COPY --from=stagex/openssl . / +COPY --from=stagex/perl . / +RUN tar -xf ${SRC_FILE} +WORKDIR freetds-${VERSION} +RUN --network=none <<-EOF + set -ex + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-msdblib \ + --with-openssl=/usr \ + --enable-odbc \ + --with-unixodbc=/usr + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none <<-EOF + set -eu + make DESTDIR="/rootfs" install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/gdbm/Containerfile b/packages/gdbm/Containerfile new file mode 100644 index 0000000..10ec402 --- /dev/null +++ b/packages/gdbm/Containerfile @@ -0,0 +1,40 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.23 +ENV SRC_HASH=74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd +ENV SRC_FILE=gdbm-${VERSION}.tar.gz +ENV SRC_SITE=https://ftp.gnu.org/gnu/gdbm/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR gdbm-${VERSION} +ENV SOURCE_DATE_EPOCH=1 +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --enable-libgdbm-compat \ + --disable-largefile \ + --disable-dependency-tracking \ + --enable-fast-install + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/glib/Containerfile b/packages/glib/Containerfile new file mode 100644 index 0000000..fc8f17d --- /dev/null +++ b/packages/glib/Containerfile @@ -0,0 +1,71 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.80.0 +ENV SRC_HASH=8228a92f92a412160b139ae68b6345bd28f24434a7b5af150ebe21ff587a561d +ENV SRC_FILE=glib-${VERSION}.tar.xz +ENV SRC_SITE=https://download.gnome.org/sources/glib/2.80/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/python . / +COPY --from=stagex/zlib . / +COPY --from=stagex/bzip2 . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/ncurses . / +COPY --from=stagex/meson . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/python . / +COPY --from=stagex/bison . / +COPY --from=stagex/flex . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/libxslt . / +COPY --from=stagex/libffi . / +COPY --from=stagex/xz . / +COPY --from=stagex/expat . / +COPY --from=stagex/rhash . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/util-linux . / +COPY --from=stagex/libxslt . / +COPY --from=stagex/gettext . / +COPY --from=stagex/ninja . / +RUN tar -xf ${SRC_FILE} +WORKDIR glib-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + # set -eux \ + patch -p1 alwaysbash.patch + patch -p1 deprecated-no-warn.patch + patch -p1 fix-tests.patch + patch -p1 flaky-tests.patch + patch -p1 tests-machine-id.patch + export CFLAGS="-ffat-lto-objects -O2" + export CXXFLAGS="-O2" + export CPPFLAGS="-O2" + meson setup \ + --default-library=shared \ + --prefix=/usr \ + -Dman-pages=disabled \ + -Dlibmount=disabled \ + -Dtests=false \ + -Dintrospection=disabled \ + -Dnls=disabled \ + . output + meson compile -C output + meson install --no-rebuild -C output +EOF + +FROM build as install +RUN DESTDIR=/rootfs meson install --no-rebuild -C output +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/glib/alwaysbash.patch b/packages/glib/alwaysbash.patch new file mode 100644 index 0000000..8351dd8 --- /dev/null +++ b/packages/glib/alwaysbash.patch @@ -0,0 +1,16 @@ +the completions only install if bash is detected. +instead of adding bash to makedeps, just always install them +-- +diff --git a/gio/meson.build b/gio/meson.build +index 462606f..bb3e19d 100644 +--- a/gio/meson.build ++++ b/gio/meson.build +@@ -805,7 +805,7 @@ if host_system == 'windows' + internal_deps += [ giowin32_lib ] + endif + +-if have_bash ++if true + bash_comp_inst_dir = '' + if bash_comp_dep.found() + bash_comp_dir_override = bash_comp_dep.version().version_compare('>= 2.10') ? ['datadir', get_option('datadir')] : ['prefix', get_option('prefix')] diff --git a/packages/glib/deprecated-no-warn.patch b/packages/glib/deprecated-no-warn.patch new file mode 100644 index 0000000..4322406 --- /dev/null +++ b/packages/glib/deprecated-no-warn.patch @@ -0,0 +1,22 @@ +diff -Naur a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c +--- a/gio/glib-compile-schemas.c 2018-09-21 15:23:52.000000000 +0100 ++++ b/gio/glib-compile-schemas.c 2019-02-10 14:37:30.034879344 +0000 +@@ -1233,19 +1233,6 @@ + return; + } + +- if (path && (g_str_has_prefix (path, "/apps/") || +- g_str_has_prefix (path, "/desktop/") || +- g_str_has_prefix (path, "/system/"))) +- { +- gchar *message = NULL; +- message = g_strdup_printf (_("Warning: Schema “%s” has path “%s”. " +- "Paths starting with " +- "“/apps/”, “/desktop/” or “/system/” are deprecated."), +- id, path); +- g_printerr ("%s\n", message); +- g_free (message); +- } +- + state->schema_state = schema_state_new (path, gettext_domain, + extends, extends_name, list_of); \ No newline at end of file diff --git a/packages/glib/fix-tests.patch b/packages/glib/fix-tests.patch new file mode 100644 index 0000000..2230732 --- /dev/null +++ b/packages/glib/fix-tests.patch @@ -0,0 +1,456 @@ +From 01304c97693a7c789bde9c543979872fc63c387c Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 3 Apr 2024 21:11:24 +0200 +Subject: [PATCH 1/3] tests: skip test that requires shared-mime-info when its + missing + +shared-mime-info required glib to build and will not be there during +bootstrap. Skip the test if it is missing. + +ref: https://gitlab.gnome.org/GNOME/glib/-/issues/3317 +Signed-off-by: Natanael Copa +--- + gio/tests/contenttype.c | 47 +++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 45 insertions(+), 2 deletions(-) + +diff --git a/gio/tests/contenttype.c b/gio/tests/contenttype.c +index 8784374f2..b442d5352 100644 +--- a/gio/tests/contenttype.c ++++ b/gio/tests/contenttype.c +@@ -13,6 +13,20 @@ + __s1, " == ", __s2); \ + } while (0) + ++static gboolean ++skip_missing_shared_mime_info (void) ++{ ++ const gchar *path = g_find_program_in_path("update-mime-database"); ++ ++ if (path == NULL) ++ { ++ g_test_skip ("shared-mime-info is required to run this test"); ++ return TRUE; ++ } ++ g_free(path); ++ return FALSE; ++} ++ + static void + test_guess (void) + { +@@ -26,6 +40,9 @@ test_guess (void) + "Name=appinfo-test\n" + "Exec=./appinfo-test --option\n"; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + #ifdef G_OS_WIN32 + existing_directory = (gchar *) g_getenv ("SYSTEMROOT"); + +@@ -150,6 +167,9 @@ test_subtype (void) + gchar *plain; + gchar *xml; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + plain = g_content_type_from_mime_type ("text/plain"); + xml = g_content_type_from_mime_type ("application/xml"); + +@@ -175,6 +195,9 @@ test_list (void) + gchar *plain; + gchar *xml; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + #ifdef __APPLE__ + g_test_skip ("The OSX backend does not implement g_content_types_get_registered()"); + return; +@@ -202,6 +225,9 @@ test_executable (void) + { + gchar *type; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + #ifdef G_OS_WIN32 + type = g_content_type_from_mime_type ("application/vnd.microsoft.portable-executable"); + /* FIXME: the MIME is not in the default `MIME\Database\Content Type` registry. +@@ -228,6 +254,9 @@ test_description (void) + gchar *type; + gchar *desc; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + type = g_content_type_from_mime_type ("text/plain"); + desc = g_content_type_get_description (type); + g_assert_nonnull (desc); +@@ -242,6 +271,9 @@ test_icon (void) + gchar *type; + GIcon *icon; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + type = g_content_type_from_mime_type ("text/plain"); + icon = g_content_type_get_icon (type); + g_assert_true (G_IS_ICON (icon)); +@@ -290,6 +322,9 @@ test_symbolic_icon (void) + gchar *type; + GIcon *icon; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + type = g_content_type_from_mime_type ("text/plain"); + icon = g_content_type_get_symbolic_icon (type); + g_assert_true (G_IS_ICON (icon)); +@@ -344,6 +379,9 @@ test_tree (void) + gchar **types; + gsize i; + ++ if (skip_missing_shared_mime_info ()) ++ return; ++ + #if defined(__APPLE__) || defined(G_OS_WIN32) + g_test_skip ("The OSX & Windows backends do not implement g_content_type_guess_for_tree()"); + return; +@@ -437,8 +475,13 @@ test_guess_svg_from_data (void) + \n"; + + gboolean uncertain = TRUE; +- gchar *res = g_content_type_guess (NULL, (guchar *)svgfilecontent, +- sizeof (svgfilecontent) - 1, &uncertain); ++ gchar *res; ++ ++ if (skip_missing_shared_mime_info ()) ++ return; ++ ++ res = g_content_type_guess (NULL, (guchar *)svgfilecontent, ++ sizeof (svgfilecontent) - 1, &uncertain); + #ifdef __APPLE__ + g_assert_cmpstr (res, ==, "public.svg-image"); + #elif defined(G_OS_WIN32) +-- +2.44.0 + + +From a77fdc4cae8deb7ef9f47e81f81a8db139434093 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Thu, 4 Apr 2024 17:08:46 +0200 +Subject: [PATCH 2/3] tests: skip tests that requires dbus-daemon when its + missing + +dbus may not be built yet during bootstrap, because it needs glib to +build. + +Ref: https://gitlab.gnome.org/GNOME/glib/-/issues/3317 +Signed-off-by: Natanael Copa +--- + gio/tests/appinfo.c | 22 ++++++++++++++++++++++ + gio/tests/desktop-app-info.c | 19 +++++++++++++++++++ + 2 files changed, 41 insertions(+) + +diff --git a/gio/tests/appinfo.c b/gio/tests/appinfo.c +index d9c53c853..81bc48191 100644 +--- a/gio/tests/appinfo.c ++++ b/gio/tests/appinfo.c +@@ -49,6 +49,19 @@ test_launch_for_app_info (GAppInfo *appinfo) + g_free (uri); + } + ++static gboolean ++skip_missing_dbus_daemon (void) ++{ ++ const gchar *path = g_find_program_in_path ("dbus-daemon"); ++ if (path == NULL) ++ { ++ g_test_skip ("dbus-daemon is required to run this test"); ++ return TRUE; ++ } ++ g_free (path); ++ return FALSE; ++} ++ + static void + test_launch (void) + { +@@ -56,6 +69,9 @@ test_launch (void) + GAppInfo *appinfo; + const gchar *path; + ++ if (skip_missing_dbus_daemon ()) ++ return; ++ + /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ + bus = g_test_dbus_new (G_TEST_DBUS_NONE); + g_test_dbus_up (bus); +@@ -96,6 +112,9 @@ test_launch_no_app_id (void) + gchar *exec_line_variants[2]; + gsize i; + ++ if (skip_missing_dbus_daemon ()) ++ return; ++ + exec_line_variants[0] = g_strdup_printf ( + "Exec=%s/appinfo-test --option %%U %%i --name %%c --filename %%k %%m %%%%", + g_test_get_dir (G_TEST_BUILT)); +@@ -356,6 +375,9 @@ test_launch_context_signals (void) + gboolean success; + gchar *cmdline; + ++ if (skip_missing_dbus_daemon ()) ++ return; ++ + /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ + bus = g_test_dbus_new (G_TEST_DBUS_NONE); + g_test_dbus_up (bus); +diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c +index e82e2dd31..ec65b7618 100644 +--- a/gio/tests/desktop-app-info.c ++++ b/gio/tests/desktop-app-info.c +@@ -593,6 +593,19 @@ wait_for_file (const gchar *want_this, + unlink (or_this); + } + ++static gboolean ++skip_missing_dbus_daemon (void) ++{ ++ const gchar *path = g_find_program_in_path ("dbus-daemon"); ++ if (path == NULL) ++ { ++ g_test_skip ("dbus-daemon is required to run this test"); ++ return TRUE; ++ } ++ g_free (path); ++ return FALSE; ++} ++ + static void + test_actions (void) + { +@@ -606,6 +619,9 @@ test_actions (void) + gchar *tweak_path; + gchar *twiddle_path; + ++ if (skip_missing_dbus_daemon ()) ++ return; ++ + /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ + bus = g_test_dbus_new (G_TEST_DBUS_NONE); + g_test_dbus_up (bus); +@@ -1833,6 +1849,9 @@ test_launch_fail_dbus (void) + GAsyncResult *result = NULL; + GError *error = NULL; + ++ if (skip_missing_dbus_daemon ()) ++ return; ++ + /* Set up a test session bus to ensure that launching the app happens using + * D-Bus rather than spawning. */ + bus = g_test_dbus_new (G_TEST_DBUS_NONE); +-- +2.44.0 + + +From 0ec9c399c7d2755147e409d065690b2ff53fda40 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 3 Apr 2024 22:10:18 +0200 +Subject: [PATCH 3/3] tests: find update-desktop-database + +Disable tests that require update-desktop-database when it is missing. + +It requires glib to build so it will be missing when bootstrapping glib. + +Refactor the ifdef for Windows and MacOS while at it and reduce number +of ifdefs. + +Ref: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3658 +Signed-off-by: Natanael Copa +--- + gio/tests/desktop-app-info.c | 35 +++++++++++++++++++++++++++++ + gio/tests/file.c | 43 ++++++++++++++++++++++-------------- + 2 files changed, 62 insertions(+), 16 deletions(-) + +diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c +index ec65b7618..e492b1346 100644 +--- a/gio/tests/desktop-app-info.c ++++ b/gio/tests/desktop-app-info.c +@@ -125,6 +125,20 @@ create_app_info (const char *name) + return info; + } + ++static gboolean ++skip_missing_update_desktop_database (void) ++{ ++ const gchar *path = g_find_program_in_path ("update-desktop-database"); ++ ++ if (path == NULL) ++ { ++ g_test_skip ("update-desktop-database is required to run this test"); ++ return TRUE; ++ } ++ g_free (path); ++ return FALSE; ++} ++ + static void + test_delete (void) + { +@@ -134,6 +148,9 @@ test_delete (void) + char *filename; + gboolean res; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + info = create_app_info ("Blah"); + + id = g_app_info_get_id (info); +@@ -177,6 +194,9 @@ test_default (void) + GList *list; + GError *error = NULL; + ++if (skip_missing_update_desktop_database ()) ++ return; ++ + info1 = create_app_info ("Blah1"); + info2 = create_app_info ("Blah2"); + info3 = create_app_info ("Blah3"); +@@ -316,6 +336,9 @@ test_default_async (void) + GList *list; + GError *error = NULL; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + data.loop = g_main_loop_new (NULL, TRUE); + + info1 = create_app_info ("Blah1"); +@@ -418,6 +441,9 @@ test_fallback (void) + GError *error = NULL; + gint old_length; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + info1 = create_app_info ("Test1"); + info2 = create_app_info ("Test2"); + +@@ -492,6 +518,9 @@ test_last_used (void) + GAppInfo *info1, *info2, *default_app; + GError *error = NULL; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + info1 = create_app_info ("Test1"); + info2 = create_app_info ("Test2"); + +@@ -1222,6 +1251,9 @@ test_default_uri_handler (void) + gchar *file_path = NULL; + GAppInfo *info; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + info = create_app_info_toucher ("Touch Handled", "handled", + "x-scheme-handler/glib-touch", + &file_path); +@@ -1298,6 +1330,9 @@ test_default_uri_handler_async (void) + gboolean called = FALSE; + gint64 start_time, touch_time; + ++ if (skip_missing_update_desktop_database ()) ++ return; ++ + loop = g_main_loop_new (NULL, FALSE); + info = create_app_info_toucher ("Touch Handled", "handled-async", + "x-scheme-handler/glib-async-touch", +diff --git a/gio/tests/file.c b/gio/tests/file.c +index 72296d008..dba5fe66c 100644 +--- a/gio/tests/file.c ++++ b/gio/tests/file.c +@@ -3784,6 +3784,25 @@ create_command_line_app_info (const char *name, + return g_steal_pointer (&info); + } + ++static gboolean ++skip_missing_update_desktop_database (void) ++{ ++#if defined(G_OS_WIN32) || defined(__APPLE__) ++ g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); ++ return TRUE; ++#else ++ const gchar *path = g_find_program_in_path ("update-desktop-database"); ++ ++ if (path == NULL) ++ { ++ g_test_skip ("update-desktop-database is required to run this test"); ++ return TRUE; ++ } ++ g_free (path); ++ return FALSE; ++#endif ++} ++ + static void + test_query_default_handler_uri (void) + { +@@ -3793,10 +3812,8 @@ test_query_default_handler_uri (void) + GFile *file; + GFile *invalid_file; + +-#if defined(G_OS_WIN32) || defined(__APPLE__) +- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); +- return; +-#endif ++ if (skip_missing_update_desktop_database ()) ++ return; + + info = create_command_line_app_info ("Gio File Handler", "true", + "x-scheme-handler/gio-file"); +@@ -3878,10 +3895,8 @@ test_query_default_handler_file (void) + const char buffer[] = "Text file!\n"; + const guint8 binary_buffer[] = "\xde\xad\xbe\xff"; + +-#if defined(G_OS_WIN32) || defined(__APPLE__) +- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); +- return; +-#endif ++ if (skip_missing_update_desktop_database ()) ++ return; + + text_file = g_file_new_tmp ("query-default-handler-XXXXXX", &iostream, &error); + g_assert_no_error (error); +@@ -3974,10 +3989,8 @@ test_query_default_handler_file_async (void) + const guint8 binary_buffer[] = "\xde\xad\xbe\xff"; + GError *error = NULL; + +-#if defined(G_OS_WIN32) || defined(__APPLE__) +- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); +- return; +-#endif ++ if (skip_missing_update_desktop_database ()) ++ return; + + data.loop = g_main_loop_new (NULL, FALSE); + +@@ -4064,10 +4077,8 @@ test_query_default_handler_uri_async (void) + GFile *file; + GFile *invalid_file; + +-#if defined(G_OS_WIN32) || defined(__APPLE__) +- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); +- return; +-#endif ++ if (skip_missing_update_desktop_database ()) ++ return; + + info = create_command_line_app_info ("Gio File Handler", "true", + "x-scheme-handler/gio-file"); +-- +2.44.0 \ No newline at end of file diff --git a/packages/glib/flaky-tests.patch b/packages/glib/flaky-tests.patch new file mode 100644 index 0000000..3ce30c6 --- /dev/null +++ b/packages/glib/flaky-tests.patch @@ -0,0 +1,83 @@ +https://gitlab.gnome.org/GNOME/glib/-/issues/3318 +https://gitlab.gnome.org/GNOME/glib/-/issues/3320 + +diff --git a/glib/tests/meson.build b/glib/tests/meson.build +index 85f40d2e1..059a786d3 100644 +--- a/glib/tests/meson.build ++++ b/glib/tests/meson.build +@@ -54,6 +54,7 @@ glib_tests = { + 'gwakeup' : { + 'source' : ['gwakeuptest.c', '../gwakeup.c'], + 'install' : false, ++ 'can_fail': host_machine.cpu_family() == 's390x', + }, + 'hash' : {}, + 'hmac' : {}, +@@ -226,6 +227,7 @@ if glib_conf.has('HAVE_EVENTFD') + 'source' : ['gwakeuptest.c', '../gwakeup.c'], + 'c_args' : ['-DTEST_EVENTFD_FALLBACK'], + 'install' : false, ++ 'can_fail': host_machine.cpu_family() == 's390x', + }, + } + endif +diff --git a/gobject/tests/meson.build b/gobject/tests/meson.build +index a163e5f91..12c449519 100644 +--- a/gobject/tests/meson.build ++++ b/gobject/tests/meson.build +@@ -78,7 +78,7 @@ gobject_tests = { + 'references' : {}, + 'basic-signals' : {}, + 'singleton' : {}, +- 'threadtests' : {}, ++ 'threadtests' : { 'can_fail': 'aarch64' in host_machine.cpu_family() or 'riscv' in host_machine.cpu_family() }, + 'dynamictests' : {}, + 'binding' : {}, + 'bindinggroup' : {}, +From ad2925ef361a7c889ff696a1ba9e677accaecd08 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Thu, 4 Apr 2024 10:15:07 +0200 +Subject: [PATCH] tests: increase timeout on slow architectures + +Prevent tests to timeout on architectures that are slow. + +Fixes https://gitlab.gnome.org/GNOME/glib/-/issues/3319 + +Signed-off-by: Natanael Copa +--- + meson.build | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/meson.build b/meson.build +index f0c5e070b..4c6c87766 100644 +--- a/meson.build ++++ b/meson.build +@@ -182,6 +182,12 @@ test_protocol = 'tap' + test_timeout = 30 + test_timeout_slow = 90 + ++# give more time on slow architectures ++if 'riscv' in host_machine.cpu_family() ++ test_timeout = test_timeout * 4 ++ test_timeout_slow = test_timeout_slow * 4 ++endif ++ + add_test_setup('default', + is_default: true, + exclude_suites: ['flaky', 'failing'], +-- +2.44.0 + +diff --git a/glib/tests/meson.build b/glib/tests/meson.build +index 85f40d2e1..f2ee59678 100644 +--- a/glib/tests/meson.build ++++ b/glib/tests/meson.build +@@ -113,6 +113,8 @@ glib_tests = { + 'regex' : { + 'dependencies' : [pcre2], + 'c_args' : use_pcre2_static_flag ? ['-DPCRE2_STATIC'] : [], ++ # https://gitlab.gnome.org/GNOME/glib/-/issues/3321 ++ 'can_fail': host_machine.cpu_family() == 'riscv64', + }, + 'relation' : {}, + 'rwlock' : {}, diff --git a/packages/glib/tests-machine-id.patch b/packages/glib/tests-machine-id.patch new file mode 100644 index 0000000..fdbc536 --- /dev/null +++ b/packages/glib/tests-machine-id.patch @@ -0,0 +1,41 @@ +From 5cf08a9a1041a9dc9975371fb62f8f22c3be76c4 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 3 Apr 2024 21:25:04 +0200 +Subject: [PATCH 2/3] tests: skip gio tests which fails with missing machine-id + +Signed-off-by: Natanael Copa +--- + gio/tests/meson.build | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/gio/tests/meson.build b/gio/tests/meson.build +index f04ff43ff..71ec09750 100644 +--- a/gio/tests/meson.build ++++ b/gio/tests/meson.build +@@ -46,6 +46,8 @@ if glib_build_shared + subdir('modules') + endif + ++have_machine_id = import('fs').is_file('/etc/machine-id') ++ + # Test programs buildable on all platforms + gio_tests = { + 'application-command-line': {}, +@@ -98,7 +100,7 @@ gio_tests = { + 'install_rpath' : installed_tests_execdir, + # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 + # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148 +- 'can_fail' : host_system in ['darwin', 'windows', 'gnu'], ++ 'can_fail' : host_system in ['darwin', 'windows', 'gnu'] or not have_machine_id, + }, + 'inet-address' : {}, + 'io-stream' : {}, +@@ -147,7 +149,7 @@ gio_tests = { + 'extra_programs': host_system != 'windows' ? ['dbus-launch'] : [], + # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 + # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148 +- 'can_fail' : host_system in ['darwin', 'gnu'], ++ 'can_fail' : host_system in ['darwin', 'gnu'] or not have_machine_id, + }, + 'win32-appinfo' : {}, + } diff --git a/packages/groff/Containerfile b/packages/groff/Containerfile new file mode 100644 index 0000000..c14ccd7 --- /dev/null +++ b/packages/groff/Containerfile @@ -0,0 +1,37 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.23.0 +ENV SRC_HASH=6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13 +ENV SRC_FILE=groff-${VERSION}.tar.gz +ENV SRC_SITE=https://ftp.gnu.org/gnu/groff/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/m4 . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf $SRC_FILE +WORKDIR groff-${VERSION} +ENV SOURCE_DATE_EPOCH=1 +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --without-x \ + --disable-rpath + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/hunspell/Containerfile b/packages/hunspell/Containerfile new file mode 100644 index 0000000..12759bc --- /dev/null +++ b/packages/hunspell/Containerfile @@ -0,0 +1,38 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.7.2 +ENV SRC_HASH=11ddfa39afe28c28539fe65fc4f1592d410c1e9b6dd7d8a91ca25d85e9ec65b8 +ENV SRC_FILE=hunspell-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/hunspell/hunspell/releases/download/v${VERSION}/${SRC_FILE} +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR hunspell-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --with-ui \ + --with-readline \ + --disable-static \ + --without-included-gettext + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/krb5/Containerfile b/packages/krb5/Containerfile new file mode 100644 index 0000000..ea58b2e --- /dev/null +++ b/packages/krb5/Containerfile @@ -0,0 +1,62 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.21.2 +ENV SRC_HASH=9560941a9d843c0243a71b17a7ac6fe31c7cebb5bce3983db79e52ae7e850491 +ENV SRC_FILE=krb5-${VERSION}.tar.gz +ENV SRC_SITE=https://kerberos.org/dist/krb5/1.21/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/bash . / +COPY --from=stagex/m4 . / +COPY --from=stagex/curl . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/util-linux . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/e2fsprogs . / +COPY --from=stagex/python . / +COPY --from=stagex/openldap . / +COPY --from=stagex/openssl . / +COPY --from=stagex/groff . / +COPY --from=stagex/libevent . / +COPY --from=stagex/bison . / +COPY --from=stagex/libtool . / +COPY --from=stagex/libverto . / +COPY --from=stagex/pkgconf . / +RUN tar -xf $SRC_FILE +WORKDIR krb5-${VERSION}/src +RUN --network=none <<-EOF + set -eux + ./configure \ + CPPFLAGS="-fPIC -I/usr/include/et" \ + WARN_CFLAGS= \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --localstatedir=/var/lib \ + --enable-shared \ + --disable-nls \ + --disable-static \ + --disable-rpath \ + --with-system-et \ + --with-system-ss \ + --with-system-verto \ + --without-tcl \ + --with-ldap + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/libaio/Containerfile b/packages/libaio/Containerfile new file mode 100644 index 0000000..f15148d --- /dev/null +++ b/packages/libaio/Containerfile @@ -0,0 +1,37 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=0.3.113 +ENV SRC_HASH=716c7059703247344eb066b54ecbc3ca2134f0103307192e6c2b7dab5f9528ab +ENV SRC_FILE=libaio-libaio-${VERSION}.tar.gz +ENV SRC_SITE=https://pagure.io/libaio/archive/libaio-${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/linux-headers . / + +RUN tar -xf ${SRC_FILE} +WORKDIR libaio-libaio-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 libaio-cppflags.patch + patch -p1 libaio-errno.patch + patch -p1 test-poll.patch + patch -p1 test.patch + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/libaio/libaio-cppflags.patch b/packages/libaio/libaio-cppflags.patch new file mode 100644 index 0000000..9579327 --- /dev/null +++ b/packages/libaio/libaio-cppflags.patch @@ -0,0 +1,16 @@ +respect env CPPFLAGS + +--- a/src/Makefile ++++ b/src/Makefile +@@ -2,8 +2,9 @@ prefix=/usr + includedir=$(prefix)/include + libdir=$(prefix)/lib + +-CFLAGS ?= -g -fomit-frame-pointer -O2 +-CFLAGS += -Wall -I. -fPIC ++CFLAGS ?= -fomit-frame-pointer -O2 ++CFLAGS += -I. -fPIC ++CFLAGS += $(CPPFLAGS) + SO_CFLAGS=-shared $(CFLAGS) + L_CFLAGS=$(CFLAGS) + LINK_FLAGS= diff --git a/packages/libaio/libaio-errno.patch b/packages/libaio/libaio-errno.patch new file mode 100644 index 0000000..7ead880 --- /dev/null +++ b/packages/libaio/libaio-errno.patch @@ -0,0 +1,11 @@ +--- libaio-0.3.112.orig/src/compat-0_1.c ++++ libaio-0.3.112/src/compat-0_1.c +@@ -19,7 +19,7 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + #include +-#include ++#include + + #include "libaio.h" + #include "vsys_def.h" \ No newline at end of file diff --git a/packages/libaio/test-poll.patch b/packages/libaio/test-poll.patch new file mode 100644 index 0000000..b851926 --- /dev/null +++ b/packages/libaio/test-poll.patch @@ -0,0 +1,11 @@ +diff -Nurp a/harness/cases/22.t b/harness/cases/22.t +--- a/harness/cases/22.t 2018-10-22 20:59:34.000000000 +0100 ++++ b/harness/cases/22.t 2022-02-26 09:48:59.421311473 +0000 +@@ -11,7 +11,7 @@ + #include + #include + #include +-#include ++#include + #include + #include diff --git a/packages/libaio/test.patch b/packages/libaio/test.patch new file mode 100644 index 0000000..0822723 --- /dev/null +++ b/packages/libaio/test.patch @@ -0,0 +1,55 @@ +From: Lee Duncan +Date: Thu, 11 Feb 2021 11:34:42 -0800 +Subject: [PATCH] Fix test issue with gcc-11 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Test 3.t exercises io_submit() with invalid addresses, +and one test attempted to pass in "-1" as an invalid +pointer. But gcc-11 realizes you cannot take an offset +from an invalid pointer, making it impossible to +compile or run this test: + +> sh# make CC=gcc-11 partcheck +> make[1]: Entering directory '/alt/public_software/libaio/src' +> make[1]: Nothing to be done for 'all'. +> make[1]: Leaving directory '/alt/public_software/libaio/src' +> make[1]: Entering directory '/alt/public_software/libaio/harness' +> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/2.t\" -o cases/2.p main.c ../src/libaio.a -lpthread +> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/3.t\" -o cases/3.p main.c ../src/libaio.a -lpthread +> In file included from main.c:24: +> cases/3.t: In function ‘test_main’: +> cases/3.t:18:19: error: ‘attempt_io_submit’ accessing 8 bytes in a region of size 0 [-Werror=stringop-overflow=] +> 18 | status |= attempt_io_submit( io_ctx, 1, (void *)-1, -EFAULT); +> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +> cases/3.t:18:19: note: referencing argument 3 of type ‘struct iocb **’ +> In file included from cases/3.t:5, +> from main.c:24: +> cases/aio_setup.h:15:5: note: in a call to function ‘attempt_io_submit’ +> 15 | int attempt_io_submit(io_context_t ctx, long nr, struct iocb *ios[], int expect) +> | ^~~~~~~~~~~~~~~~~ +> cc1: all warnings being treated as errors +> make[1]: *** [Makefile:19: cases/3.p] Error 1 +> make[1]: Leaving directory '/alt/public_software/libaio/harness' +> make: *** [Makefile:23: partcheck] Error 2 + +The fix is to remove this one test case, since the compiler now +ensures the running code will never see this case. + +Signed-off-by: Lee Duncan +--- + harness/cases/3.t | 1 - + 1 file changed, 1 deletion(-) + +diff -Nurp a/harness/cases/3.t b/harness/cases/3.t +--- a/harness/cases/3.t 2018-10-22 20:59:34.000000000 +0100 ++++ b/harness/cases/3.t 2022-02-26 09:46:51.969845084 +0000 +@@ -15,7 +15,6 @@ int test_main(void) + status |= attempt_io_submit(BAD_CTX, 1, good_ios, -EINVAL); + status |= attempt_io_submit( io_ctx, 0, good_ios, 0); + status |= attempt_io_submit( io_ctx, 1, NULL, -EFAULT); +- status |= attempt_io_submit( io_ctx, 1, (void *)-1, -EFAULT); + status |= attempt_io_submit( io_ctx, 2, bad1_ios, -EFAULT); + status |= attempt_io_submit( io_ctx, 2, bad2_ios, -EFAULT); + status |= attempt_io_submit( io_ctx, -1, good_ios, -EINVAL); diff --git a/packages/libedit/Containerfile b/packages/libedit/Containerfile new file mode 100644 index 0000000..8fd9f15 --- /dev/null +++ b/packages/libedit/Containerfile @@ -0,0 +1,43 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=20230828-3.1 +ENV SRC_HASH=4ee8182b6e569290e7d1f44f0f78dac8716b35f656b76528f699c69c98814dad +ENV SRC_FILE=libedit-${VERSION}.tar.gz +ENV SRC_SITE=https://www.thrysoee.dk/editline/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/ncurses . / +COPY --from=stagex/gawk . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf $SRC_FILE +WORKDIR libedit-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / + + diff --git a/packages/libevent/Containerfile b/packages/libevent/Containerfile new file mode 100644 index 0000000..90afaa2 --- /dev/null +++ b/packages/libevent/Containerfile @@ -0,0 +1,45 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.1.12 +ENV SRC_HASH=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb +ENV SRC_FILE=libevent-${VERSION}-stable.tar.gz +ENV SRC_SITE=https://github.com/libevent/libevent/releases/download/release-${VERSION}-stable/${SRC_FILE} + # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz + # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz + # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN ls -lah +RUN tar -xf $SRC_FILE +WORKDIR libevent-${VERSION}-stable +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / + + + + + + diff --git a/packages/libical/Containerfile b/packages/libical/Containerfile new file mode 100644 index 0000000..b30addc --- /dev/null +++ b/packages/libical/Containerfile @@ -0,0 +1,43 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=5.1.4 +ENV SRC_HASH=bdf344c5adbcc6797940f8f8cb75cb59f5a3794eb21b9547751a11782a792ef7 +ENV SRC_FILE=nuspell-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/nuspell/nuspell/archive/refs/tags/v${VERSION}.tar.gz + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/perl . / +COPY --from=stagex/binutils . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/samurai . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/icu . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +RUN tar -xf v${VERSION}.tar.gz +WORKDIR nuspell-${VERSION} +RUN --network=none <<-EOF + set -ex + CXXFLAGS="$CXXFLAGS -flto=auto" \ + cmake -B build -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=None \ + -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \ + -DBUILD_DOCS=OFF + cmake --build build +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libiconv/Containerfile b/packages/libiconv/Containerfile new file mode 100644 index 0000000..6be6a8b --- /dev/null +++ b/packages/libiconv/Containerfile @@ -0,0 +1,37 @@ + +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.17 +ENV SRC_HASH=8e7d1a8ccac0143c8fe9b68ebac67d485df119ea17a613f4038cda52f84ef52a +ENV SRC_FILE=libiconv-${VERSION}.tar.gz +ENV SRC_SITE=https://ftp.gnu.org/gnu/libiconv/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR libiconv-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-openssl \ + --disable-openssl-runtime + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/libsm/Containerfile b/packages/libsm/Containerfile new file mode 100644 index 0000000..9d50110 --- /dev/null +++ b/packages/libsm/Containerfile @@ -0,0 +1,44 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=1.2.4 +ENV SRC_HASH=fdcbe51e4d1276b1183da77a8a4e74a137ca203e0bcfb20972dd5f3347e97b84 +ENV SRC_FILE=libSM-${VERSION}.tar.xz +ENV SRC_SITE=https://www.x.org/releases/individual/lib/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/xmlto . / +COPY --from=stagex/xorgproto . / +RUN tar -xf ${SRC_FILE} +WORKDIR libSM-${VERSION} +RUN --network=none <<-EOF + set -ex + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --with-libuuid \ + --enable-docs \ + --with-xmlto \ + --without-fop + make + + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none <<-EOF + set -eu + make DESTDIR="/rootfs" install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libsodium/Containerfile b/packages/libsodium/Containerfile new file mode 100644 index 0000000..a6547f5 --- /dev/null +++ b/packages/libsodium/Containerfile @@ -0,0 +1,37 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=1.0.20 +ENV SRC_HASH=ebb65ef6ca439333c2bb41a0c1990587288da07f6c7fd07cb3a18cc18d30ce19 +ENV SRC_FILE=libsodium-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/jedisct1/libsodium/releases/download/${VERSION}-RELEASE/libsodium-${VERSION}.tar.gz + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +RUN tar -xf ${SRC_FILE} +WORKDIR libsodium-${VERSION} +RUN --network=none <<-EOF + set -ex + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr + make + + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none <<-EOF + set -eu + make DESTDIR="/rootfs" install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libverto/Containerfile b/packages/libverto/Containerfile new file mode 100644 index 0000000..e305436 --- /dev/null +++ b/packages/libverto/Containerfile @@ -0,0 +1,64 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=0.3.2 +ENV SRC_HASH=8d1756fd704f147549f606cd987050fb94b0b1ff621ea6aa4d6bf0b74450468a +ENV SRC_FILE=libverto-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/latchset/libverto/releases/download/0.3.2/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/bash . / +COPY --from=stagex/m4 . / +COPY --from=stagex/curl . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/util-linux . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/e2fsprogs . / +COPY --from=stagex/python . / +COPY --from=stagex/openldap . / +COPY --from=stagex/libtool . / +COPY --from=stagex/openssl . / +COPY --from=stagex/groff . / +COPY --from=stagex/busybox . / +COPY --from=stagex/perl . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/libedit . / +COPY --from=stagex/python . / +COPY --from=stagex/libevent . / +COPY --from=stagex/pkgconf . / + +RUN tar -xf $SRC_FILE +WORKDIR libverto-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --localstatedir=/var/lib \ + --with-libdev \ + --with-libevent + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN ls -la . +RUN find /rootfs -exec touch -hcd "@0" "{}" + +RUN mv /rootfs/usr/lib/libverto-libevent.so.* /rootfs/usr/lib/ + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/libx11/Containerfile b/packages/libx11/Containerfile new file mode 100644 index 0000000..6109a4c --- /dev/null +++ b/packages/libx11/Containerfile @@ -0,0 +1,40 @@ + +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.8.9 +ENV SRC_HASH=57ca5f07d263788ad661a86f4139412e8b699662e6b60c20f1f028c25a935e48 +ENV SRC_FILE=libX11-${VERSION}.tar.gz +ENV SRC_SITE=https://www.x.org/releases/individual/lib/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libxslt . / +RUN tar -xf ${SRC_FILE} +WORKDIR libX11-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --disable-xf86bigfont + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/libxcb/Containerfile b/packages/libxcb/Containerfile new file mode 100644 index 0000000..2437fb2 --- /dev/null +++ b/packages/libxcb/Containerfile @@ -0,0 +1,42 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.16.1 +ENV SRC_HASH=ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f +ENV SRC_FILE=libxcb-${VERSION}.tar.xz +ENV SRC_SITE=https://xorg.freedesktop.org/archive/individual/lib/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/expat . / +COPY --from=stagex/busybox . / +COPY --from=stagex/bash . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/meson . / +COPY --from=stagex/glib . / +RUN tar -xf ${SRC_FILE} +WORKDIR libxcb-${VERSION} +RUN --network=none <<-EOF + set -eux + export CFLAGS="-flto=auto" + ./configure + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --enable-xkb \ + --enable-xinput \ + --disable-xprint + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/linux-pam/Containerfile b/packages/linux-pam/Containerfile new file mode 100644 index 0000000..4190963 --- /dev/null +++ b/packages/linux-pam/Containerfile @@ -0,0 +1,57 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.6.1 +ENV SRC_HASH=f8923c740159052d719dbfc2a2f81942d68dd34fcaf61c706a02c9b80feeef8e +ENV SRC_FILE=Linux-PAM-${VERSION}.tar.xz +ENV SRC_SITE=https://github.com/linux-pam/linux-pam/releases/download/v${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/bison . / +COPY --from=stagex/cmake . / +COPY --from=stagex/perl . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/utmps . / +COPY --from=stagex/libtool . / +COPY --from=stagex/gettext . / +COPY --from=stagex/flex . / +COPY --from=stagex/pkgconf . / +RUN tar -xf ${SRC_FILE} +WORKDIR Linux-PAM-${VERSION} +RUN --network=none <<-EOF + set -eux + export CFLAGS="-flto=auto $(pkg-config --cflags utmps)" + export LDFLAGS=$(pkg-config --libs utmps) + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --libdir=/usr/lib \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --disable-nls \ + --disable-db \ + --disable-examples \ + --sbindir=/usr/sbin \ + --enable-securedir=/usr/lib/security + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN ls -la /rootfs +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/lmdb/Containerfile b/packages/lmdb/Containerfile new file mode 100644 index 0000000..da56059 --- /dev/null +++ b/packages/lmdb/Containerfile @@ -0,0 +1,34 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=0.9.31 +ENV SRC_HASH=f7aecdd1bcc69fb32bb33d8544cfe50f8e9e916f366d598a268e1f43ee9c7603 +ENV SRC_FILE=openldap-LMDB_${VERSION}.tar.gz +ENV SRC_SITE=https://git.openldap.org/openldap/openldap/-/archive/LMDB_${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR openldap-LMDB_${VERSION}/libraries/liblmdb +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 lmdb-make.patch + export CFLAGS="-O2 -fPIC" + make +EOF + +FROM build AS install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/lmdb/lmdb-make.patch b/packages/lmdb/lmdb-make.patch new file mode 100644 index 0000000..dabb6b0 --- /dev/null +++ b/packages/lmdb/lmdb-make.patch @@ -0,0 +1,83 @@ +diff --git a/Makefile b/Makefile +index f254511..949d9ae 100644 +--- a/Makefile ++++ b/Makefile +@@ -26,6 +26,10 @@ OPT = -O2 -g + CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS) + LDLIBS = + SOLIBS = ++SOVER_MAJ = 0 ++SOVER_MIN = 0 ++SOVER_PATCH = 0 ++SOVERSION = $(SOVER_MAJ).$(SOVER_MIN).$(SOVER_PATCH) + SOEXT = .so + prefix = /usr/local + exec_prefix = $(prefix) +@@ -38,7 +42,7 @@ mandir = $(datarootdir)/man + ######################################################################## + + IHDRS = lmdb.h +-ILIBS = liblmdb.a liblmdb$(SOEXT) ++ILIBS = liblmdb$(SOEXT) liblmdb$(SOEXT).$(SOVERSION) liblmdb$(SOEXT).$(SOVER_MAJ) + IPROGS = mdb_stat mdb_copy mdb_dump mdb_load + IDOCS = mdb_stat.1 mdb_copy.1 mdb_dump.1 mdb_load.1 + PROGS = $(IPROGS) mtest mtest2 mtest3 mtest4 mtest5 +@@ -49,13 +53,13 @@ install: $(ILIBS) $(IPROGS) $(IHDRS) + mkdir -p $(DESTDIR)$(libdir) + mkdir -p $(DESTDIR)$(includedir) + mkdir -p $(DESTDIR)$(mandir)/man1 +- for f in $(IPROGS); do cp $$f $(DESTDIR)$(bindir); done +- for f in $(ILIBS); do cp $$f $(DESTDIR)$(libdir); done +- for f in $(IHDRS); do cp $$f $(DESTDIR)$(includedir); done +- for f in $(IDOCS); do cp $$f $(DESTDIR)$(mandir)/man1; done ++ for f in $(IPROGS); do cp -a $$f $(DESTDIR)$(bindir); done ++ for f in $(ILIBS); do cp -a $$f $(DESTDIR)$(libdir); done ++ for f in $(IHDRS); do cp -a $$f $(DESTDIR)$(includedir); done ++ for f in $(IDOCS); do cp -a $$f $(DESTDIR)$(mandir)/man1; done + + clean: +- rm -rf $(PROGS) *.[ao] *.[ls]o *~ testdb ++ rm -rf $(PROGS) *.[ao] *.[ls]o* *~ testdb + + test: all + rm -rf testdb && mkdir testdb +@@ -64,21 +68,25 @@ test: all + liblmdb.a: mdb.o midl.o + $(AR) rs $@ mdb.o midl.o + +-liblmdb$(SOEXT): mdb.lo midl.lo ++liblmdb$(SOEXT) liblmdb$(SOEXT).$(SOVER_MAJ): liblmdb$(SOEXT).$(SOVERSION) ++ rm -f $@ ++ ln -s $< $@ ++ ++liblmdb$(SOEXT).$(SOVERSION): mdb.lo midl.lo + # $(CC) $(LDFLAGS) -pthread -shared -Wl,-Bsymbolic -o $@ mdb.o midl.o $(SOLIBS) +- $(CC) $(LDFLAGS) -pthread -shared -o $@ mdb.lo midl.lo $(SOLIBS) +- +-mdb_stat: mdb_stat.o liblmdb.a +-mdb_copy: mdb_copy.o liblmdb.a +-mdb_dump: mdb_dump.o liblmdb.a +-mdb_load: mdb_load.o liblmdb.a +-mtest: mtest.o liblmdb.a +-mtest2: mtest2.o liblmdb.a +-mtest3: mtest3.o liblmdb.a +-mtest4: mtest4.o liblmdb.a +-mtest5: mtest5.o liblmdb.a +-mtest6: mtest6.o liblmdb.a +-mplay: mplay.o liblmdb.a ++ $(CC) $(LDFLAGS) -pthread -shared -Wl,-soname,liblmdb$(SOEXT).$(SOVER_MAJ) -o $@ mdb.lo midl.lo $(SOLIBS) ++ ++mdb_stat: mdb_stat.o liblmdb.so ++mdb_copy: mdb_copy.o liblmdb.so ++mdb_dump: mdb_dump.o liblmdb.so ++mdb_load: mdb_load.o liblmdb.so ++mtest: mtest.o liblmdb.so ++mtest2: mtest2.o liblmdb.so ++mtest3: mtest3.o liblmdb.so ++mtest4: mtest4.o liblmdb.so ++mtest5: mtest5.o liblmdb.so ++mtest6: mtest6.o liblmdb.so ++mplay: mplay.o liblmdb.so + + mdb.o: mdb.c lmdb.h midl.h + $(CC) $(CFLAGS) $(CPPFLAGS) -c mdb.c diff --git a/packages/mariadb-connector-c/Containerfile b/packages/mariadb-connector-c/Containerfile new file mode 100644 index 0000000..3bf7492 --- /dev/null +++ b/packages/mariadb-connector-c/Containerfile @@ -0,0 +1,50 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=3.3.9 +ENV SRC_HASH=062b9ec5c26cbb236a78f0ba26981272053f59bdfc113040bab904a9da36d31f +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/mariadb-corporation/mariadb-connector-c/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/cmake . / +COPY --from=stagex/samurai . / +COPY --from=stagex/openssl . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/zlib . / +COPY --from=stagex/ninja . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR mariadb-connector-c-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux + patch -p1 < incorrect-sys-poll.patch + patch -p1 < unused-parameter.patch + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=MinSizeRel \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DINSTALL_LIBDIR=lib \ + -DINSTALL_INCLUDEDIR=include/mysql \ + \ + -DMARIADB_PORT=3306 \ + -DMARIADB_UNIX_ADDR=/run/mysqld/mysqld.sock \ + -DWITH_EXTERNAL_ZLIB=YES \ + -DWITH_MYSQLCOMPAT=ON \ + -DWITH_SSL=OPENSSL + cmake --build build +EOF + +FROM build as install +RUN DESTDIR=/rootfs cmake --install build + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/mariadb-connector-c/incorrect-sys-poll.patch b/packages/mariadb-connector-c/incorrect-sys-poll.patch new file mode 100644 index 0000000..764ab46 --- /dev/null +++ b/packages/mariadb-connector-c/incorrect-sys-poll.patch @@ -0,0 +1,11 @@ +--- a/plugins/pvio/pvio_socket.c ++++ b/plugins/pvio/pvio_socket.c +@@ -39,7 +39,7 @@ + #include + #endif + #ifdef HAVE_POLL +-#include ++#include + #endif + #ifdef HAVE_SYS_IOCTL_H + #include \ No newline at end of file diff --git a/packages/mariadb-connector-c/unused-paramater.patch b/packages/mariadb-connector-c/unused-paramater.patch new file mode 100644 index 0000000..384a2c7 --- /dev/null +++ b/packages/mariadb-connector-c/unused-paramater.patch @@ -0,0 +1,25 @@ +These functions are implemented in assembly for x86 and x86_64. +On other architectures, they are no-ops, and so parameters are unused. + +Starting from version 3.3.7, mariadb-connector-c is compiled with "-Werror" +turned on, so allow unused parameters here with GCC's Diagnostic Pragma: +https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html + +--- a/libmariadb/ma_context.c ++++ b/libmariadb/ma_context.c +@@ -692,6 +692,9 @@ + #endif /* MY_CONTEXT_USE_WIN32_FIBERS */ + + #ifdef MY_CONTEXT_DISABLE ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Wunused-parameter" ++ + int + my_context_continue(struct my_context *c) + { +@@ -723,4 +726,5 @@ + { + } + ++#pragma GCC diagnostic pop + #endif \ No newline at end of file diff --git a/packages/mariadb/Containerfile b/packages/mariadb/Containerfile new file mode 100644 index 0000000..30c995f --- /dev/null +++ b/packages/mariadb/Containerfile @@ -0,0 +1,121 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=10.11.7 +ENV SRC_HASH=5239a245ed90517e96396605cd01ccd8f73cd7442d1b3076b6ffe258110e5157 +ENV SRC_FILE=mariadb-${VERSION}.tar.gz +ENV SRC_SITE=https://rsync.osuosl.org/pub/mariadb/mariadb-${VERSION}/source/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/perl . / +COPY --from=stagex/bison . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libaio . / +COPY --from=stagex/libarchive . / +COPY --from=stagex/libevent . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/linux-pam . / +COPY --from=stagex/ncurses . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/samurai . / +COPY --from=stagex/xz . / +COPY --from=stagex/openssl . / +COPY --from=stagex/readline . / +COPY --from=stagex/fmt . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/mariadb-connector-c . / +RUN tar -xf ${SRC_FILE} +WORKDIR mariadb-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux + # patch -p1 < disable-failing-test.patch + # patch -p1 < gcc13.patch + # patch -p1 < have-stacktrace.patch + # patch -p1 < lfs64.patch + # patch -p1 < pcc-remove-glibc-dep.patch + cmake -B build -G Ninja -Wno-dev \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCOMPILATION_COMMENT="StageX" \ + -DSYSCONFDIR=/etc \ + -DSYSCONF2DIR=/etc/my.cnf.d \ + -DMYSQL_DATADIR=/var/lib/mysql \ + -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock \ + -DDEFAULT_CHARSET=utf8mb4 \ + -DDEFAULT_COLLATION=utf8mb4_general_ci \ + -DENABLED_LOCAL_INFILE=ON \ + -DINSTALL_INFODIR=share/info \ + -DINSTALL_MANDIR=share/man \ + -DINSTALL_PAMDIR=/lib/security \ + -DINSTALL_PLUGINDIR=lib/mariadb/plugin \ + -DINSTALL_SCRIPTDIR=bin \ + -DINSTALL_INCLUDEDIR=include/mysql \ + -DINSTALL_DOCREADMEDIR=share/doc/mariadb \ + -DINSTALL_SUPPORTFILESDIR=share/mariadb \ + -DINSTALL_MYSQLSHAREDIR=share/mariadb \ + -DINSTALL_DOCDIR=share/doc/mariadb \ + -DTMPDIR=/var/tmp \ + -DCONNECT_WITH_MYSQL=ON \ + -DCONNECT_WITH_LIBXML2=system \ + -DCONNECT_WITH_ODBC=NO \ + -DCONNECT_WITH_JDBC=NO \ + -DPLUGIN_ARCHIVE=YES \ + -DPLUGIN_ARIA=YES \ + -DPLUGIN_BLACKHOLE=YES \ + -DPLUGIN_CASSANDRA=NO \ + -DPLUGIN_CSV=YES \ + -DPLUGIN_MYISAM=YES \ + -DPLUGIN_MROONGA=NO \ + -DPLUGIN_OQGRAPH=NO \ + -DPLUGIN_PARTITION=STATIC \ + -DPLUGIN_ROCKSDB=NO \ + -DPLUGIN_SPHINX=NO \ + -DPLUGIN_TOKUDB=NO \ + -DPLUGIN_AUTH_GSSAPI=NO \ + -DPLUGIN_AUTH_GSSAPI_CLIENT=OFF \ + -DPLUGIN_CRACKLIB_PASSWORD_CHECK=NO \ + -DWITH_ASAN=OFF \ + -DWITH_EMBEDDED_SERVER=ON \ + -DWITH_EXTRA_CHARSETS=complex \ + -DWITH_INNODB_BZIP2=OFF \ + -DWITH_INNODB_LZ4=OFF \ + -DWITH_INNODB_LZMA=ON \ + -DWITH_INNODB_LZO=OFF \ + -DWITH_INNODB_SNAPPY=OFF \ + -DWITH_ROCKSDB_BZIP2=OFF \ + -DWITH_ROCKSDB_JEMALLOC=OFF \ + -DWITH_ROCKSDB_LZ4=OFF \ + -DWITH_ROCKSDB_ZSTD=ON \ + -DWITH_ROCKSDB_SNAPPY=OFF \ + -DWITH_JEMALLOC=NO \ + -DWITH_LIBARCHIVE=system \ + -DWITH_LIBFMT=system \ + -DWITH_LIBNUMA=NO \ + -DWITH_LIBWRAP=OFF \ + -DWITH_LIBWSEP=OFF \ + -DWITH_MARIABACKUP=ON \ + -DWITH_PCRE=system \ + -DWITH_READLINE=ON \ + -DWITH_SYSTEMD=no \ + -DWITH_SSL=system \ + -DWITH_VALGRIND=OFF \ + -DWITH_ZLIB=system \ + -DSKIP_TESTS=ON + cmake --build build +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/mariadb/disable-failing-test.patch b/packages/mariadb/disable-failing-test.patch new file mode 100644 index 0000000..62ab944 --- /dev/null +++ b/packages/mariadb/disable-failing-test.patch @@ -0,0 +1,30 @@ +diff --git a/storage/maria/unittest/CMakeLists.txt b/storage/maria/unittest/CMakeLists.txt +index a2da150..fd04ef4 100644 +--- a/storage/maria/unittest/CMakeLists.txt ++++ b/storage/maria/unittest/CMakeLists.txt +@@ -60,10 +60,10 @@ ADD_EXECUTABLE(ma_test_loghandler_readonly-t + ma_test_loghandler_multigroup-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c sequence_storage.c) + MY_ADD_TEST(ma_test_loghandler_readonly) + +-SET_TARGET_PROPERTIES(ma_test_loghandler_readonly-t PROPERTIES COMPILE_FLAGS "-DREADONLY_TEST") +-ADD_EXECUTABLE(ma_test_loghandler_nologs-t +- ma_test_loghandler_nologs-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c) +-MY_ADD_TEST(ma_test_loghandler_nologs) ++#SET_TARGET_PROPERTIES(ma_test_loghandler_readonly-t PROPERTIES COMPILE_FLAGS "-DREADONLY_TEST") ++#ADD_EXECUTABLE(ma_test_loghandler_nologs-t ++# ma_test_loghandler_nologs-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c) ++#MY_ADD_TEST(ma_test_loghandler_nologs) + + SET(ma_pagecache_single_src ma_pagecache_single.c test_file.c test_file.h) + SET(ma_pagecache_consist_src ma_pagecache_consist.c test_file.c test_file.h) +--- a/unittest/mysys/CMakeLists.txt 2020-11-10 14:15:06.000000000 +0100 ++++ b/unittest/mysys/CMakeLists.txt 2020-11-24 21:08:46.721183004 +0100 +@@ -15,7 +15,7 @@ + + MY_ADD_TESTS(bitmap base64 my_atomic my_rdtsc lf my_malloc my_getopt dynstring + byte_order +- queues stacktrace crc32 LINK_LIBRARIES mysys) ++ queues crc32 LINK_LIBRARIES mysys) + MY_ADD_TESTS(my_vsnprintf LINK_LIBRARIES strings mysys) + MY_ADD_TESTS(aes LINK_LIBRARIES mysys mysys_ssl) + ADD_DEFINITIONS(${SSL_DEFINES}) \ No newline at end of file diff --git a/packages/mariadb/gcc13.patch b/packages/mariadb/gcc13.patch new file mode 100644 index 0000000..67123a0 --- /dev/null +++ b/packages/mariadb/gcc13.patch @@ -0,0 +1,40 @@ +--- a/storage/rocksdb/rocksdb/util/string_util.h ++++ b/storage/rocksdb/rocksdb/util/string_util.h +@@ -6,6 +6,7 @@ + + #pragma once + ++#include + #include + #include + #include +--- a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h ++++ b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h +@@ -8,6 +8,7 @@ + #pragma once + #ifndef ROCKSDB_LITE + ++#include + #include + #include + #include "rocksdb/status.h" +--- a/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h ++++ b/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h +@@ -5,6 +5,7 @@ + + #pragma once + ++#include + #include + #include + +--- a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h ++++ b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h +@@ -6,6 +6,7 @@ + #pragma once + + #include "rocksdb/rocksdb_namespace.h" ++#include + + struct CompactionIterationStats { + // Compaction statistics diff --git a/packages/mariadb/have-stacktrace.patch b/packages/mariadb/have-stacktrace.patch new file mode 100644 index 0000000..24f8b3f --- /dev/null +++ b/packages/mariadb/have-stacktrace.patch @@ -0,0 +1,21 @@ +https://jira.mariadb.org/browse/MDEV-24131 + +diff --git a/unittest/mysys/stacktrace-t.c b/unittest/mysys/stacktrace-t.c +index 8fa0db15b36..67eb099028e 100644 +--- a/unittest/mysys/stacktrace-t.c ++++ b/unittest/mysys/stacktrace-t.c +@@ -22,6 +22,14 @@ + + char b_bss[10]; + ++#ifndef HAVE_STACKTRACE ++int my_safe_print_str(const char* val, size_t max_len) ++{ ++ printf("%*s\n", (int) max_len, val); ++ return 0; ++} ++#endif ++ + void test_my_safe_print_str() + { + char b_stack[10]; \ No newline at end of file diff --git a/packages/mariadb/lfs64.patch b/packages/mariadb/lfs64.patch new file mode 100644 index 0000000..d08f1a1 --- /dev/null +++ b/packages/mariadb/lfs64.patch @@ -0,0 +1,936 @@ +needed since https://github.com/bminor/musl/commit/25e6fee27f4a293728dd15b659170e7b9c7db9bc +-- +diff --git a/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h b/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h +index 0a389db6..6e3c900f 100644 +--- a/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h ++++ b/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h +@@ -129,7 +129,7 @@ class ObjectIDManager + * @param offset the offset to start reading at + * @param size the number of bytes to read into buf + */ +- void readData(uint8_t* buf, off64_t offset, int size) const; ++ void readData(uint8_t* buf, off_t offset, int size) const; + + /** @brief Reliably writes data to the bitmap file + * +@@ -140,7 +140,7 @@ class ObjectIDManager + * @param offset the offset to start writing at + * @param size the number of bytes to write + */ +- void writeData(uint8_t* buf, off64_t offset, int size) const; ++ void writeData(uint8_t* buf, off_t offset, int size) const; + + /** @brief If there is no bitmap file yet, this is used to make one + * +diff --git a/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read b/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read +index d5368cfa..18754df4 100644 +--- a/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read ++++ b/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read +@@ -115,7 +115,7 @@ void* thr_popper(void* arg) { + #endif + + longSeekOffset=(uint64_t)offset * (uint64_t)fileBlockSize; +- lseek64(fd, longSeekOffset, SEEK_SET); ++ lseek(fd, longSeekOffset, SEEK_SET); + totalRqst++; + dlen = (fr->BlocksRequested() > extentSize ? extentSize : fr->BlocksRequested()); + sz=0; +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp b/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp +index e2e9b3a9..3bb30fd1 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp ++++ b/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp +@@ -192,7 +192,7 @@ int SMComm::stat(const string& filename, struct stat* statbuf) + common_exit(command, response, err); + } + +-int SMComm::truncate(const string& filename, const off64_t length) ++int SMComm::truncate(const string& filename, const off_t length) + { + ByteStream* command = buffers.getByteStream(); + ByteStream* response = buffers.getByteStream(); +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMComm.h b/storage/columnstore/columnstore/utils/cloudio/SMComm.h +index bb46304b..51edc0be 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMComm.h ++++ b/storage/columnstore/columnstore/utils/cloudio/SMComm.h +@@ -50,7 +50,7 @@ class SMComm : public boost::noncopyable + + // added this one because it should be trivial to implement in SM, and prevents a large + // operation in SMDataFile. +- int truncate(const std::string& filename, const off64_t length); ++ int truncate(const std::string& filename, const off_t length); + + int listDirectory(const std::string& path, std::list* entries); + +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp +index 84eab1ac..0d827c16 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp ++++ b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp +@@ -38,7 +38,7 @@ SMDataFile::SMDataFile(const char* name, int _openmode, const struct stat& _stat + comm = SMComm::get(); + } + +-ssize_t SMDataFile::pread(void* buf, off64_t offset, size_t count) ++ssize_t SMDataFile::pread(void* buf, off_t offset, size_t count) + { + return comm->pread(name(), buf, count, offset); + } +@@ -63,7 +63,7 @@ ssize_t SMDataFile::write(const void* buf, size_t count) + return ret; + } + +-int SMDataFile::seek(off64_t offset, int whence) ++int SMDataFile::seek(off_t offset, int whence) + { + switch (whence) + { +@@ -83,18 +83,18 @@ int SMDataFile::seek(off64_t offset, int whence) + return 0; + } + +-int SMDataFile::truncate(off64_t length) ++int SMDataFile::truncate(off_t length) + { + return comm->truncate(name(), length); + } + +-int SMDataFile::fallocate(int mode, off64_t offset, off64_t length) ++int SMDataFile::fallocate(int mode, off_t offset, off_t length) + { + idbassert_s(mode == 0, "SMDataFile::fallocate() does not support mode != 0 right now."); + return comm->truncate(name(), offset + length); + } + +-off64_t SMDataFile::size() ++off_t SMDataFile::size() + { + struct stat _stat; + int err = comm->stat(name(), &_stat); +@@ -104,7 +104,7 @@ off64_t SMDataFile::size() + return _stat.st_size; + } + +-off64_t SMDataFile::tell() ++off_t SMDataFile::tell() + { + return position; + } +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h +index 1d77edd6..6bd9b20f 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h ++++ b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h +@@ -30,14 +30,14 @@ class SMDataFile : public IDBDataFile + public: + virtual ~SMDataFile(); + +- ssize_t pread(void* ptr, off64_t offset, size_t count); ++ ssize_t pread(void* ptr, off_t offset, size_t count); + ssize_t read(void* ptr, size_t count); + ssize_t write(const void* ptr, size_t count); +- int seek(off64_t offset, int whence); +- int truncate(off64_t length); +- int fallocate(int mode, off64_t offset, off64_t length); +- off64_t size(); +- off64_t tell(); ++ int seek(off_t offset, int whence); ++ int truncate(off_t length); ++ int fallocate(int mode, off_t offset, off_t length); ++ off_t size(); ++ off_t tell(); + int flush(); + time_t mtime(); + int close(); +@@ -48,7 +48,7 @@ class SMDataFile : public IDBDataFile + private: + SMDataFile(); + SMDataFile(const char* fname, int openmode, const struct stat&); +- off64_t position; ++ off_t position; + int openmode; + SMComm* comm; + +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp +index 96fe25d3..c15653ad 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp ++++ b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp +@@ -38,7 +38,7 @@ int SMFileSystem::mkdir(const char* path) + return 0; + } + +-off64_t SMFileSystem::size(const char* filename) const ++off_t SMFileSystem::size(const char* filename) const + { + struct stat _stat; + +@@ -50,7 +50,7 @@ off64_t SMFileSystem::size(const char* filename) const + return _stat.st_size; + } + +-off64_t SMFileSystem::compressedSize(const char* filename) const ++off_t SMFileSystem::compressedSize(const char* filename) const + { + // Yikes, punting on this one. + throw NotImplementedYet(__func__); +diff --git a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h +index 0e60f533..bace23fb 100644 +--- a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h ++++ b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h +@@ -33,8 +33,8 @@ class SMFileSystem : public IDBFileSystem, boost::noncopyable + + // why are some of these const and some not const in IDBFileSystem? + int mkdir(const char* pathname); +- off64_t size(const char* path) const; +- off64_t compressedSize(const char* path) const; ++ off_t size(const char* path) const; ++ off_t compressedSize(const char* path) const; + int remove(const char* pathname); + int rename(const char* oldpath, const char* newpath); + bool exists(const char* pathname) const; +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp +index 6d7c5834..cb3f2510 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp ++++ b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp +@@ -67,7 +67,7 @@ BufferedFile::~BufferedFile() + delete[] m_buffer; + } + +-ssize_t BufferedFile::pread(void* ptr, off64_t offset, size_t count) ++ssize_t BufferedFile::pread(void* ptr, off_t offset, size_t count) + { + ssize_t ret = 0; + int savedErrno; +@@ -122,7 +122,7 @@ ssize_t BufferedFile::read(void* ptr, size_t count) + ssize_t BufferedFile::write(const void* ptr, size_t count) + { + ssize_t ret = 0; +- off64_t offset = tell(); ++ off_t offset = tell(); + int savedErrno = 0; + size_t progress = 0; + uint8_t* ptr8 = (uint8_t*)ptr; +@@ -150,7 +150,7 @@ ssize_t BufferedFile::write(const void* ptr, size_t count) + return progress; + } + +-int BufferedFile::seek(off64_t offset, int whence) ++int BufferedFile::seek(off_t offset, int whence) + { + int ret = 0; + int savedErrno; +@@ -168,7 +168,7 @@ int BufferedFile::seek(off64_t offset, int whence) + return ret; + } + +-int BufferedFile::truncate(off64_t length) ++int BufferedFile::truncate(off_t length) + { + int ret = 0; + int savedErrno; +@@ -187,14 +187,14 @@ int BufferedFile::truncate(off64_t length) + return ret; + } + +-off64_t BufferedFile::size() ++off_t BufferedFile::size() + { + #ifdef _MSC_VER + return _filelengthi64(fileno(m_fp)); // Interestingly, implemented as fseek/ftell in the windows crt + #else + // going to calculate size 2 ways - first, via seek +- off64_t length = -1; +- off64_t here; ++ off_t length = -1; ++ off_t here; + + flockfile(m_fp); + +@@ -220,7 +220,7 @@ off64_t BufferedFile::size() + #endif + } + +-off64_t BufferedFile::tell() ++off_t BufferedFile::tell() + { + #ifdef _MSC_VER + return _ftelli64(m_fp); +@@ -282,7 +282,7 @@ int BufferedFile::close() + @see + This one is used in shared/we_fileop.cpp to skip expensive file preallocation. + */ +-int BufferedFile::fallocate(int mode, off64_t offset, off64_t length) ++int BufferedFile::fallocate(int mode, off_t offset, off_t length) + { + int ret = 0; + int savedErrno = 0; +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h +index 09646b44..ba688a10 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h +@@ -40,16 +40,16 @@ class BufferedFile : public IDBDataFile, boost::noncopyable + BufferedFile(const char* fname, const char* mode, unsigned opts); + /* virtual */ ~BufferedFile(); + +- /* virtual */ ssize_t pread(void* ptr, off64_t offset, size_t count); ++ /* virtual */ ssize_t pread(void* ptr, off_t offset, size_t count); + /* virtual */ ssize_t read(void* ptr, size_t count); + /* virtual */ ssize_t write(const void* ptr, size_t count); +- /* virtual */ int seek(off64_t offset, int whence); +- /* virtual */ int truncate(off64_t length); +- /* virtual */ off64_t size(); +- /* virtual */ off64_t tell(); ++ /* virtual */ int seek(off_t offset, int whence); ++ /* virtual */ int truncate(off_t length); ++ /* virtual */ off_t size(); ++ /* virtual */ off_t tell(); + /* virtual */ int flush(); + /* virtual */ time_t mtime(); +- /* virtual */ int fallocate(int mode, off64_t offset, off64_t length); ++ /* virtual */ int fallocate(int mode, off_t offset, off_t length); + + protected: + /* virtual */ +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h +index 1747189e..739e7717 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h +@@ -124,7 +124,7 @@ class IDBDataFile + * or fseek followed by read for C-library FILE*. Return value + * is the number of bytes read. + */ +- virtual ssize_t pread(void* ptr, off64_t offset, size_t count) = 0; ++ virtual ssize_t pread(void* ptr, off_t offset, size_t count) = 0; + + /** + * This is a read method similar to kernel style read or C library +@@ -148,7 +148,7 @@ class IDBDataFile + * operation - ex. HDFS will not support it for files opened for writing + * Returns 0 on success, -1 on error + */ +- virtual int seek(off64_t offset, int whence) = 0; ++ virtual int seek(off_t offset, int whence) = 0; + + /** + * The truncate() method is equivalent to the ftruncate method. Note +@@ -156,7 +156,7 @@ class IDBDataFile + * or write or append do not, but HDFS files opened for modification do. + * Returns 0 on success, -1 on error. + */ +- virtual int truncate(off64_t length) = 0; ++ virtual int truncate(off_t length) = 0; + + /** + * The size() method returns the size of the file in a manner consistent +@@ -166,14 +166,14 @@ class IDBDataFile + * external view of size may differ (ex. if writing buffered i/o before + * a flush/sync or if writing an open HDFS file). Returns -1 on error. + */ +- virtual off64_t size() = 0; ++ virtual off_t size() = 0; + + /** + * The tell() call returns the current offset in the file. This is + * similar to lseek with 0 offset in the standard library and ftell + * for buffered FILE *s. + */ +- virtual off64_t tell() = 0; ++ virtual off_t tell() = 0; + + /** + * The flush() method instructs the file to write any buffered contents +@@ -194,7 +194,7 @@ class IDBDataFile + * only. + * Returns -1 on error. + */ +- virtual int fallocate(int mode, off64_t offset, off64_t length) = 0; ++ virtual int fallocate(int mode, off_t offset, off_t length) = 0; + + int colWidth() + { +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h +index 4ca4a285..54e58540 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h +@@ -82,14 +82,14 @@ class IDBFileSystem + * size() returns the size of the file specified by path. + * Returns the size on success, -1 on error + */ +- virtual off64_t size(const char* path) const = 0; ++ virtual off_t size(const char* path) const = 0; + + /** + * compressedSize() returns the decompressed size of the file + * speicified by path. + * Returns the size on success, -1 on error + */ +- virtual off64_t compressedSize(const char* path) const = 0; ++ virtual off_t compressedSize(const char* path) const = 0; + + /** + * exists() checks for the existence of a particular path. +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp +index 37d4cb3c..8111d00c 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp ++++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp +@@ -117,14 +117,14 @@ void IDBLogger::logRW(const char* op, const std::string& fname, const IDBDataFil + writeLog(logmsg.str()); + } + +-void IDBLogger::logSeek(const std::string& fname, const IDBDataFile* ptr, off64_t offset, int whence, int ret) ++void IDBLogger::logSeek(const std::string& fname, const IDBDataFile* ptr, off_t offset, int whence, int ret) + { + ostringstream logmsg; + logmsg << fname << "," << ptr << ",seek," << offset << "," << whence << "," << ret; + writeLog(logmsg.str()); + } + +-void IDBLogger::logTruncate(const std::string& fname, const IDBDataFile* ptr, off64_t length, int ret) ++void IDBLogger::logTruncate(const std::string& fname, const IDBDataFile* ptr, off_t length, int ret) + { + ostringstream logmsg; + logmsg << fname << "," << ptr << ",truncate," << length << ",," << ret; +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h +index b200c914..c4d6d0a5 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h +@@ -36,8 +36,8 @@ class IDBLogger + static void logNoArg(const std::string& fname, const IDBDataFile* ptr, const char* op, int ret); + static void logRW(const char* op, const std::string& fname, const IDBDataFile* ptr, size_t offset, + size_t count, size_t bytesRead); +- static void logSeek(const std::string& fname, const IDBDataFile* ptr, off64_t offset, int whence, int ret); +- static void logTruncate(const std::string& fname, const IDBDataFile* ptr, off64_t length, int ret); ++ static void logSeek(const std::string& fname, const IDBDataFile* ptr, off_t offset, int whence, int ret); ++ static void logTruncate(const std::string& fname, const IDBDataFile* ptr, off_t length, int ret); + static void logSize(const std::string& fname, const IDBDataFile* ptr, long long ret); + + static void logFSop(IDBFileSystem::Types type, const char* op, const char* pathname, +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h +index 117f1e8d..d53fbfa0 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h +@@ -125,8 +125,8 @@ class IDBPolicy + * please see IDBFileSystem.h. + */ + static int mkdir(const char* pathname); +- static off64_t size(const char* path); +- static off64_t compressedSize(const char* path); ++ static off_t size(const char* path); ++ static off_t compressedSize(const char* path); + static int remove(const char* pathname); + static int rename(const char* oldpath, const char* newpath); + static bool exists(const char* pathname); +@@ -194,12 +194,12 @@ inline int IDBPolicy::mkdir(const char* pathname) + return IDBPolicy::getFs(pathname).mkdir(pathname); + } + +-inline off64_t IDBPolicy::size(const char* path) ++inline off_t IDBPolicy::size(const char* path) + { + return IDBPolicy::getFs(path).size(path); + } + +-inline off64_t IDBPolicy::compressedSize(const char* path) ++inline off_t IDBPolicy::compressedSize(const char* path) + { + return IDBPolicy::getFs(path).compressedSize(path); + } +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp +index bd3e1c4b..6c9d04a5 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp ++++ b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp +@@ -115,13 +115,13 @@ int PosixFileSystem::rename(const char* oldpath, const char* newpath) + return ret; + } + +-off64_t PosixFileSystem::size(const char* path) const ++off_t PosixFileSystem::size(const char* path) const + { + // should this use Boost?? + struct stat statBuf; + int rc = ::stat(path, &statBuf); + int savedErrno = errno; +- off64_t ret = ((rc == 0) ? statBuf.st_size : -1); ++ off_t ret = ((rc == 0) ? statBuf.st_size : -1); + + if (IDBLogger::isEnabled()) + IDBLogger::logFSop(POSIX, "fs:size", path, this, ret); +@@ -156,11 +156,11 @@ size_t readFillBuffer(idbdatafile::IDBDataFile* pFile, char* buffer, size_t byte + return totalBytesRead; + } + +-off64_t PosixFileSystem::compressedSize(const char* path) const ++off_t PosixFileSystem::compressedSize(const char* path) const + { + IDBDataFile* pFile = NULL; + size_t nBytes; +- off64_t dataSize = 0; ++ off_t dataSize = 0; + + try + { +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h +index c1f4e5ff..6e18ca45 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h ++++ b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h +@@ -29,8 +29,8 @@ class PosixFileSystem : public IDBFileSystem + ~PosixFileSystem(); + + int mkdir(const char* pathname) override; +- off64_t size(const char* path) const override; +- off64_t compressedSize(const char* path) const override; ++ off_t size(const char* path) const override; ++ off_t compressedSize(const char* path) const override; + int remove(const char* pathname) override; + int rename(const char* oldpath, const char* newpath) override; + bool exists(const char* pathname) const override; +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp b/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp +index 07a7630b..97dcb97c 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp ++++ b/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp +@@ -75,7 +75,7 @@ UnbufferedFile::~UnbufferedFile() + close(); + } + +-ssize_t UnbufferedFile::pread(void* ptr, off64_t offset, size_t count) ++ssize_t UnbufferedFile::pread(void* ptr, off_t offset, size_t count) + { + ssize_t ret; + int savedErrno; +@@ -161,7 +161,7 @@ ssize_t UnbufferedFile::write(const void* ptr, size_t count) + return ret; + } + +-int UnbufferedFile::seek(off64_t offset, int whence) ++int UnbufferedFile::seek(off_t offset, int whence) + { + int ret; + int savedErrno; +@@ -182,7 +182,7 @@ int UnbufferedFile::seek(off64_t offset, int whence) + return ret; + } + +-int UnbufferedFile::truncate(off64_t length) ++int UnbufferedFile::truncate(off_t length) + { + int ret; + int savedErrno; +@@ -207,15 +207,15 @@ int UnbufferedFile::truncate(off64_t length) + return ret; + } + +-off64_t UnbufferedFile::size() ++off_t UnbufferedFile::size() + { +- off64_t ret = 0; ++ off_t ret = 0; + int savedErrno; + + #ifdef _MSC_VER + DWORD hi = 0; + DWORD lo = GetFileSize(m_fd, &hi); +- ret = off64_t(((uint64_t)hi) << 32) | lo; ++ ret = off_t(((uint64_t)hi) << 32) | lo; + #else + struct stat statBuf; + int rc = ::fstat(m_fd, &statBuf); +@@ -230,9 +230,9 @@ off64_t UnbufferedFile::size() + return ret; + } + +-off64_t UnbufferedFile::tell() ++off_t UnbufferedFile::tell() + { +- off64_t ret; ++ off_t ret; + #ifdef _MSC_VER + LARGE_INTEGER wRet; + LARGE_INTEGER dist; +@@ -333,7 +333,7 @@ int UnbufferedFile::close() + @see + This one is used in shared/we_fileop.cpp to skip expensive file preallocation. + */ +-int UnbufferedFile::fallocate(int mode, off64_t offset, off64_t length) ++int UnbufferedFile::fallocate(int mode, off_t offset, off_t length) + { + int ret = 0; + int savedErrno = 0; +diff --git a/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp b/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp +index 42b46873..0cef9ebb 100644 +--- a/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp ++++ b/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp +@@ -623,9 +623,9 @@ bool TestRunner::truncateTest(IDBDataFile::Types filetype) + blk_num = m_opts.numblocks; + } + +- off64_t fsize = m_file->size(); ++ off_t fsize = m_file->size(); + +- if (fsize != (off64_t)(blk_num * BLK_SIZE)) ++ if (fsize != (off_t)(blk_num * BLK_SIZE)) + { + ostringstream errstr; + errstr << "wrong file size after truncate, " << fsize << " != " << blk_num * BLK_SIZE; +@@ -645,7 +645,7 @@ bool TestRunner::renameTest(IDBDataFile::Types type) + IDBFileSystem& fs = IDBFileSystem::getFs(type); + + // get the size before we move for compare purposes. +- off64_t fsize_orig = fs.size(m_fname.c_str()); ++ off_t fsize_orig = fs.size(m_fname.c_str()); + + // choose a path in a different directory that we know already exists + // and make it specific to our thread... +@@ -666,7 +666,7 @@ bool TestRunner::renameTest(IDBDataFile::Types type) + } + + // now check if oldpath exists using size method +- off64_t fsize = fs.size(m_fname.c_str()); ++ off_t fsize = fs.size(m_fname.c_str()); + + if (fsize != -1) + { +@@ -712,7 +712,7 @@ bool TestRunner::copyTest(IDBDataFile::Types type) + IDBFileSystem& fs = IDBFileSystem::getFs(type); + + // get the size before we copy for compare purposes. +- off64_t fsize_orig = fs.size(m_fname.c_str()); ++ off_t fsize_orig = fs.size(m_fname.c_str()); + + // choose a path in a different directory that we know already exists + // and make it specific to our thread... +@@ -733,7 +733,7 @@ bool TestRunner::copyTest(IDBDataFile::Types type) + } + + // now check if newpath exists using size method +- off64_t fsize = fs.size(newpath.c_str()); ++ off_t fsize = fs.size(newpath.c_str()); + + if (fsize != fsize_orig) + { +@@ -1023,9 +1023,9 @@ bool TestRunner::tellTest(IDBDataFile::Types filetype) + return false; + } + +- off64_t filepos = m_file->tell(); ++ off_t filepos = m_file->tell(); + +- if (filepos != off64_t(BLK_SIZE)) ++ if (filepos != off_t(BLK_SIZE)) + { + ostringstream errstr; + errstr << "tellTest: File position not at correct block, " << filepos << " != " << BLK_SIZE; +diff --git a/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp b/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp +index 9678501c..4bb33049 100644 +--- a/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp ++++ b/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp +@@ -393,7 +393,7 @@ int ColumnBufferCompressed::compressAndFlush(bool bFinishingFile) + Stats::startParseEvent(WE_STATS_WRITE_COL); + #endif + +- off64_t fileOffset = fFile->tell(); ++ off_t fileOffset = fFile->tell(); + size_t nitems = fFile->write(compressedOutBuf, outputLen) / outputLen; + + if (nitems != 1) +diff --git a/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp b/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp +index 3f89c28a..57f74352 100644 +--- a/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp ++++ b/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp +@@ -955,7 +955,7 @@ int ColumnInfo::expandAbbrevExtent(bool bRetainFilePos) + { + if (fLoadingAbbreviatedExtent) + { +- off64_t oldOffset = 0; ++ off_t oldOffset = 0; + + if (bRetainFilePos) + { +diff --git a/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp b/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp +index 0a4f5e90..c7eb5fe6 100644 +--- a/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp ++++ b/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp +@@ -318,7 +318,7 @@ int Dctnry::expandDctnryExtent() + { + RETURN_ON_NULL(m_dFile, ERR_FILE_SEEK); + +- off64_t oldOffset = m_dFile->tell(); ++ off_t oldOffset = m_dFile->tell(); + + RETURN_ON_ERROR(setFileOffset(m_dFile, 0, SEEK_END)); + +diff --git a/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp b/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp +index 194b260e..4f9ce81b 100644 +--- a/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp ++++ b/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp +@@ -93,9 +93,9 @@ size_t readFillBuffer(idbdatafile::IDBDataFile* pFile, char* buffer, size_t byte + return totalBytesRead; + } + +-static off64_t getCompressedDataSize(string& fileName) ++static off_t getCompressedDataSize(string& fileName) + { +- off64_t dataSize = 0; ++ off_t dataSize = 0; + IDBDataFile* pFile = 0; + size_t nBytes; + // Some IDBPolicy functions can throw exceptions, caller will catch it +@@ -198,7 +198,7 @@ struct ColumnThread + char fileName[200]; + (void)fileOp.getFileName(fOid, fileName, rootList[i], entries[0].partitionNum, entries[0].segmentNum); + string aFile(fileName); // convert between char* and string +- off64_t fileSize = 0; ++ off_t fileSize = 0; + + if (fReportRealUse && (fCompressionType > 0)) + { +diff --git a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp +index b34535c7..474a44a8 100644 +--- a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp ++++ b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp +@@ -1183,7 +1183,7 @@ int ChunkManager::openFile(CompFileData* fileData, const char* mode, int colWidt + // (ex __LINE__); this is used for logging error messages. Likewise, filename + // is used for logging any error message. + //------------------------------------------------------------------------------ +-int ChunkManager::setFileOffset(IDBDataFile* pFile, const string& fileName, off64_t offset, int ln) const ++int ChunkManager::setFileOffset(IDBDataFile* pFile, const string& fileName, off_t offset, int ln) const + { + int rc = NO_ERROR; + +diff --git a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h +index 30a9862f..bc22a451 100644 +--- a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h ++++ b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h +@@ -309,7 +309,7 @@ class ChunkManager + int openFile(CompFileData* fileData, const char* mode, int colWidth, bool useTmpSuffix, int ln) const; + + // @brief set offset in a compressed DB file from beginning. +- int setFileOffset(IDBDataFile* pFile, const std::string& fileName, off64_t offset, int ln) const; ++ int setFileOffset(IDBDataFile* pFile, const std::string& fileName, off_t offset, int ln) const; + + // @brief read from a compressed DB file. + int readFile(IDBDataFile* pFile, const std::string& fileName, void* buf, size_t size, int ln) const; +diff --git a/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp b/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp +index 1db08a92..2c783325 100644 +--- a/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp ++++ b/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp +@@ -1310,7 +1310,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t + getLogger()->logMsg(oss.str(), MSGLVL_INFO2); + } + +- off64_t endHdrsOffset = pFile->tell(); ++ off_t endHdrsOffset = pFile->tell(); + rc = expandAbbrevColumnExtent(pFile, dbRoot, emptyVal, colWidth, colDataType); + + if (rc != NO_ERROR) +@@ -1374,7 +1374,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t + std::endl << std::endl; + #endif + +- off64_t endOffset = 0; ++ off_t endOffset = 0; + + // Fill in or add necessary remaining empty chunks + if (numChunksToFill > 0) +@@ -1416,7 +1416,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t + + // Position file to write empty chunks; default to end of headers + // in case there are no chunks listed in the header +- off64_t startOffset = pFile->tell(); ++ off_t startOffset = pFile->tell(); + + if (chunkPtrs.size() > 0) + { +diff --git a/storage/connect/filamfix.cpp b/storage/connect/filamfix.cpp +index 3298a833..ec256a2a 100644 +--- a/storage/connect/filamfix.cpp ++++ b/storage/connect/filamfix.cpp +@@ -695,7 +695,7 @@ bool BGXFAM::BigSeek(PGLOBAL g, HANDLE h, BIGINT pos, int org) + return true; + } // endif + #else // !_WIN32 +- if (lseek64(h, pos, org) < 0) { ++ if (lseek(h, pos, org) < 0) { + snprintf(g->Message, sizeof(g->Message), "lseek64: %s", strerror(errno)); + printf("%s\n", g->Message); + return true; +@@ -1022,7 +1022,7 @@ int BGXFAM::Cardinality(PGLOBAL g) + + #else // UNIX + if (Hfile == INVALID_HANDLE_VALUE) { +- int h = open64(filename, O_RDONLY, 0); ++ int h = open(filename, O_RDONLY, 0); + + if (trace(1)) + htrc(" h=%d\n", h); +@@ -1041,13 +1041,13 @@ int BGXFAM::Cardinality(PGLOBAL g) + } // endif h + + // Get the size of the file (can be greater than 4 GB) +- fsize = lseek64(h, 0, SEEK_END); ++ fsize = lseek(h, 0, SEEK_END); + close(h); + } else { +- BIGINT curpos = lseek64(Hfile, 0, SEEK_CUR); ++ BIGINT curpos = lseek(Hfile, 0, SEEK_CUR); + +- fsize = lseek64(Hfile, 0, SEEK_END); +- lseek64(Hfile, curpos, SEEK_SET); ++ fsize = lseek(Hfile, 0, SEEK_END); ++ lseek(Hfile, curpos, SEEK_SET); + } // endif Hfile + + if (fsize < 0) { +@@ -1357,7 +1357,7 @@ int BGXFAM::DeleteRecords(PGLOBAL g, int irc) + return RC_FX; + } // endif error + #else // !_WIN32 +- if (ftruncate64(Hfile, (BIGINT)(Tpos * Lrecl))) { ++ if (ftruncate(Hfile, (BIGINT)(Tpos * Lrecl))) { + snprintf(g->Message, sizeof(g->Message), MSG(TRUNCATE_ERROR), strerror(errno)); + return RC_FX; + } // endif +@@ -1402,7 +1402,7 @@ bool BGXFAM::OpenTempFile(PGLOBAL g) + return true; + } // endif Tfile + #else // UNIX +- Tfile = open64(tempname, O_WRONLY | O_TRUNC, S_IWRITE); ++ Tfile = open(tempname, O_WRONLY | O_TRUNC, S_IWRITE); + + if (Tfile == INVALID_HANDLE_VALUE) { + int rc = errno; +@@ -1531,7 +1531,7 @@ void BGXFAM::Rewind(void) + #if defined(_WIN32) //OB + SetFilePointer(Hfile, 0, NULL, FILE_BEGIN); + #else // UNIX +- lseek64(Hfile, 0, SEEK_SET); ++ lseek(Hfile, 0, SEEK_SET); + #endif // UNIX + #endif // 0 + CurBlk = -1; +diff --git a/storage/connect/filamvct.cpp b/storage/connect/filamvct.cpp +index 184df646..f462060a 100644 +--- a/storage/connect/filamvct.cpp ++++ b/storage/connect/filamvct.cpp +@@ -3084,7 +3084,7 @@ bool BGVFAM::BigSeek(PGLOBAL g, HANDLE h, BIGINT pos, bool b) + return true; + } // endif + #else // !_WIN32 +- if (lseek64(h, pos, (b) ? SEEK_END : SEEK_SET) < 0) { ++ if (lseek(h, pos, (b) ? SEEK_END : SEEK_SET) < 0) { + snprintf(g->Message, sizeof(g->Message), MSG(ERROR_IN_LSK), errno); + return true; + } // endif +@@ -3238,7 +3238,7 @@ int BGVFAM::GetBlockInfo(PGLOBAL g) + + if (h == INVALID_HANDLE_VALUE || !len.QuadPart) { + #else // !_WIN32 +- h = open64(filename, O_RDONLY, 0); ++ h = open(filename, O_RDONLY, 0); + + if (h == INVALID_HANDLE_VALUE || !_filelength(h)) { + #endif // !_WIN32 +@@ -3314,7 +3314,7 @@ bool BGVFAM::SetBlockInfo(PGLOBAL g) + #else // !_WIN32 + int oflag = (b) ? O_RDWR : O_RDWR | O_TRUNC; + +- h = open64(filename, oflag, 0); ++ h = open(filename, oflag, 0); + #endif // !_WIN32 + + if (h == INVALID_HANDLE_VALUE) { +@@ -3409,7 +3409,7 @@ bool BGVFAM::MakeEmptyFile(PGLOBAL g, PCSZ fn) + int h; + BIGINT pos; + +- h= open64(filename, O_CREAT | O_WRONLY, S_IREAD | S_IWRITE); ++ h= open(filename, O_CREAT | O_WRONLY, S_IREAD | S_IWRITE); + + if (h == -1) + return true; +@@ -3420,7 +3420,7 @@ bool BGVFAM::MakeEmptyFile(PGLOBAL g, PCSZ fn) + htrc("MEF: pos=%lld n=%d maxblk=%d blksize=%d\n", + pos, n, MaxBlk, Blksize); + +- if (lseek64(h, pos, SEEK_SET) < 0) ++ if (lseek(h, pos, SEEK_SET) < 0) + goto err; + + // This actually fills the empty file +@@ -3619,7 +3619,7 @@ bool BGVFAM::OpenTableFile(PGLOBAL g) + return true; + } // endswitch + +- Hfile = open64(filename, oflag, pmd); // Enable file size > 2G ++ Hfile = open(filename, oflag, pmd); // Enable file size > 2G + + if (Hfile == INVALID_HANDLE_VALUE) { + rc = errno; +@@ -3933,7 +3933,7 @@ int BGVFAM::DeleteRecords(PGLOBAL g, int irc) + return RC_FX; + } // endif error + #else // !_WIN32 +- if (ftruncate64(Hfile, (BIGINT)(Tpos * Lrecl))) { ++ if (ftruncate(Hfile, (BIGINT)(Tpos * Lrecl))) { + snprintf(g->Message, sizeof(g->Message), MSG(TRUNCATE_ERROR), strerror(errno)); + return RC_FX; + } // endif +@@ -3993,7 +3993,7 @@ bool BGVFAM::OpenTempFile(PGLOBAL g) + #else // UNIX + int oflag = (MaxBlk) ? O_WRONLY : O_WRONLY | O_TRUNC; + +- Tfile = open64(tempname, oflag, S_IWRITE); ++ Tfile = open(tempname, oflag, S_IWRITE); + + if (Tfile == INVALID_HANDLE_VALUE) { + int rc = errno; +@@ -4250,7 +4250,7 @@ void BGVFAM::Rewind(void) + #if defined(_WIN32) //OB + SetFilePointer(Hfile, 0, NULL, FILE_BEGIN); + #else // UNIX +- lseek64(Hfile, 0, SEEK_SET); ++ lseek(Hfile, 0, SEEK_SET); + #endif // UNIX + #endif // 0 + } // end of Rewind +diff --git a/storage/connect/xindex.cpp b/storage/connect/xindex.cpp +index 4bcbbfd4..1144f89a 100644 +--- a/storage/connect/xindex.cpp ++++ b/storage/connect/xindex.cpp +@@ -2652,7 +2652,7 @@ bool XHUGE::Open(PGLOBAL g, char *filename, int id, MODE mode) + /*******************************************************************/ + /* Position the cursor at end of file so ftell returns file size. */ + /*******************************************************************/ +- if (!(NewOff.Val = (longlong)lseek64(Hfile, 0LL, SEEK_END))) { ++ if (!(NewOff.Val = (longlong)lseek(Hfile, 0LL, SEEK_END))) { + snprintf(g->Message, sizeof(g->Message), MSG(FUNC_ERRNO), errno, "Seek"); + return true; + } // endif +@@ -2681,7 +2681,7 @@ bool XHUGE::Open(PGLOBAL g, char *filename, int id, MODE mode) + htrc("noff[%d]=%lld\n", id, noff[id].Val); + + // Position the cursor at the offset of this index +- if (lseek64(Hfile, noff[id].Val, SEEK_SET) < 0) { ++ if (lseek(Hfile, noff[id].Val, SEEK_SET) < 0) { + snprintf(g->Message, sizeof(g->Message), "(XHUGE)lseek64: %s (%lld)", strerror(errno), noff[id].Val); + printf("%s\n", g->Message); + // snprintf(g->Message, sizeof(g->Message), MSG(FUNC_ERRNO), errno, "Hseek"); +@@ -2709,10 +2709,10 @@ bool XHUGE::Seek(PGLOBAL g, int low, int high, int origin) + } // endif + + #else // UNIX +- off64_t pos = (off64_t)low +- + (off64_t)high * ((off64_t)0x100 * (off64_t)0x1000000); ++ off_t pos = (off_t)low ++ + (off_t)high * ((off_t)0x100 * (off_t)0x1000000); + +- if (lseek64(Hfile, pos, origin) < 0) { ++ if (lseek(Hfile, pos, origin) < 0) { + snprintf(g->Message, sizeof(g->Message), MSG(ERROR_IN_LSK), errno); + + if (trace(1)) +@@ -2841,7 +2841,7 @@ void XHUGE::Close(char *fn, int id) + #else // !_WIN32 + if (id >= 0 && fn) { + if (Hfile != INVALID_HANDLE_VALUE) { +- if (lseek64(Hfile, id * sizeof(IOFF), SEEK_SET) >= 0) { ++ if (lseek(Hfile, id * sizeof(IOFF), SEEK_SET) >= 0) { + ssize_t nbw = write(Hfile, &NewOff, sizeof(IOFF)); + + if (nbw != (signed)sizeof(IOFF)) \ No newline at end of file diff --git a/packages/mariadb/pcc-remove-glibc-dep.patch b/packages/mariadb/pcc-remove-glibc-dep.patch new file mode 100644 index 0000000..725cb8c --- /dev/null +++ b/packages/mariadb/pcc-remove-glibc-dep.patch @@ -0,0 +1,36 @@ +diff --git a/include/my_cpu.h b/include/my_cpu.h +index f2e26fca..94599b74 100644 +--- a/include/my_cpu.h ++++ b/include/my_cpu.h +@@ -24,17 +24,16 @@ + */ + + #ifdef _ARCH_PWR8 +-#include + /* Very low priority */ +-#define HMT_very_low() __ppc_set_ppr_very_low() ++#define HMT_very_low() asm volatile("or 31,31,31") + /* Low priority */ +-#define HMT_low() __ppc_set_ppr_low() ++#define HMT_low() asm volatile ("or 1,1,1") + /* Medium low priority */ +-#define HMT_medium_low() __ppc_set_ppr_med_low() ++#define HMT_medium_low() asm volatile ("or 6,6,6") + /* Medium priority */ +-#define HMT_medium() __ppc_set_ppr_med() ++#define HMT_medium() asm volatile ("or 2,2,2") + /* Medium high priority */ +-#define HMT_medium_high() __ppc_set_ppr_med_high() ++#define HMT_medium_high() asm volatile("or 5,5,5") + /* High priority */ + #define HMT_high() asm volatile("or 3,3,3") + #else +@@ -72,7 +71,7 @@ static inline void MY_RELAX_CPU(void) + __asm__ __volatile__ ("pause"); + #endif + #elif defined(_ARCH_PWR8) +- __ppc_get_timebase(); ++ __builtin_ppc_get_timebase(); + #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__) + /* Mainly, prevent the compiler from optimizing away delay loops */ + __asm__ __volatile__ ("":::"memory"); \ No newline at end of file diff --git a/packages/mariadb/revert-c432c9ef.patch b/packages/mariadb/revert-c432c9ef.patch new file mode 100644 index 0000000..e69de29 diff --git a/packages/nasm/Containerfile b/packages/nasm/Containerfile new file mode 100644 index 0000000..ccde570 --- /dev/null +++ b/packages/nasm/Containerfile @@ -0,0 +1,38 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=2.16.03 +ENV SRC_HASH=1412a1c760bbd05db026b6c0d1657affd6631cd0a63cddb6f73cc6d4aa616148 +ENV SRC_FILE=nasm-${VERSION}.tar.xz +ENV SRC_SITE=https://www.nasm.us/pub/nasm/releasebuilds/${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/perl . / +COPY --from=stagex/cmake . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/make . / +COPY --from=stagex/bash . / +RUN tar -xf ${SRC_FILE} +WORKDIR nasm-${VERSION} +RUN --network=none <<-EOF + set -eux + CFLAGS="-O2 -flto=auto" \ + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/nuspell/Containerfile b/packages/nuspell/Containerfile new file mode 100644 index 0000000..b30addc --- /dev/null +++ b/packages/nuspell/Containerfile @@ -0,0 +1,43 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=5.1.4 +ENV SRC_HASH=bdf344c5adbcc6797940f8f8cb75cb59f5a3794eb21b9547751a11782a792ef7 +ENV SRC_FILE=nuspell-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/nuspell/nuspell/archive/refs/tags/v${VERSION}.tar.gz + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/perl . / +COPY --from=stagex/binutils . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/samurai . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/icu . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +RUN tar -xf v${VERSION}.tar.gz +WORKDIR nuspell-${VERSION} +RUN --network=none <<-EOF + set -ex + CXXFLAGS="$CXXFLAGS -flto=auto" \ + cmake -B build -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=None \ + -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \ + -DBUILD_DOCS=OFF + cmake --build build +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/oniguruma/Containerfile b/packages/oniguruma/Containerfile new file mode 100644 index 0000000..22c9f15 --- /dev/null +++ b/packages/oniguruma/Containerfile @@ -0,0 +1,44 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=6.9.9 +ENV SRC_HASH=001aa1202e78448f4c0bf1a48c76e556876b36f16d92ce3207eccfd61d99f2a0 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/kkos/oniguruma/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/libtool . / +COPY --from=stagex/automake . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR oniguruma-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux + autoreconf -vfi + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var \ + --enable-posix-api + make +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/openldap/Containerfile b/packages/openldap/Containerfile new file mode 100644 index 0000000..a7869da --- /dev/null +++ b/packages/openldap/Containerfile @@ -0,0 +1,56 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.5.17 +ENV SRC_HASH=d706a34b348ae38a9e3e4eb0d2cd5afeb939f2b2db95e6ae3d410d6a75e90e3c +ENV SRC_FILE=openldap-${VERSION}.tgz +ENV SRC_SITE=https://www.openldap.org/software/download/OpenLDAP/openldap-release/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/bash . / +COPY --from=stagex/m4 . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/libtool . / +COPY --from=stagex/unixodbc . / +COPY --from=stagex/libedit . / +COPY --from=stagex/libevent . / +COPY --from=stagex/openssl . / +COPY --from=stagex/argon2 . / +COPY --from=stagex/groff . / +RUN tar -xf $SRC_FILE +WORKDIR openldap-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --enable-slapd \ + --enable-modules \ + --enable-dnssrv=mod \ + --enable-ldap=mod \ + --enable-mdb=mod \ + --enable-meta=mod \ + --enable-asyncmeta=mod \ + --enable-null=mod \ + --enable-passwd=mod \ + --enable-relay=mod \ + --enable-sock=mod \ + --enable-sql=mod \ + --enable-overlays=mod \ + --enable-balancer=mod \ + --enable-argon2 + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/pcre2/Containerfile b/packages/pcre2/Containerfile new file mode 100644 index 0000000..92874b8 --- /dev/null +++ b/packages/pcre2/Containerfile @@ -0,0 +1,57 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=10.43 +ENV SRC_HASH=f0048e26b02bdfaf43b8cec75030a9c2fe28552bf5caa693d3ccbf4d886fa930 +ENV SRC_FILE=pcre2-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/PCRE2Project/pcre2/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/zlib . / +COPY --from=stagex/gawk . / +COPY --from=stagex/bzip2 . / +COPY --from=stagex/readline . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/perl . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/libtool . / +COPY --from=stagex/m4 . / +COPY --from=stagex/libedit . / +COPY --from=stagex/ncurses . / +RUN tar -xf $SRC_FILE +WORKDIR pcre2-pcre2-${VERSION} +RUN --network=none <<-EOF + set -eux + ./autogen.sh + ./configure \ + CFLAGS="-O3" \ + --disable-shared \ + --build=${ARCH}-unknown-linux-musl \ + --host=${ARCH}-unknown-linux-musl \ + --prefix=/usr \ + --docdir=/usr/share/doc/pcre2-10.43 \ + --htmldir=/usr/share/doc/pcre2-10.43/html \ + --enable-pcre2-16 \ + --enable-pcre2-32 \ + --enable-pcre2grep-libz \ + --enable-pcre2test-libedit \ + # --enable-jit + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / + + diff --git a/packages/perl-dbd-mysql/Containerfile b/packages/perl-dbd-mysql/Containerfile new file mode 100644 index 0000000..f751884 --- /dev/null +++ b/packages/perl-dbd-mysql/Containerfile @@ -0,0 +1,36 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=4.052 +ENV SRC_HASH=a83f57af7817787de0ef56fb15fdfaf4f1c952c8f32ff907153b66d2da78ff5b +ENV SRC_FILE=DBD-mysql-${VERSION}.tar.gz +ENV SRC_SITE=https://cpan.metacpan.org/authors/id/D/DV/DVEEDEN/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/perl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/mariadb-connector-c . / +COPY --from=stagex/perl-dbi . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR DBD-mysql-${VERSION} +RUN --network=none <<-EOF + set -eux + perl Makefile.PL + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/perl-dbi/Containerfile b/packages/perl-dbi/Containerfile new file mode 100644 index 0000000..15b2f57 --- /dev/null +++ b/packages/perl-dbi/Containerfile @@ -0,0 +1,34 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.643 +ENV SRC_HASH=8a2b993db560a2c373c174ee976a51027dd780ec766ae17620c20393d2e836fa +ENV SRC_FILE=DBI-${VERSION}.tar.gz +ENV SRC_SITE=https://cpan.metacpan.org/authors/id/T/TI/TIMB/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/perl . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR DBI-${VERSION} +RUN --network=none <<-EOF + set -eux + perl Makefile.PL + PERL_MM_USE_DEFAULT="1 perl -I. Makefile.PL INSTALLDIRS=vendor" + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/perl-yaml-syck/Containerfile b/packages/perl-yaml-syck/Containerfile new file mode 100644 index 0000000..2fb8b56 --- /dev/null +++ b/packages/perl-yaml-syck/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=1.34 +ENV SRC_HASH=cc9156ccaebda798ebfe2f31b619e806577f860ed1704262f17ffad3c6e34159 +ENV SRC_FILE=YAML-Syck-${VERSION}.tar.gz +ENV SRC_SITE=https://cpan.metacpan.org/authors/id/T/TO/TODDR/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/perl . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / + +RUN tar -xf ${SRC_FILE} +WORKDIR YAML-Syck-${VERSION} +RUN --network=none <<-EOF + set -eux \ + export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}') + PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor + make -j "$(nproc)" +EOF + +FROM build AS install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/php/Containerfile b/packages/php/Containerfile new file mode 100644 index 0000000..be46920 --- /dev/null +++ b/packages/php/Containerfile @@ -0,0 +1,180 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV PKG_NAME=php83 +ENV VERSION=8.3.4 +ENV SRC_HASH=c458cf3a9e83764055c6cf15f3348b06645ab499f424b32e33339ada954928db +ENV SRC_FILE=php-${VERSION}RC1.tar.gz +ENV SRC_SITE=https://github.com/php/php-src/archive/refs/tags/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/libunwind . / +COPY --from=stagex/acl . / +COPY --from=stagex/automake . / +COPY --from=stagex/bash . / +COPY --from=stagex/bc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/lld . / +COPY --from=stagex/binutils . / +COPY --from=stagex/llvm . / +COPY --from=stagex/clang . / +COPY --from=stagex/bison . / +COPY --from=stagex/curl . / +COPY --from=stagex/gdbm . / +COPY --from=stagex/lmdb . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/gmp . / +COPY --from=stagex/icu . / +COPY --from=stagex/gettext . / +COPY --from=stagex/openssl . / +COPY --from=stagex/expat . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/re2c . / +COPY --from=stagex/musl . / +COPY --from=stagex/perl . / +COPY --from=stagex/m4 . / +COPY --from=stagex/zlib . / +COPY --from=stagex/lzip . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/bzip2 . / +COPY --from=stagex/python . / +COPY --from=stagex/libedit . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/sqlite3 . / +RUN tar -xf php-${VERSION}RC1.tar.gz +WORKDIR php-src-php-${VERSION}RC1 +COPY *.patch . +RUN --network=none <<-EOF + set -eux + export CFLAGS="-O2" + export CXXFLAGS="-O2" + patch -p1 fix-lfs64-2.patch + patch -p1 fix-tests-devserver.patch + patch -p1 includedir.patch + patch -p1 install-pear.patch + patch -p1 php83-fpm-verison-suffix.patch + patch -p1 phpinfo-avif.patch + patch -p1 sharedir.patch + export CC=clang-18 + export CXX=clang++-18 + ./buildconf --force || { echo "buildconf failed"; cat config.log;} + EXTENSION_DIR=/usr/lib/modules ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --program-suffix=php83#php \ + --libdir=/usr/lib \ + --datadir=/usr/share/php83 \ + --sysconfdir=/etc/php83 \ + --localstatedir=/var \ + --with-layout=GNU \ + --with-pic \ + --with-config-file-path=/etc/php83 \ + --with-config-file-scan-dir=/etc/php83/conf.d \ + --disable-rpath \ + --disable-short-tags \ + --disable-all \ + \ + # --enable-bcmath=shared \ + # --with-bz2=shared \ + # --enable-calendar=shared \ + # --enable-ctype=shared \ + # --with-curl=shared \ + # --enable-dba=shared \ + # --with-dbmaker=shared \ + # --with-gdbm \ + # --with-lmdb \ + # --enable-dom=shared \ + # --with-enchant=shared \ + # --enable-exif=shared \ + # --with-ffi=shared \ + # --enable-fileinfo=shared \ + # --enable-ftp=shared \ + # --enable-gd=shared \ + # --with-avif \ + # --with-freetype \ + # --with-jpeg \ + # --with-webp \ + # --with-xpm \ + # --disable-gd-jis-conv \ + # --with-gettext=shared \ + # --with-gmp=shared \ + # --with-iconv=shared \ + # --with-imap=shared \ + # --with-imap-ssl \ + # --enable-intl=shared \ + # --with-ldap=shared \ + # --with-ldap-sasl \ + # --with-libedit \ + # --with-libxml \ + # --enable-mbstring=shared \ + # --with-mysqli=shared \ + # --with-mysql-sock=/run/mysqld/mysqld.sock \ + # --enable-mysqlnd=shared \ + # --enable-opcache=shared \ + # --with-openssl=shared \ + # --with-kerberos \ + # --with-system-ciphers \ + # --with-password-argon2 \ + # --enable-pcntl=shared \ + # --with-external-pcre \ + # #$without_pcre_jit \ + # --enable-pdo=shared \ + # --with-pdo-dblib=shared,/usr \ + # --with-pdo-mysql=shared,mysqlnd \ + # --with-pdo-odbc=shared,unixODBC,/usr \ + # --with-pdo-pgsql=shared \ + # --with-pdo-sqlite=shared \ + # --with-pgsql=shared \ + # --enable-phar=shared \ + # --enable-posix=shared \ + # --with-pspell=shared \ + # --without-readline \ + # --enable-session=shared \ + # --enable-shmop=shared \ + # --enable-simplexml=shared \ + # --with-snmp=shared \ + # --enable-soap=shared \ + # --with-sodium=shared \ + # --enable-sockets=shared \ + # --with-sqlite3=shared \ + # --enable-sysvmsg=shared \ + # --enable-sysvsem=shared \ + # --enable-sysvshm=shared \ + # --with-tidy=shared \ + # --enable-tokenizer=shared \ + # --with-unixODBC=shared,/usr \ + # --enable-xml=shared \ + # --enable-xmlreader=shared \ + # --enable-xmlwriter=shared \ + # --with-xsl=shared \ + # --with-zip=shared \ + # --with-zlib \ + # --enable-zend-test=shared \ + "$@" + make || { echo "Make failed"; cat config.log; } +EOF + +FROM build AS install +RUN --network=none make INSTALL_ROOT=/rootfs install + +FROM build AS test +RUN /bin/sh -c 'set -eux; \ + if ! make TEST_PHP_ARGS=-j$(nproc) test; then \ + echo "PHP test failed"; \ + exit 1; \ + fi' + +FROM stagex/filesystem AS package +COPY --from=stagex/busybox . / +USER root +RUN rm -rf /var/run +RUN mkdir -p /var && mkdir -p /var/run && chown -R root:root /var/run && chmod -R 755 /var/run +COPY --from=install /rootfs/. / + diff --git a/packages/php/fix-lfs64-2.patch b/packages/php/fix-lfs64-2.patch new file mode 100644 index 0000000..ff66e40 --- /dev/null +++ b/packages/php/fix-lfs64-2.patch @@ -0,0 +1,39 @@ +Patch-Source: https://github.com/php/php-src/commit/577b8ae4226368e66fee7a9b5c58f9e2428372fc +From 577b8ae4226368e66fee7a9b5c58f9e2428372fc Mon Sep 17 00:00:00 2001 +From: Arnaud Le Blanc +Date: Mon, 8 Apr 2024 14:58:12 +0200 +Subject: [PATCH] Fix cookie_seek_function_t signature under musl (#13890) + +Fixes GH-11678 +--- + main/streams/cast.c | 10 +++------- + 1 file changed, 3 insertions(+), 7 deletions(-) + +diff --git a/main/streams/cast.c b/main/streams/cast.c +index 3bad65fbac1f5..8d9f4a9d2d54b 100644 +--- a/main/streams/cast.c ++++ b/main/streams/cast.c +@@ -104,6 +104,9 @@ static ssize_t stream_cookie_writer(void *cookie, const char *buffer, size_t siz + + # ifdef COOKIE_SEEKER_USES_OFF64_T + static int stream_cookie_seeker(void *cookie, off64_t *position, int whence) ++# else ++static int stream_cookie_seeker(void *cookie, off_t *position, int whence) ++# endif + { + + *position = php_stream_seek((php_stream *)cookie, (zend_off_t)*position, whence); +@@ -113,13 +116,6 @@ static int stream_cookie_seeker(void *cookie, off64_t *position, int whence) + } + return 0; + } +-# else +-static int stream_cookie_seeker(void *cookie, zend_off_t position, int whence) +-{ +- +- return php_stream_seek((php_stream *)cookie, position, whence); +-} +-# endif + + static int stream_cookie_closer(void *cookie) + { diff --git a/packages/php/fix-tests-devserver.patch b/packages/php/fix-tests-devserver.patch new file mode 100644 index 0000000..ec335f2 --- /dev/null +++ b/packages/php/fix-tests-devserver.patch @@ -0,0 +1,22 @@ +From: Jakub Jirutka +Date: Mon, 01 May 2017 01:33:00 +0200 +Subject: [PATCH] Fix tests failing due to extra message from built-in web server + +Remove messages like: + + PHP 7.1.4 Development Server started at Mon May 1 00:42:39 2017 + +from test outputs, because tests do not expect them. I have no clue what +happens here... + +--- a/run-tests.php ++++ b/run-tests.php +@@ -2563,6 +2563,9 @@ + // Does the output match what is expected? + $output = preg_replace("/\r\n/", "\n", trim($out)); + ++ // Remove message from built-in development server. ++ $output = preg_replace("/^PHP [0-9.]+ Development Server started at .*\n\n?/m", "", $output); ++ + /* when using CGI, strip the headers from the output */ + $headers = [] \ No newline at end of file diff --git a/packages/php/includedir.patch b/packages/php/includedir.patch new file mode 100644 index 0000000..2aaa2cb --- /dev/null +++ b/packages/php/includedir.patch @@ -0,0 +1,40 @@ +--- a/scripts/Makefile.frag ++++ b/scripts/Makefile.frag +@@ -2,7 +2,7 @@ + # Build environment install + # + +-phpincludedir = $(includedir)/php ++phpincludedir = $(includedir)/php83 + phpbuilddir = $(libdir)/build + + BUILD_FILES = \ +--- a/ext/pdo/Makefile.frag ++++ b/ext/pdo/Makefile.frag +@@ -1,4 +1,4 @@ +-phpincludedir=$(prefix)/include/php ++phpincludedir=$(prefix)/include/php83 + + PDO_HEADER_FILES= \ + php_pdo.h \ +--- a/scripts/php-config.in ++++ b/scripts/php-config.in +@@ -6,7 +6,7 @@ + exec_prefix="@exec_prefix@" + version="@PHP_VERSION@" + vernum="@PHP_VERSION_ID@" +-include_dir="@includedir@/php" ++include_dir="@includedir@/php83" + includes="-I$include_dir -I$include_dir/main -I$include_dir/TSRM -I$include_dir/Zend -I$include_dir/ext -I$include_dir/ext/date/lib" + ldflags="@PHP_LDFLAGS@" + libs="@EXTRA_LIBS@" +--- a/scripts/phpize.in ++++ b/scripts/phpize.in +@@ -5,7 +5,7 @@ + datarootdir='@datarootdir@' + exec_prefix="`eval echo @exec_prefix@`" + phpdir="`eval echo @libdir@`/build" +-includedir="`eval echo @includedir@`/php" ++includedir="`eval echo @includedir@`/php83" + builddir="`pwd`" + SED="@SED@" diff --git a/packages/php/install-pear.patch b/packages/php/install-pear.patch new file mode 100644 index 0000000..54fc64e --- /dev/null +++ b/packages/php/install-pear.patch @@ -0,0 +1,14 @@ +--- ./pear/Makefile.frag.orig 2013-04-12 07:02:27.041602514 +0000 ++++ ./pear/Makefile.frag 2013-04-12 07:04:09.065836822 +0000 +@@ -1,7 +1,10 @@ + peardir=$(PEAR_INSTALLDIR) + ++# help the built php to find xml extension so we can install pear ++PEAR_INSTALL_XML_FLAGS = -d extension="$(top_builddir)/modules/xml.so" -d extension="$(top_builddir)/modules/phar.so" ++ + # Skip all php.ini files altogether +-PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0 ++PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0 $(PEAR_INSTALL_XML_FLAGS) + + WGET = `which wget 2>/dev/null` + FETCH = `which fetch 2>/dev/null` diff --git a/packages/php/loongarch64-support-for-fibers.patch b/packages/php/loongarch64-support-for-fibers.patch new file mode 100644 index 0000000..1a57dbb --- /dev/null +++ b/packages/php/loongarch64-support-for-fibers.patch @@ -0,0 +1,245 @@ +Patch-Source: https://github.com/php/php-src/commit/0766ac6e357282eafb51cbdc5383345e7487260b +From 0766ac6e357282eafb51cbdc5383345e7487260b Mon Sep 17 00:00:00 2001 +From: qiangxuhui +Date: Mon, 1 Apr 2024 07:16:47 +0000 +Subject: [PATCH] loongarch64 support for fibers + +Add loongarch64 assembly files from Boost, needed for fibers support, +and hook up loongarch64 fibers support during configure. + +Close GH-13914 +--- + Zend/asm/jump_loongarch64_sysv_elf_gas.S | 121 +++++++++++++++++++++++ + Zend/asm/make_loongarch64_sysv_elf_gas.S | 72 ++++++++++++++ + configure.ac | 2 + + 3 files changed, 195 insertions(+) + create mode 100644 Zend/asm/jump_loongarch64_sysv_elf_gas.S + create mode 100644 Zend/asm/make_loongarch64_sysv_elf_gas.S + +diff --git a/Zend/asm/jump_loongarch64_sysv_elf_gas.S b/Zend/asm/jump_loongarch64_sysv_elf_gas.S +new file mode 100644 +index 0000000000..74c081e07f +--- /dev/null ++++ b/Zend/asm/jump_loongarch64_sysv_elf_gas.S +@@ -0,0 +1,121 @@ ++/******************************************************* ++ * * ++ * ------------------------------------------------- * ++ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | * ++ * ------------------------------------------------- * ++ * | 0 | 8 | 16 | 24 | * ++ * ------------------------------------------------- * ++ * | FS0 | FS1 | FS2 | FS3 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | * ++ * ------------------------------------------------- * ++ * | 32 | 40 | 48 | 56 | * ++ * ------------------------------------------------- * ++ * | FS4 | FS5 | FS6 | FS7 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | * ++ * ------------------------------------------------- * ++ * | 64 | 72 | 80 | 88 | * ++ * ------------------------------------------------- * ++ * | S0 | S1 | S2 | S3 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | * ++ * ------------------------------------------------- * ++ * | 96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 | * ++ * ------------------------------------------------- * ++ * | S4 | S5 | S6 | S7 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | * ++ * ------------------------------------------------- * ++ * | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 | * ++ * ------------------------------------------------- * ++ * | S8 | FP | RA | PC | * ++ * ------------------------------------------------- * ++ * * ++ * *****************************************************/ ++ ++.file "jump_loongarch64_sysv_elf_gas.S" ++.text ++.globl jump_fcontext ++.align 2 ++.type jump_fcontext,@function ++jump_fcontext: ++ # reserve space on stack ++ addi.d $sp, $sp, -160 ++ ++ # save fs0 - fs7 ++ fst.d $fs0, $sp, 0 ++ fst.d $fs1, $sp, 8 ++ fst.d $fs2, $sp, 16 ++ fst.d $fs3, $sp, 24 ++ fst.d $fs4, $sp, 32 ++ fst.d $fs5, $sp, 40 ++ fst.d $fs6, $sp, 48 ++ fst.d $fs7, $sp, 56 ++ ++ # save s0 - s8, fp, ra ++ st.d $s0, $sp, 64 ++ st.d $s1, $sp, 72 ++ st.d $s2, $sp, 80 ++ st.d $s3, $sp, 88 ++ st.d $s4, $sp, 96 ++ st.d $s5, $sp, 104 ++ st.d $s6, $sp, 112 ++ st.d $s7, $sp, 120 ++ st.d $s8, $sp, 128 ++ st.d $fp, $sp, 136 ++ st.d $ra, $sp, 144 ++ ++ # save RA as PC ++ st.d $ra, $sp, 152 ++ ++ # store SP (pointing to context-data) in A2 ++ move $a2, $sp ++ ++ # restore SP (pointing to context-data) from A0 ++ move $sp, $a0 ++ ++ # load fs0 - fs7 ++ fld.d $fs0, $sp, 0 ++ fld.d $fs1, $sp, 8 ++ fld.d $fs2, $sp, 16 ++ fld.d $fs3, $sp, 24 ++ fld.d $fs4, $sp, 32 ++ fld.d $fs5, $sp, 40 ++ fld.d $fs6, $sp, 48 ++ fld.d $fs7, $sp, 56 ++ ++ #load s0 - s7 ++ ld.d $s0, $sp, 64 ++ ld.d $s1, $sp, 72 ++ ld.d $s2, $sp, 80 ++ ld.d $s3, $sp, 88 ++ ld.d $s4, $sp, 96 ++ ld.d $s5, $sp, 104 ++ ld.d $s6, $sp, 112 ++ ld.d $s7, $sp, 120 ++ ld.d $s8, $sp, 128 ++ ld.d $fp, $sp, 136 ++ ld.d $ra, $sp, 144 ++ ++ # return transfer_t from jump ++ # pass transfer_t as first arg in context function ++ # a0 == FCTX, a1 == DATA ++ move $a0, $a2 ++ ++ # load PC ++ ld.d $a2, $sp, 152 ++ ++ # restore stack ++ addi.d $sp, $sp, 160 ++ ++ # jump to context ++ jr $a2 ++.size jump_fcontext, .-jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",%progbits +diff --git a/Zend/asm/make_loongarch64_sysv_elf_gas.S b/Zend/asm/make_loongarch64_sysv_elf_gas.S +new file mode 100644 +index 0000000000..55062702f1 +--- /dev/null ++++ b/Zend/asm/make_loongarch64_sysv_elf_gas.S +@@ -0,0 +1,72 @@ ++/******************************************************* ++ * * ++ * ------------------------------------------------- * ++ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | * ++ * ------------------------------------------------- * ++ * | 0 | 8 | 16 | 24 | * ++ * ------------------------------------------------- * ++ * | FS0 | FS1 | FS2 | FS3 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | * ++ * ------------------------------------------------- * ++ * | 32 | 40 | 48 | 56 | * ++ * ------------------------------------------------- * ++ * | FS4 | FS5 | FS6 | FS7 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | * ++ * ------------------------------------------------- * ++ * | 64 | 72 | 80 | 88 | * ++ * ------------------------------------------------- * ++ * | S0 | S1 | S2 | S3 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | * ++ * ------------------------------------------------- * ++ * | 96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 | * ++ * ------------------------------------------------- * ++ * | S4 | S5 | S6 | S7 | * ++ * ------------------------------------------------- * ++ * ------------------------------------------------- * ++ * | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | * ++ * ------------------------------------------------- * ++ * | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 | * ++ * ------------------------------------------------- * ++ * | S8 | FP | RA | PC | * ++ * ------------------------------------------------- * ++ * * ++ * *****************************************************/ ++ ++.file "make_loongarch64_sysv_elf_gas.S" ++.text ++.globl make_fcontext ++.align 2 ++.type make_fcontext,@function ++make_fcontext: ++ # shift address in A0 to lower 16 byte boundary ++ bstrins.d $a0, $zero, 3, 0 ++ ++ # reserve space for context-data on context-stack ++ addi.d $a0, $a0, -160 ++ ++ # third arg of make_fcontext() == address of context-function ++ st.d $a2, $a0, 152 ++ ++ # save address of finish as return-address for context-function ++ # will be entered after context-function returns ++ la.local $a4, finish ++ st.d $a4, $a0, 144 ++ ++ # return pointer to context-data ++ jr $ra ++ ++finish: ++ # exit code is zero ++ li.d $a0, 0 ++ # call _exit(0) ++ b %plt(_exit) ++ ++.size make_fcontext, .-make_fcontext ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",%progbits +diff --git a/configure.ac b/configure.ac +index 2bf60c434d..da646ac69f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1253,6 +1253,7 @@ AS_CASE([$host_cpu], + [riscv64*], [fiber_cpu="riscv64"], + [sparc64], [fiber_cpu="sparc64"], + [s390x*], [fiber_cpu="s390x"], ++ [loongarch64*], [fiber_cpu="loongarch64"], + [mips64*], [fiber_cpu="mips64"], + [mips*], [fiber_cpu="mips32"], + [fiber_cpu="unknown"] +@@ -1275,6 +1276,7 @@ AS_CASE([$fiber_cpu], + [riscv64], [fiber_asm_file_prefix="riscv64_sysv"], + [sparc64], [fiber_asm_file_prefix="sparc64_sysv"], + [s390x], [fiber_asm_file_prefix="s390x_sysv"], ++ [loongarch64], [fiber_asm_file_prefix="loongarch64_sysv"], + [mips64], [fiber_asm_file_prefix="mips64_n64"], + [mips32], [fiber_asm_file_prefix="mips32_o32"], + [fiber_asm_file_prefix="unknown"] +-- +2.44.0 diff --git a/packages/php/php83-fpm-verson-suffix.patch b/packages/php/php83-fpm-verson-suffix.patch new file mode 100644 index 0000000..0de56c0 --- /dev/null +++ b/packages/php/php83-fpm-verson-suffix.patch @@ -0,0 +1,79 @@ +--- a/sapi/fpm/fpm/fpm_conf.c ++++ b/sapi/fpm/fpm/fpm_conf.c +@@ -1262,7 +1262,7 @@ + } + + if (!fpm_global_config.error_log) { +- fpm_global_config.error_log = strdup("log/php-fpm.log"); ++ fpm_global_config.error_log = strdup("log/php83/error.log"); + } + + #ifdef HAVE_SYSTEMD +@@ -1273,7 +1273,7 @@ + + #ifdef HAVE_SYSLOG_H + if (!fpm_global_config.syslog_ident) { +- fpm_global_config.syslog_ident = strdup("php-fpm"); ++ fpm_global_config.syslog_ident = strdup("php-fpm83"); + } + + if (fpm_global_config.syslog_facility < 0) { +@@ -1777,7 +1777,7 @@ + if (fpm_globals.prefix == NULL) { + spprintf(&tmp, 0, "%s/php-fpm.conf", PHP_SYSCONFDIR); + } else { +- spprintf(&tmp, 0, "%s/etc/php-fpm.conf", fpm_globals.prefix); ++ spprintf(&tmp, 0, "%s/etc/php83/php-fpm.conf", fpm_globals.prefix); + } + + if (!tmp) { + +--- a/sapi/fpm/php-fpm.conf.in ++++ b/sapi/fpm/php-fpm.conf.in +@@ -16,3 +16,3 @@ + ; Default Value: none +-;pid = run/php-fpm.pid ++;pid = run/php-fpm83.pid + +@@ -22,4 +22,4 @@ + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ +-; Default Value: log/php-fpm.log +-;error_log = log/php-fpm.log ++; Default Value: log/php83/error.log ++;error_log = log/php83/error.log + +@@ -35,4 +35,4 @@ + ; which must suit common needs. +-; Default Value: php-fpm +-;syslog.ident = php-fpm ++; Default Value: php-fpm83 ++;syslog.ident = php-fpm83 + +--- a/sapi/fpm/www.conf.in ++++ b/sapi/fpm/www.conf.in +@@ -273,7 +273,7 @@ + + ; The access log file + ; Default: not set +-;access.log = log/$pool.access.log ++;access.log = log/php83/$pool.access.log + + ; The access log format. + ; The following syntax is allowed +@@ -337,7 +337,7 @@ + ; The log file for slow requests + ; Default Value: not set + ; Note: slowlog is mandatory if request_slowlog_timeout is set +-;slowlog = log/$pool.log.slow ++;slowlog = log/php83/$pool.slow.log + + ; The timeout for serving a single request after which a PHP backtrace will be + ; dumped to the 'slowlog' file. A value of '0s' means 'off'. +@@ -450,6 +450,6 @@ + ; specified at startup with the -d argument + ;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com + ;php_flag[display_errors] = off +-;php_admin_value[error_log] = /var/log/fpm-php.www.log ++;php_admin_value[error_log] = /var/log/php83/$pool.error.log + ;php_admin_flag[log_errors] = on + ;php_admin_value[memory_limit] = 32M diff --git a/packages/php/phpinfo-avif.patch b/packages/php/phpinfo-avif.patch new file mode 100644 index 0000000..b2af4ea --- /dev/null +++ b/packages/php/phpinfo-avif.patch @@ -0,0 +1,30 @@ +Patch-Source: https://github.com/php/php-src/pull/7526 +From d3402bfd3e9a87b1d4ce3785e393e698746c645c Mon Sep 17 00:00:00 2001 +From: Andy Postnikov +Date: Tue, 28 Sep 2021 23:35:37 +0300 +Subject: [PATCH] display libavif version and codecs via phpinfo() + +--- + ext/gd/gd.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/ext/gd/gd.c b/ext/gd/gd.c +index 880d6dddc7d7..67349e8749bf 100644 +--- a/ext/gd/gd.c ++++ b/ext/gd/gd.c +@@ -455,6 +455,15 @@ + #endif + #ifdef HAVE_GD_AVIF + php_info_print_table_row(2, "AVIF Support", "enabled"); ++#ifdef HAVE_GD_BUNDLED ++#include ++ { ++ php_info_print_table_row(2, "AVIF Version", avifVersion()); ++ char tmp[256]; ++ avifCodecVersions(tmp); ++ php_info_print_table_row(2, "AVIF Codecs", tmp); ++ } ++#endif + #endif + #ifdef HAVE_GD_TGA + php_info_print_table_row(2, "TGA Read Support", "enabled"); diff --git a/packages/php/sharedir.patch b/packages/php/sharedir.patch new file mode 100644 index 0000000..900c41d --- /dev/null +++ b/packages/php/sharedir.patch @@ -0,0 +1,11 @@ +--- a/php.ini-production ++++ b/php.ini-production +@@ -742,7 +742,7 @@ + ;;;;;;;;;;;;;;;;;;;;;;;;; + + ; UNIX: "/path1:/path2" +-;include_path = ".:/php/includes" ++include_path = ".:/usr/share/php83" + ; + ; Windows: "\path1;\path2" + ;include_path = ".;c:\php\includes" \ No newline at end of file diff --git a/packages/re2c/Containerfile b/packages/re2c/Containerfile new file mode 100644 index 0000000..9476e5f --- /dev/null +++ b/packages/re2c/Containerfile @@ -0,0 +1,37 @@ +FROM scratch as base +ENV VERSION=3.1 +ENV SRC_HASH=087c44de0400fb15caafde09fd72edc7381e688a35ef505ee65e0e3d2fac688b +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/skvadrik/re2c/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch as build +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/binutils . / +COPY --from=stagex/busybox . / +COPY --from=stagex/libtool . / +COPY --from=stagex/perl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/make . / +COPY --from=stagex/m4 . / +COPY --from=stagex/musl . / +RUN tar -xvf $SRC_FILE +WORKDIR re2c-${VERSION} +RUN --network=none <<-EOF + set -eux + autoreconf -i -W all + ./configure \ + --prefix=/usr + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/rhash/Containerfile b/packages/rhash/Containerfile new file mode 100644 index 0000000..eb0cc15 --- /dev/null +++ b/packages/rhash/Containerfile @@ -0,0 +1,36 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.4.4 +ENV SRC_HASH=8e7d1a8ccac0143c8fe9b68ebac67d485df119ea17a613f4038cda52f84ef52a +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/rhash/RHash/archive/refs/tags/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/openssl . / +RUN tar -xf ${SRC_FILE} +WORKDIR RHash-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-openssl \ + --disable-openssl-runtime + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/samurai/CVE-2021-30218.patch b/packages/samurai/CVE-2021-30218.patch new file mode 100644 index 0000000..de534d4 --- /dev/null +++ b/packages/samurai/CVE-2021-30218.patch @@ -0,0 +1,29 @@ +From e84b6d99c85043fa1ba54851ee500540ec206918 Mon Sep 17 00:00:00 2001 +From: Michael Forney +Date: Fri, 2 Apr 2021 17:27:48 -0700 +Subject: [PATCH] util: Check for NULL string in writefile + +This check was there previously, but was removed in f549b757 with +the addition of a check during parse that every rule has rspfile +if and only if it has rspfile_content. However, this fails to +consider the possibility of those variables coming from the edge +or global environment. So, re-add the check. + +Fixes #67. +--- + util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/util.c b/util.c +index ea5c3ce..2a59881 100644 +--- a/util.c ++++ b/util.c +@@ -258,7 +258,7 @@ writefile(const char *name, struct string *s) + return -1; + } + ret = 0; +- if (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0) { ++ if (s && (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0)) { + warn("write %s:", name); + ret = -1; + } \ No newline at end of file diff --git a/packages/samurai/CVE-2021-30219.patch b/packages/samurai/CVE-2021-30219.patch new file mode 100644 index 0000000..a1b7b8c --- /dev/null +++ b/packages/samurai/CVE-2021-30219.patch @@ -0,0 +1,26 @@ +From d2af3bc375e2a77139c3a28d6128c60cd8d08655 Mon Sep 17 00:00:00 2001 +From: Michael Forney +Date: Sun, 4 Apr 2021 03:50:09 -0700 +Subject: [PATCH] parse: Check for non-empty command/rspfile/rspfile_content + +This matches ninja behavior and prevents the possibility of a rule +with an empty (NULL) command string. + +Fixes #68. +--- + parse.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/parse.c b/parse.c +index f79a5ee..b4b98a1 100644 +--- a/parse.c ++++ b/parse.c +@@ -42,6 +42,8 @@ parserule(struct scanner *s, struct environment *env) + var = scanname(s); + parselet(s, &val); + ruleaddvar(r, var, val); ++ if (!val) ++ continue; + if (strcmp(var, "command") == 0) + hascommand = true; + else if (strcmp(var, "rspfile") == 0) \ No newline at end of file diff --git a/packages/samurai/Containerfile b/packages/samurai/Containerfile new file mode 100644 index 0000000..bbe7f14 --- /dev/null +++ b/packages/samurai/Containerfile @@ -0,0 +1,33 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.2 +ENV SRC_HASH=3b8cf51548dfc49b7efe035e191ff5e1963ebc4fe8f6064a5eefc5343eaf78a5 +ENV SRC_FILE=samurai-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/michaelforney/samurai/releases/download/${VERSION}/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/pkgconf . / +RUN tar -xf ${SRC_FILE} +WORKDIR samurai-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux \ + patch -p1 CVE-2021-30218.patch + patch -p1 CVE-2021-30219.patch + make CFLAGS="-O2" CC=gcc +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/scdoc/Containerfile b/packages/scdoc/Containerfile new file mode 100644 index 0000000..188e448 --- /dev/null +++ b/packages/scdoc/Containerfile @@ -0,0 +1,30 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.11.3 +ENV SRC_HASH=4c5c6136540384e5455b250f768e7ca11b03fdba1a8efc2341ee0f1111e57612 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://git.sr.ht/~sircmpwn/scdoc/archive/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR scdoc-${VERSION} +RUN --network=none <<-EOF + set -eux + make PREFIX="/usr" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / + diff --git a/packages/skalibs/Containerfile b/packages/skalibs/Containerfile new file mode 100644 index 0000000..28e24ef --- /dev/null +++ b/packages/skalibs/Containerfile @@ -0,0 +1,34 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.14.1.1 +ENV SRC_HASH=b6b79b816f4ba0b6801676b0ed4179b59c8c7809eeffe26db672e404636befc3 +ENV SRC_FILE=skalibs-${VERSION}.tar.gz +ENV SRC_SITE=https://skarnet.org/software/skalibs/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR skalibs-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --enable-shared \ + --enable-static \ + --prefix=/usr \ + --libdir=/usr/lib + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/unixodbc/Containerfile b/packages/unixodbc/Containerfile new file mode 100644 index 0000000..17b2ac5 --- /dev/null +++ b/packages/unixodbc/Containerfile @@ -0,0 +1,46 @@ + +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=2.3.12 +ENV SRC_HASH=f210501445ce21bf607ba51ef8c125e10e22dffdffec377646462df5f01915ec +ENV SRC_FILE=unixODBC-${VERSION}.tar.gz +ENV SRC_SITE=https://www.unixodbc.org/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} +FROM fetch as build +COPY --from=stagex/perl . / +COPY --from=stagex/bash . / +COPY --from=stagex/m4 . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/libtool . / +COPY --from=stagex/postgresql . / +RUN tar -xf $SRC_FILE +WORKDIR unixODBC-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --disable-nls \ + --enable-gui=no \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/util-macros/Containerfile b/packages/util-macros/Containerfile new file mode 100644 index 0000000..6a85a5b --- /dev/null +++ b/packages/util-macros/Containerfile @@ -0,0 +1,37 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=1.20.0 +ENV SRC_HASH=0b86b262dbe971edb4ff233bc370dfad9f241d09f078a3f6d5b7f4b8ea4430db +ENV SRC_FILE=util-macros-${VERSION}.tar.xz +ENV SRC_SITE=https://www.x.org/releases/individual/util/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/bash . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/m4 . / +COPY --from=stagex/gawk . / +RUN tar -xf ${SRC_FILE} +WORKDIR util-macros-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/utmps/Containerfile b/packages/utmps/Containerfile new file mode 100644 index 0000000..035aaaa --- /dev/null +++ b/packages/utmps/Containerfile @@ -0,0 +1,39 @@ +FROM scratch as base +ARG ARCH=x86_64 +ENV VERSION=0.1.2.2 +ENV SRC_HASH=f7ffa3714c65973bb95fbcf1501c06fc0478d93a51cea1b373ec6811c2425f52 +ENV SRC_FILE=utmps-${VERSION}.tar.gz +ENV SRC_SITE=https://skarnet.org/software/utmps/${SRC_FILE} + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch as build +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/skalibs . / +RUN tar -xf ${SRC_FILE} +WORKDIR utmps-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --enable-shared \ + --enable-static \ + --prefix=/usr \ + --disable-allstatic \ + --libdir=/usr/lib \ + --libexecdir=/lib/utmps \ + --with-lib=/usr/lib \ + --with-dynlib=/lib + make +EOF + +FROM build as install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch b/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch new file mode 100644 index 0000000..e5a2761 --- /dev/null +++ b/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch @@ -0,0 +1,76 @@ +From 1d79a03d86a2f10051e902b97a3bf08cf038d06a Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Tue, 6 Aug 2024 12:53:55 +0200 +Subject: [PATCH] posix: Define _XOPEN_SOURCE/_GNU_SOURCE for signal funcs + +Fixes https://gitlab.gnome.org/GNOME/vala/-/issues/1558 +--- + vapi/posix.vapi | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) + +diff --git a/vapi/posix.vapi b/vapi/posix.vapi +index caa0f41f8..91e03ff5c 100644 +--- a/vapi/posix.vapi ++++ b/vapi/posix.vapi +@@ -1590,35 +1590,35 @@ namespace Posix { + short si_addr_lsb; + } + +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int kill (pid_t pid, int signum); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int killpg (pid_t pgpr, int signum); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] + public int raise (int signum); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public void psignal (int signum, string message); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigemptyset (out sigset_t sigset); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigfillset (out sigset_t sigset); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigaddset (ref sigset_t sigset, int signo); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigdelset (ref sigset_t sigset, int __signo); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigismember (sigset_t sigset, int __signo); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigprocmask (int how, sigset_t sigset, out sigset_t oset); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigqueue (pid_t pid, int signum, sigval_t val); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigsuspend (sigset_t sigset); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigpending (sigset_t sigset); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigwait (sigset_t sigset, out int sig); +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] + public int sigaction (int signum, sigaction_t? act, out sigaction_t? oldact); + + [CCode (has_target = false, cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] +@@ -1636,7 +1636,7 @@ namespace Posix { + [CCode (cheader_filename = "signal.h")] + public sighandler_t SIG_IGN; + +- [CCode (cheader_filename = "signal.h")] ++ [CCode (cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] + public sighandler_t signal (int signum, sighandler_t? handler); + + [CCode (cheader_filename = "stdio.h")] +-- +2.46.0 \ No newline at end of file diff --git a/packages/vala/Containerfile b/packages/vala/Containerfile new file mode 100644 index 0000000..ceab7db --- /dev/null +++ b/packages/vala/Containerfile @@ -0,0 +1,46 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=0.56.16 +ENV SRC_HASH=05487b5600f5d2f09e66a753cccd8f39c1bff9f148aea1b7774d505b9c8bca9b +ENV SRC_FILE=vala-${VERSION}.tar.xz +ENV SRC_SITE=https://download.gnome.org/sources/vala/0.56/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/glib . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bison . / +COPY --from=stagex/binutils . / +COPY --from=stagex/libunwind . / +COPY --from=stagex/zlib . / +COPY --from=stagex/flex . / +COPY --from=stagex/perl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libtool . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR vala-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux + patch -p1 < 0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch + CFLAGS="-O2 -flto=auto" \ + CXXFLAGS="$-O2 -flto=auto" \ + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/xmlto/Containerfile b/packages/xmlto/Containerfile new file mode 100644 index 0000000..82cabbe --- /dev/null +++ b/packages/xmlto/Containerfile @@ -0,0 +1,49 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=0.0.29 +ENV SRC_HASH=40504db68718385a4eaa9154a28f59e51e59d006d1aa14f5bc9d6fded1d6017a +ENV SRC_FILE=xmlto-${VERSION}.tar.gz +ENV SRC_SITE=https://www.pagure.io/xmlto/archive/${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/perl . / +COPY --from=stagex/glib . / +COPY --from=stagex/bash . / +COPY --from=stagex/gettext . / +COPY --from=stagex/musl . / +COPY --from=stagex/automake . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/gcc . / +COPY --from=stagex/libxslt . / +COPY --from=stagex/docbook-xsl . / +COPY --from=stagex/busybox . / +COPY --from=stagex/zlib . / +COPY --from=stagex/perl-pod-parser . / +COPY --from=stagex/perl-yaml-syck . / +COPY --from=stagex/libtool . / +COPY --from=stagex/binutils . / +COPY --from=stagex/m4 . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/make . / +RUN tar -xf ${SRC_FILE} +WORKDIR xmlto-${VERSION} +RUN --network=none <<-EOF + set -eux + autoreconf -vfi + ./configure \ + --build=${ARCH}-linux-musl \ + --host=${ARCH}-linux-musl \ + --prefix=/usr \ + --mandir=/usr/share/man + make -j "$(nproc)" +EOF + +FROM build AS install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/xorgproto/Containerfile b/packages/xorgproto/Containerfile new file mode 100644 index 0000000..67ac2bd --- /dev/null +++ b/packages/xorgproto/Containerfile @@ -0,0 +1,45 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=2024.1 +ENV SRC_HASH=4f6b9b4faf91e5df8265b71843a91fc73dc895be6210c84117a996545df296ce +ENV SRC_FILE=xorgproto-${VERSION}.tar.gz +ENV SRC_SITE=https://xorg.freedesktop.org/archive/individual/proto/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/abuild . / +COPY --from=stagex/ninja . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/perl . / +COPY --from=stagex/binutils . / +COPY --from=stagex/util-macros . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/meson . / +COPY --from=stagex/m4 . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/zlib . / +RUN tar -xf ${SRC_FILE} +WORKDIR xorgproto-${VERSION} +RUN --network=none <<-EOF + set -eux + abuild-meson \ + --datadir=/usr/lib \ + -Dlegacy=true \ + . output + meson compile -C output +EOF + +FROM build AS install +RUN make DESTDIR=/rootfs install +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / From 4adfe0902d90ac10cdf4b54e89ecce33038577e3 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Sat, 17 Aug 2024 00:41:04 -0400 Subject: [PATCH 29/57] fix: remove packages that aren't compiling and clean up --- packages/abuild/Containerfile | 37 - packages/acl/Containerfile | 12 +- packages/apache2/Containerfile | 78 -- packages/apr-util/Containerfile | 17 +- packages/apr-util/musl-fix-testsuite.patch | 19 + packages/argon2/Containerfile | 9 +- packages/aspell/Containerfile | 12 +- packages/attr/Containerfile | 12 +- packages/brotli/Containerfile | 10 +- packages/dbus-glib/Containerfile | 44 - packages/dbus/Containerfile | 49 - packages/enchant2/Containerfile | 51 - packages/expat/Containerfile | 11 +- packages/fmt/Containerfile | 12 +- packages/gdbm/Containerfile | 12 +- packages/glib/Containerfile | 12 +- packages/groff/Containerfile | 11 +- packages/hunspell/Containerfile | 13 +- packages/krb5/Containerfile | 11 +- packages/libaio/Containerfile | 14 +- packages/libedit/Containerfile | 11 +- packages/libevent/Containerfile | 15 +- packages/libiconv/Containerfile | 14 +- packages/libsm/Containerfile | 44 - packages/libsodium/Containerfile | 2 - packages/libverto/Containerfile | 13 +- packages/libx11/Containerfile | 40 - packages/libxcb/Containerfile | 42 - packages/linux-pam/Containerfile | 13 +- packages/lmdb/Containerfile | 2 +- packages/mariadb-connector-c/Containerfile | 50 - .../incorrect-sys-poll.patch | 11 - .../unused-paramater.patch | 25 - packages/mariadb/Containerfile | 121 --- packages/mariadb/disable-failing-test.patch | 30 - packages/mariadb/gcc13.patch | 40 - packages/mariadb/have-stacktrace.patch | 21 - packages/mariadb/lfs64.patch | 936 ------------------ packages/mariadb/pcc-remove-glibc-dep.patch | 36 - packages/mariadb/revert-c432c9ef.patch | 0 packages/nasm/Containerfile | 38 - packages/nuspell/Containerfile | 1 + packages/oniguruma/Containerfile | 44 - packages/openldap/Containerfile | 12 +- packages/pcre2/Containerfile | 11 +- packages/perl-dbd-mysql/Containerfile | 36 - packages/perl-dbi/Containerfile | 13 +- packages/perl-yaml-syck/Containerfile | 1 + packages/php/Containerfile | 11 +- packages/re2c/Containerfile | 12 +- packages/rhash/Containerfile | 12 +- packages/samurai/Containerfile | 14 +- packages/scdoc/Containerfile | 12 +- packages/skalibs/Containerfile | 12 +- packages/unixodbc/Containerfile | 12 +- packages/util-macros/Containerfile | 12 +- packages/utmps/Containerfile | 10 +- ...PEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch | 76 -- packages/vala/Containerfile | 46 - packages/xorgproto/Containerfile | 45 - src/packages.mk | 736 +++++++++++++- 61 files changed, 950 insertions(+), 2128 deletions(-) delete mode 100644 packages/abuild/Containerfile delete mode 100644 packages/apache2/Containerfile create mode 100644 packages/apr-util/musl-fix-testsuite.patch delete mode 100644 packages/dbus-glib/Containerfile delete mode 100644 packages/dbus/Containerfile delete mode 100644 packages/enchant2/Containerfile delete mode 100644 packages/libsm/Containerfile delete mode 100644 packages/libx11/Containerfile delete mode 100644 packages/libxcb/Containerfile delete mode 100644 packages/mariadb-connector-c/Containerfile delete mode 100644 packages/mariadb-connector-c/incorrect-sys-poll.patch delete mode 100644 packages/mariadb-connector-c/unused-paramater.patch delete mode 100644 packages/mariadb/Containerfile delete mode 100644 packages/mariadb/disable-failing-test.patch delete mode 100644 packages/mariadb/gcc13.patch delete mode 100644 packages/mariadb/have-stacktrace.patch delete mode 100644 packages/mariadb/lfs64.patch delete mode 100644 packages/mariadb/pcc-remove-glibc-dep.patch delete mode 100644 packages/mariadb/revert-c432c9ef.patch delete mode 100644 packages/nasm/Containerfile delete mode 100644 packages/oniguruma/Containerfile delete mode 100644 packages/perl-dbd-mysql/Containerfile delete mode 100644 packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch delete mode 100644 packages/vala/Containerfile delete mode 100644 packages/xorgproto/Containerfile diff --git a/packages/abuild/Containerfile b/packages/abuild/Containerfile deleted file mode 100644 index 882c483..0000000 --- a/packages/abuild/Containerfile +++ /dev/null @@ -1,37 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=3.12.0 -ENV SRC_HASH=5783e04ededa21ffa3f600551a7e2ca6db1c8e1a962a868311f5e5e4560908ce -ENV SRC_FILE=abuild-${VERSION}.tar.gz -ENV SRC_SITE=https://gitlab.alpinelinux.org/alpine/abuild/-/archive/${VERSION}/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/meson . / -COPY --from=stagex/openssl . / -COPY --from=stagex/make . / -COPY --from=stagex/lzip . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/zlib . / -COPY --from=stagex/elfutils . / -COPY --from=stagex/scdoc . / -RUN tar -xf ${SRC_FILE} -WORKDIR abuild-${VERSION} -RUN --network=none <<-EOF - set -eux - make VERSION="${VERSION}-r5" -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / - diff --git a/packages/acl/Containerfile b/packages/acl/Containerfile index a17639e..9e1088e 100644 --- a/packages/acl/Containerfile +++ b/packages/acl/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.3.2 ENV SRC_HASH=5f2bdbad629707aa7d85c623f994aa8a1d2dec55a73de5205bac0bf6058a2f7c ENV SRC_FILE=acl-${VERSION}.tar.gz ENV SRC_SITE=https://download.savannah.nongnu.org/releases/acl/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -25,12 +25,12 @@ RUN --network=none <<-EOF --prefix=/usr \ --libdir=/usr/lib \ --libexecdir=/usr/libexec - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/apache2/Containerfile b/packages/apache2/Containerfile deleted file mode 100644 index 2485d72..0000000 --- a/packages/apache2/Containerfile +++ /dev/null @@ -1,78 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=2.4.59 -ENV SRC_HASH=ec51501ec480284ff52f637258135d333230a7d229c3afa6f6c2f9040e321323 -ENV SRC_FILE=httpd-${VERSION}.tar.bz2 -ENV SRC_SITE=https://dlcdn.apache.org/httpd/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/expat . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -COPY --from=stagex/autoconf . / -COPY --from=stagex/automake . / -COPY --from=stagex/brotli . / -COPY --from=stagex/openssl . / -COPY --from=stagex/zlib . / -COPY --from=stagex/libxml2 . / -COPY --from=stagex/pcre2 . / -COPY --from=stagex/lua . / - -RUN tar -xf ${SRC_FILE} -WORKDIR httpd-${VERSION} -RUN --network=none <<-EOF - set -eux - ./configure \ - --prefix=/usr \ - --enable-so \ - --enable-suexec \ - --with-suexec-caller=apache \ - --with-suexec-docroot=/var/www \ - --with-suexec-logfile=/var/log/apache2/suexec.log \ - --with-suexec-bin=/usr/sbin/suexec \ - --with-suexec-uidmin=99 \ - --with-suexec-gidmin=99 \ - --with-apr=/usr/bin/apr-1-config \ - --with-apr-util=/usr/bin/apu-1-config \ - --with-pcre=/usr \ - --enable-mods-shared=all \ - --enable-mpms-shared=all \ - --with-mpm=prefork \ - --enable-ssl \ - --with-ssl \ - --enable-proxy \ - --enable-cache \ - --enable-disk-cache \ - --enable-mem-cache \ - --enable-file-cache \ - --enable-ldap \ - --enable-authnz-ldap \ - --enable-cgid \ - --enable-cgi \ - --enable-authn-anon \ - --enable-authn-alias \ - --disable-imagemap \ - --enable-proxy-connect \ - --enable-proxy-http \ - --enable-proxy-ftp \ - --enable-deflate \ - --enable-dbd \ - --enable-exception-hook \ - --enable-dav \ - --enable-dav-fs \ - --enable-dav-lock - make -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/apr-util/Containerfile b/packages/apr-util/Containerfile index 9022ca6..eafe6de 100644 --- a/packages/apr-util/Containerfile +++ b/packages/apr-util/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.6.3 ENV SRC_HASH=a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5 ENV SRC_FILE=apr-util-${VERSION}.tar.bz2 ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -20,11 +20,16 @@ COPY --from=stagex/openldap . / COPY --from=stagex/sqlite3 . / COPY --from=stagex/openssl . / COPY --from=stagex/postgresql . / +COPY --from=stagex/apr . / +COPY --from=stagex/libtool . / +COPY --from=stagex/util-linux . / RUN tar -xf ${SRC_FILE} WORKDIR apr-util-${VERSION} +COPY *.patch . RUN --network=none <<-EOF set -eux + patch -p1 < musl-fix-testsuite.patch ./configure \ --prefix=/usr \ --with-apr=/usr \ @@ -37,12 +42,12 @@ RUN --network=none <<-EOF --without-sqlite2 \ --with-dbm=ndbm \ --with-ndbm - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/apr-util/musl-fix-testsuite.patch b/packages/apr-util/musl-fix-testsuite.patch new file mode 100644 index 0000000..eb2c510 --- /dev/null +++ b/packages/apr-util/musl-fix-testsuite.patch @@ -0,0 +1,19 @@ +diff --git a/test/testxlate.c b/test/testxlate.c +index 6981eff..de00fa4 100644 +--- a/test/testxlate.c ++++ b/test/testxlate.c +@@ -116,8 +116,12 @@ static void test_transformation(abts_case *tc, void *data) + } + + /* 4. Transformation using charset aliases */ +- one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p); +- one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p); ++ if (is_transform_supported(tc, "UTF-8", "UTF-7", p)) { ++ one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p); ++ } ++ if (is_transform_supported(tc, "UTF-7", "UTF-8", p)) { ++ one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p); ++ } + } + + #endif /* APR_HAS_XLATE */ diff --git a/packages/argon2/Containerfile b/packages/argon2/Containerfile index 319466b..265bc17 100644 --- a/packages/argon2/Containerfile +++ b/packages/argon2/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=20190702 ENV SRC_HASH=daf972a89577f8772602bf2eb38b6a3dd3d922bf5724d45e7f9589b5e830442c ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/P-H-C/phc-winner-argon2/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -17,7 +18,7 @@ RUN tar -xf $SRC_FILE WORKDIR phc-winner-argon2-${VERSION} RUN --network=none <<-EOF set -eux - make -j $(nproc) OPTTARGET=none ARGON2_VERSION=${VERSION} + make -j "$(nproc)" OPTTARGET=none ARGON2_VERSION=${VERSION} EOF FROM build as install diff --git a/packages/aspell/Containerfile b/packages/aspell/Containerfile index 46913e6..d56683e 100644 --- a/packages/aspell/Containerfile +++ b/packages/aspell/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=0.60.8.1 ENV SRC_HASH=d6da12b34d42d457fa604e435ad484a74b2effcd120ff40acd6bb3fb2887d21b ENV SRC_FILE=aspell-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/aspell/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/perl . / COPY --from=stagex/binutils . / @@ -27,12 +27,12 @@ RUN --network=none <<-EOF --sysconfdir=/etc \ --enable-dict-dir=/usr/share/aspell \ --enable-pkgdatadir=/usr/share/aspell - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN --network=none make DESTDIR="/rootfs" install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/attr/Containerfile b/packages/attr/Containerfile index 0f04f12..a8d8dc8 100644 --- a/packages/attr/Containerfile +++ b/packages/attr/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.5.2 ENV SRC_HASH=39bf67452fa41d0948c2197601053f48b3d78a029389734332a6309a680c6c87 ENV SRC_FILE=attr-${VERSION}.tar.gz ENV SRC_SITE=https://download.savannah.nongnu.org/releases/attr/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -32,12 +32,12 @@ RUN --network=none <<-EOF --docdir=/usr/share/doc/attr \ --datadir=/usr/share \ --disable-nls - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/brotli/Containerfile b/packages/brotli/Containerfile index 4c540ea..be02f79 100644 --- a/packages/brotli/Containerfile +++ b/packages/brotli/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.1.0 ENV SRC_HASH=e720a6ca29428b803f4ad165371771f5398faba397edf6778837a18599ea13ff ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/google/brotli/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -34,9 +34,9 @@ RUN --network=none <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN DESTDIR=/rootfs cmake --install build RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/dbus-glib/Containerfile b/packages/dbus-glib/Containerfile deleted file mode 100644 index 0ff10e2..0000000 --- a/packages/dbus-glib/Containerfile +++ /dev/null @@ -1,44 +0,0 @@ - -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=0.112 -ENV SRC_HASH=7d550dccdfcd286e33895501829ed971eeb65c614e73aadb4a08aeef719b143a -ENV SRC_FILE=dbus-glib-${VERSION}.tar.gz -ENV SRC_SITE=https://dbus.freedesktop.org/releases/dbus-glib/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch AS build -COPY --from=stagex/glib . / -COPY --from=stagex/gettext . / -COPY --from=stagex/expat . / -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/dbus . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -RUN tar -xf ${SRC_FILE} -WORKDIR dbus-glib-${VERSION} -RUN ls -la . -RUN --network=none <<-EOF - set -eux \ - CFLAGS="-flto=auto" \ - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --enable-static=no \ - --enable-bash-completion=no - make -j "$(nproc)" -EOF - -FROM build AS install -RUN DESTDIR=/rootfs cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/dbus/Containerfile b/packages/dbus/Containerfile deleted file mode 100644 index c1af810..0000000 --- a/packages/dbus/Containerfile +++ /dev/null @@ -1,49 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=1.14.10 -ENV SRC_HASH=ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f -ENV SRC_FILE=dbus-${VERSION}.tar.xz -ENV SRC_SITE=https://dbus.freedesktop.org/releases/dbus/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch AS build -COPY --from=stagex/glib . / -COPY --from=stagex/gettext . / -COPY --from=stagex/expat . / -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/meson . / -COPY --from=stagex/busybox . / -COPY --from=stagex/libsm . / -COPY --from=stagex/binutils . / -COPY --from=stagex/m4 . / -COPY --from=stagex/xmlto . / -COPY --from=stagex/make . / -COPY --from=stagex/automake . / -COPY --from=stagex/autoconf . / -RUN tar -xf ${SRC_FILE} -WORKDIR dbus-${VERSION} -RUN ls -la . -RUN --network=none <<-EOF - set -eux - ./autogen.sh - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --localstatedir=/var \ - --sysconfdir=/etc \ - --with-system-pid-file=/run/dbus/dbus.pid \ - --enable-checks \ - --disable-asserts - make -j "$(nproc)" -EOF - -FROM build AS install -RUN DESTDIR=/rootfs cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/enchant2/Containerfile b/packages/enchant2/Containerfile deleted file mode 100644 index 60873d9..0000000 --- a/packages/enchant2/Containerfile +++ /dev/null @@ -1,51 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=2.6.9 -ENV SRC_HASH=d9a5a10dc9b38a43b3a0fa22c76ed6ebb7e09eb535aff62954afcdbd40efff6b -ENV SRC_FILE=enchant-${VERSION}.tar.gz -ENV SRC_SITE=https://github.com/AbiWord/enchant/releases/download/v${VERSION}/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/perl . / -COPY --from=stagex/file . / -COPY --from=stagex/bash . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -COPY --from=stagex/openssl . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/linux-headers . / -COPY --from=stagex/glib . / -COPY --from=stagex/groff . / -COPY --from=stagex/hunspell . / -COPY --from=stagex/pcre2 . / -COPY --from=stagex/gettext . / -COPY --from=stagex/aspell . / -COPY --from=stagex/file . / -COPY --from=stagex/nuspell . / -RUN tar -xf ${SRC_FILE} -WORKDIR enchant-${VERSION} -RUN --network=none <<-EOF - set -eux - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --disable-static \ - --with-aspell \ - --with-hunspell \ - --with-nuspell - make -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/expat/Containerfile b/packages/expat/Containerfile index 9ad6408..694519c 100644 --- a/packages/expat/Containerfile +++ b/packages/expat/Containerfile @@ -1,14 +1,15 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.6.2 ENV SRC_HASH=d4cf38d26e21a56654ffe4acd9cd5481164619626802328506a2869afab29ab3 ENV SRC_FILE=expat-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/libexpat/libexpat/releases/download/R_2_6_2/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / @@ -27,9 +28,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/fmt/Containerfile b/packages/fmt/Containerfile index e4cd9a2..30e338b 100644 --- a/packages/fmt/Containerfile +++ b/packages/fmt/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=10.2.1 ENV SRC_HASH=1250e4cc58bf06ee631567523f48848dc4596133e163f02615c97f78bab6c811 ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/fmtlib/fmt/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -24,7 +24,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR fmt-${VERSION} COPY *.patch . RUN --network=none <<-EOF - set -eux \ + set -eux patch -p1 fix-handling-of-static-separator.patch # Build in-tree so the prebuilt docs get installed correctly. # See https://github.com/fmtlib/fmt/issues/2837 @@ -37,9 +37,9 @@ RUN --network=none <<-EOF cmake --build . EOF -FROM build as install +FROM build AS install RUN DESTDIR=/rootfs cmake --install . RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/gdbm/Containerfile b/packages/gdbm/Containerfile index 10ec402..aece6cb 100644 --- a/packages/gdbm/Containerfile +++ b/packages/gdbm/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.23 ENV SRC_HASH=74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd ENV SRC_FILE=gdbm-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/gdbm/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -29,12 +29,12 @@ RUN --network=none <<-EOF --disable-largefile \ --disable-dependency-tracking \ --enable-fast-install - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/glib/Containerfile b/packages/glib/Containerfile index fc8f17d..d384940 100644 --- a/packages/glib/Containerfile +++ b/packages/glib/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.80.0 ENV SRC_HASH=8228a92f92a412160b139ae68b6345bd28f24434a7b5af150ebe21ff587a561d ENV SRC_FILE=glib-${VERSION}.tar.xz ENV SRC_SITE=https://download.gnome.org/sources/glib/2.80/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/python . / COPY --from=stagex/zlib . / COPY --from=stagex/bzip2 . / @@ -41,7 +41,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR glib-${VERSION} COPY *.patch . RUN --network=none <<-EOF - # set -eux \ + set -eux patch -p1 alwaysbash.patch patch -p1 deprecated-no-warn.patch patch -p1 fix-tests.patch @@ -63,9 +63,9 @@ RUN --network=none <<-EOF meson install --no-rebuild -C output EOF -FROM build as install +FROM build AS install RUN DESTDIR=/rootfs meson install --no-rebuild -C output RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/groff/Containerfile b/packages/groff/Containerfile index c14ccd7..de92356 100644 --- a/packages/groff/Containerfile +++ b/packages/groff/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.23.0 ENV SRC_HASH=6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13 ENV SRC_FILE=groff-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/groff/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/m4 . / COPY --from=stagex/busybox . / @@ -29,9 +30,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/hunspell/Containerfile b/packages/hunspell/Containerfile index 12759bc..99bf8a5 100644 --- a/packages/hunspell/Containerfile +++ b/packages/hunspell/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.7.2 ENV SRC_HASH=11ddfa39afe28c28539fe65fc4f1592d410c1e9b6dd7d8a91ca25d85e9ec65b8 ENV SRC_FILE=hunspell-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/hunspell/hunspell/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch + +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -27,12 +28,12 @@ RUN --network=none <<-EOF --with-readline \ --disable-static \ --without-included-gettext - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/krb5/Containerfile b/packages/krb5/Containerfile index ea58b2e..49c3727 100644 --- a/packages/krb5/Containerfile +++ b/packages/krb5/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.21.2 ENV SRC_HASH=9560941a9d843c0243a71b17a7ac6fe31c7cebb5bce3983db79e52ae7e850491 ENV SRC_FILE=krb5-${VERSION}.tar.gz ENV SRC_SITE=https://kerberos.org/dist/krb5/1.21/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/bash . / COPY --from=stagex/m4 . / @@ -54,9 +55,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libaio/Containerfile b/packages/libaio/Containerfile index f15148d..92a1722 100644 --- a/packages/libaio/Containerfile +++ b/packages/libaio/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=0.3.113 ENV SRC_HASH=716c7059703247344eb066b54ecbc3ca2134f0103307192e6c2b7dab5f9528ab ENV SRC_FILE=libaio-libaio-${VERSION}.tar.gz ENV SRC_SITE=https://pagure.io/libaio/archive/libaio-${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/bash . / COPY --from=stagex/gcc . / @@ -21,17 +21,17 @@ RUN tar -xf ${SRC_FILE} WORKDIR libaio-libaio-${VERSION} COPY *.patch . RUN --network=none <<-EOF - set -eux \ + set -eux patch -p1 libaio-cppflags.patch patch -p1 libaio-errno.patch patch -p1 test-poll.patch patch -p1 test.patch - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libedit/Containerfile b/packages/libedit/Containerfile index 8fd9f15..fc43410 100644 --- a/packages/libedit/Containerfile +++ b/packages/libedit/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=20230828-3.1 ENV SRC_HASH=4ee8182b6e569290e7d1f44f0f78dac8716b35f656b76528f699c69c98814dad ENV SRC_FILE=libedit-${VERSION}.tar.gz ENV SRC_SITE=https://www.thrysoee.dk/editline/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/ncurses . / COPY --from=stagex/gawk . / @@ -33,11 +34,11 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libevent/Containerfile b/packages/libevent/Containerfile index 90afaa2..d25e1f6 100644 --- a/packages/libevent/Containerfile +++ b/packages/libevent/Containerfile @@ -1,16 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.1.12 ENV SRC_HASH=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb ENV SRC_FILE=libevent-${VERSION}-stable.tar.gz ENV SRC_SITE=https://github.com/libevent/libevent/releases/download/release-${VERSION}-stable/${SRC_FILE} - # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz - # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz - # https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/bash . / COPY --from=stagex/busybox . / COPY --from=stagex/musl . / @@ -18,7 +16,6 @@ COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/openssl . / -RUN ls -lah RUN tar -xf $SRC_FILE WORKDIR libevent-${VERSION}-stable RUN --network=none <<-EOF @@ -31,11 +28,11 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libiconv/Containerfile b/packages/libiconv/Containerfile index 6be6a8b..75a3a9f 100644 --- a/packages/libiconv/Containerfile +++ b/packages/libiconv/Containerfile @@ -1,15 +1,15 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.17 -ENV SRC_HASH=8e7d1a8ccac0143c8fe9b68ebac67d485df119ea17a613f4038cda52f84ef52a +ENV SRC_HASH=8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313 ENV SRC_FILE=libiconv-${VERSION}.tar.gz ENV SRC_SITE=https://ftp.gnu.org/gnu/libiconv/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -26,12 +26,12 @@ RUN --network=none <<-EOF --sysconfdir=/etc \ --enable-openssl \ --disable-openssl-runtime - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libsm/Containerfile b/packages/libsm/Containerfile deleted file mode 100644 index 9d50110..0000000 --- a/packages/libsm/Containerfile +++ /dev/null @@ -1,44 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=1.2.4 -ENV SRC_HASH=fdcbe51e4d1276b1183da77a8a4e74a137ca203e0bcfb20972dd5f3347e97b84 -ENV SRC_FILE=libSM-${VERSION}.tar.xz -ENV SRC_SITE=https://www.x.org/releases/individual/lib/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . - -FROM fetch AS build -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/musl . / -COPY --from=stagex/make . / -COPY --from=stagex/gcc . / -COPY --from=stagex/xmlto . / -COPY --from=stagex/xorgproto . / -RUN tar -xf ${SRC_FILE} -WORKDIR libSM-${VERSION} -RUN --network=none <<-EOF - set -ex - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --sysconfdir=/etc \ - --with-libuuid \ - --enable-docs \ - --with-xmlto \ - --without-fop - make - - make -j "$(nproc)" -EOF - -FROM build AS install -RUN --network=none <<-EOF - set -eu - make DESTDIR="/rootfs" install -EOF - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/libsodium/Containerfile b/packages/libsodium/Containerfile index a6547f5..273256b 100644 --- a/packages/libsodium/Containerfile +++ b/packages/libsodium/Containerfile @@ -22,8 +22,6 @@ RUN --network=none <<-EOF --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ --prefix=/usr - make - make -j "$(nproc)" EOF diff --git a/packages/libverto/Containerfile b/packages/libverto/Containerfile index e305436..53a4e5a 100644 --- a/packages/libverto/Containerfile +++ b/packages/libverto/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=0.3.2 ENV SRC_HASH=8d1756fd704f147549f606cd987050fb94b0b1ff621ea6aa4d6bf0b74450468a ENV SRC_FILE=libverto-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/latchset/libverto/releases/download/0.3.2/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/bash . / COPY --from=stagex/m4 . / @@ -39,7 +40,6 @@ COPY --from=stagex/libedit . / COPY --from=stagex/python . / COPY --from=stagex/libevent . / COPY --from=stagex/pkgconf . / - RUN tar -xf $SRC_FILE WORKDIR libverto-${VERSION} RUN --network=none <<-EOF @@ -54,11 +54,10 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -RUN ls -la . RUN find /rootfs -exec touch -hcd "@0" "{}" + RUN mv /rootfs/usr/lib/libverto-libevent.so.* /rootfs/usr/lib/ -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/libx11/Containerfile b/packages/libx11/Containerfile deleted file mode 100644 index 6109a4c..0000000 --- a/packages/libx11/Containerfile +++ /dev/null @@ -1,40 +0,0 @@ - -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=1.8.9 -ENV SRC_HASH=57ca5f07d263788ad661a86f4139412e8b699662e6b60c20f1f028c25a935e48 -ENV SRC_FILE=libX11-${VERSION}.tar.gz -ENV SRC_SITE=https://www.x.org/releases/individual/lib/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/libxslt . / -RUN tar -xf ${SRC_FILE} -WORKDIR libX11-${VERSION} -RUN --network=none <<-EOF - set -eux - ./configure - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --localstatedir=/var \ - --disable-xf86bigfont - make -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/libxcb/Containerfile b/packages/libxcb/Containerfile deleted file mode 100644 index 2437fb2..0000000 --- a/packages/libxcb/Containerfile +++ /dev/null @@ -1,42 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=1.16.1 -ENV SRC_HASH=ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f -ENV SRC_FILE=libxcb-${VERSION}.tar.xz -ENV SRC_SITE=https://xorg.freedesktop.org/archive/individual/lib/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/expat . / -COPY --from=stagex/busybox . / -COPY --from=stagex/bash . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/meson . / -COPY --from=stagex/glib . / -RUN tar -xf ${SRC_FILE} -WORKDIR libxcb-${VERSION} -RUN --network=none <<-EOF - set -eux - export CFLAGS="-flto=auto" - ./configure - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --enable-xkb \ - --enable-xinput \ - --disable-xprint - make -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/linux-pam/Containerfile b/packages/linux-pam/Containerfile index 4190963..2b9e54f 100644 --- a/packages/linux-pam/Containerfile +++ b/packages/linux-pam/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.6.1 ENV SRC_HASH=f8923c740159052d719dbfc2a2f81942d68dd34fcaf61c706a02c9b80feeef8e ENV SRC_FILE=Linux-PAM-${VERSION}.tar.xz ENV SRC_SITE=https://github.com/linux-pam/linux-pam/releases/download/v${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -45,13 +45,12 @@ RUN --network=none <<-EOF --disable-examples \ --sbindir=/usr/sbin \ --enable-securedir=/usr/lib/security - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install -RUN ls -la /rootfs RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/lmdb/Containerfile b/packages/lmdb/Containerfile index da56059..228e20d 100644 --- a/packages/lmdb/Containerfile +++ b/packages/lmdb/Containerfile @@ -23,7 +23,7 @@ RUN --network=none <<-EOF set -eux \ patch -p1 lmdb-make.patch export CFLAGS="-O2 -fPIC" - make + make -j "$(nproc)" EOF FROM build AS install diff --git a/packages/mariadb-connector-c/Containerfile b/packages/mariadb-connector-c/Containerfile deleted file mode 100644 index 3bf7492..0000000 --- a/packages/mariadb-connector-c/Containerfile +++ /dev/null @@ -1,50 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=3.3.9 -ENV SRC_HASH=062b9ec5c26cbb236a78f0ba26981272053f59bdfc113040bab904a9da36d31f -ENV SRC_FILE=v${VERSION}.tar.gz -ENV SRC_SITE=https://github.com/mariadb-corporation/mariadb-connector-c/archive/refs/tags/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/cmake . / -COPY --from=stagex/samurai . / -COPY --from=stagex/openssl . / -COPY --from=stagex/libzstd . / -COPY --from=stagex/zlib . / -COPY --from=stagex/ninja . / -COPY --from=stagex/linux-headers . / -RUN tar -xf ${SRC_FILE} -WORKDIR mariadb-connector-c-${VERSION} -COPY *.patch . -RUN --network=none <<-EOF - set -eux - patch -p1 < incorrect-sys-poll.patch - patch -p1 < unused-parameter.patch - cmake -B build -G Ninja \ - -DCMAKE_BUILD_TYPE=MinSizeRel \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DBUILD_SHARED_LIBS=True \ - -DINSTALL_LIBDIR=lib \ - -DINSTALL_INCLUDEDIR=include/mysql \ - \ - -DMARIADB_PORT=3306 \ - -DMARIADB_UNIX_ADDR=/run/mysqld/mysqld.sock \ - -DWITH_EXTERNAL_ZLIB=YES \ - -DWITH_MYSQLCOMPAT=ON \ - -DWITH_SSL=OPENSSL - cmake --build build -EOF - -FROM build as install -RUN DESTDIR=/rootfs cmake --install build - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/mariadb-connector-c/incorrect-sys-poll.patch b/packages/mariadb-connector-c/incorrect-sys-poll.patch deleted file mode 100644 index 764ab46..0000000 --- a/packages/mariadb-connector-c/incorrect-sys-poll.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/plugins/pvio/pvio_socket.c -+++ b/plugins/pvio/pvio_socket.c -@@ -39,7 +39,7 @@ - #include - #endif - #ifdef HAVE_POLL --#include -+#include - #endif - #ifdef HAVE_SYS_IOCTL_H - #include \ No newline at end of file diff --git a/packages/mariadb-connector-c/unused-paramater.patch b/packages/mariadb-connector-c/unused-paramater.patch deleted file mode 100644 index 384a2c7..0000000 --- a/packages/mariadb-connector-c/unused-paramater.patch +++ /dev/null @@ -1,25 +0,0 @@ -These functions are implemented in assembly for x86 and x86_64. -On other architectures, they are no-ops, and so parameters are unused. - -Starting from version 3.3.7, mariadb-connector-c is compiled with "-Werror" -turned on, so allow unused parameters here with GCC's Diagnostic Pragma: -https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html - ---- a/libmariadb/ma_context.c -+++ b/libmariadb/ma_context.c -@@ -692,6 +692,9 @@ - #endif /* MY_CONTEXT_USE_WIN32_FIBERS */ - - #ifdef MY_CONTEXT_DISABLE -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wunused-parameter" -+ - int - my_context_continue(struct my_context *c) - { -@@ -723,4 +726,5 @@ - { - } - -+#pragma GCC diagnostic pop - #endif \ No newline at end of file diff --git a/packages/mariadb/Containerfile b/packages/mariadb/Containerfile deleted file mode 100644 index 30c995f..0000000 --- a/packages/mariadb/Containerfile +++ /dev/null @@ -1,121 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=10.11.7 -ENV SRC_HASH=5239a245ed90517e96396605cd01ccd8f73cd7442d1b3076b6ffe258110e5157 -ENV SRC_FILE=mariadb-${VERSION}.tar.gz -ENV SRC_SITE=https://rsync.osuosl.org/pub/mariadb/mariadb-${VERSION}/source/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/make . / -COPY --from=stagex/perl . / -COPY --from=stagex/bison . / -COPY --from=stagex/cmake . / -COPY --from=stagex/libaio . / -COPY --from=stagex/libarchive . / -COPY --from=stagex/libevent . / -COPY --from=stagex/libxml2 . / -COPY --from=stagex/linux-headers . / -COPY --from=stagex/linux-pam . / -COPY --from=stagex/ncurses . / -COPY --from=stagex/pcre2 . / -COPY --from=stagex/samurai . / -COPY --from=stagex/xz . / -COPY --from=stagex/openssl . / -COPY --from=stagex/readline . / -COPY --from=stagex/fmt . / -COPY --from=stagex/libzstd . / -COPY --from=stagex/mariadb-connector-c . / -RUN tar -xf ${SRC_FILE} -WORKDIR mariadb-${VERSION} -COPY *.patch . -RUN --network=none <<-EOF - set -eux - # patch -p1 < disable-failing-test.patch - # patch -p1 < gcc13.patch - # patch -p1 < have-stacktrace.patch - # patch -p1 < lfs64.patch - # patch -p1 < pcc-remove-glibc-dep.patch - cmake -B build -G Ninja -Wno-dev \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCOMPILATION_COMMENT="StageX" \ - -DSYSCONFDIR=/etc \ - -DSYSCONF2DIR=/etc/my.cnf.d \ - -DMYSQL_DATADIR=/var/lib/mysql \ - -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock \ - -DDEFAULT_CHARSET=utf8mb4 \ - -DDEFAULT_COLLATION=utf8mb4_general_ci \ - -DENABLED_LOCAL_INFILE=ON \ - -DINSTALL_INFODIR=share/info \ - -DINSTALL_MANDIR=share/man \ - -DINSTALL_PAMDIR=/lib/security \ - -DINSTALL_PLUGINDIR=lib/mariadb/plugin \ - -DINSTALL_SCRIPTDIR=bin \ - -DINSTALL_INCLUDEDIR=include/mysql \ - -DINSTALL_DOCREADMEDIR=share/doc/mariadb \ - -DINSTALL_SUPPORTFILESDIR=share/mariadb \ - -DINSTALL_MYSQLSHAREDIR=share/mariadb \ - -DINSTALL_DOCDIR=share/doc/mariadb \ - -DTMPDIR=/var/tmp \ - -DCONNECT_WITH_MYSQL=ON \ - -DCONNECT_WITH_LIBXML2=system \ - -DCONNECT_WITH_ODBC=NO \ - -DCONNECT_WITH_JDBC=NO \ - -DPLUGIN_ARCHIVE=YES \ - -DPLUGIN_ARIA=YES \ - -DPLUGIN_BLACKHOLE=YES \ - -DPLUGIN_CASSANDRA=NO \ - -DPLUGIN_CSV=YES \ - -DPLUGIN_MYISAM=YES \ - -DPLUGIN_MROONGA=NO \ - -DPLUGIN_OQGRAPH=NO \ - -DPLUGIN_PARTITION=STATIC \ - -DPLUGIN_ROCKSDB=NO \ - -DPLUGIN_SPHINX=NO \ - -DPLUGIN_TOKUDB=NO \ - -DPLUGIN_AUTH_GSSAPI=NO \ - -DPLUGIN_AUTH_GSSAPI_CLIENT=OFF \ - -DPLUGIN_CRACKLIB_PASSWORD_CHECK=NO \ - -DWITH_ASAN=OFF \ - -DWITH_EMBEDDED_SERVER=ON \ - -DWITH_EXTRA_CHARSETS=complex \ - -DWITH_INNODB_BZIP2=OFF \ - -DWITH_INNODB_LZ4=OFF \ - -DWITH_INNODB_LZMA=ON \ - -DWITH_INNODB_LZO=OFF \ - -DWITH_INNODB_SNAPPY=OFF \ - -DWITH_ROCKSDB_BZIP2=OFF \ - -DWITH_ROCKSDB_JEMALLOC=OFF \ - -DWITH_ROCKSDB_LZ4=OFF \ - -DWITH_ROCKSDB_ZSTD=ON \ - -DWITH_ROCKSDB_SNAPPY=OFF \ - -DWITH_JEMALLOC=NO \ - -DWITH_LIBARCHIVE=system \ - -DWITH_LIBFMT=system \ - -DWITH_LIBNUMA=NO \ - -DWITH_LIBWRAP=OFF \ - -DWITH_LIBWSEP=OFF \ - -DWITH_MARIABACKUP=ON \ - -DWITH_PCRE=system \ - -DWITH_READLINE=ON \ - -DWITH_SYSTEMD=no \ - -DWITH_SSL=system \ - -DWITH_VALGRIND=OFF \ - -DWITH_ZLIB=system \ - -DSKIP_TESTS=ON - cmake --build build -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/mariadb/disable-failing-test.patch b/packages/mariadb/disable-failing-test.patch deleted file mode 100644 index 62ab944..0000000 --- a/packages/mariadb/disable-failing-test.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/storage/maria/unittest/CMakeLists.txt b/storage/maria/unittest/CMakeLists.txt -index a2da150..fd04ef4 100644 ---- a/storage/maria/unittest/CMakeLists.txt -+++ b/storage/maria/unittest/CMakeLists.txt -@@ -60,10 +60,10 @@ ADD_EXECUTABLE(ma_test_loghandler_readonly-t - ma_test_loghandler_multigroup-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c sequence_storage.c) - MY_ADD_TEST(ma_test_loghandler_readonly) - --SET_TARGET_PROPERTIES(ma_test_loghandler_readonly-t PROPERTIES COMPILE_FLAGS "-DREADONLY_TEST") --ADD_EXECUTABLE(ma_test_loghandler_nologs-t -- ma_test_loghandler_nologs-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c) --MY_ADD_TEST(ma_test_loghandler_nologs) -+#SET_TARGET_PROPERTIES(ma_test_loghandler_readonly-t PROPERTIES COMPILE_FLAGS "-DREADONLY_TEST") -+#ADD_EXECUTABLE(ma_test_loghandler_nologs-t -+# ma_test_loghandler_nologs-t.c ma_maria_log_cleanup.c ma_loghandler_examples.c) -+#MY_ADD_TEST(ma_test_loghandler_nologs) - - SET(ma_pagecache_single_src ma_pagecache_single.c test_file.c test_file.h) - SET(ma_pagecache_consist_src ma_pagecache_consist.c test_file.c test_file.h) ---- a/unittest/mysys/CMakeLists.txt 2020-11-10 14:15:06.000000000 +0100 -+++ b/unittest/mysys/CMakeLists.txt 2020-11-24 21:08:46.721183004 +0100 -@@ -15,7 +15,7 @@ - - MY_ADD_TESTS(bitmap base64 my_atomic my_rdtsc lf my_malloc my_getopt dynstring - byte_order -- queues stacktrace crc32 LINK_LIBRARIES mysys) -+ queues crc32 LINK_LIBRARIES mysys) - MY_ADD_TESTS(my_vsnprintf LINK_LIBRARIES strings mysys) - MY_ADD_TESTS(aes LINK_LIBRARIES mysys mysys_ssl) - ADD_DEFINITIONS(${SSL_DEFINES}) \ No newline at end of file diff --git a/packages/mariadb/gcc13.patch b/packages/mariadb/gcc13.patch deleted file mode 100644 index 67123a0..0000000 --- a/packages/mariadb/gcc13.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- a/storage/rocksdb/rocksdb/util/string_util.h -+++ b/storage/rocksdb/rocksdb/util/string_util.h -@@ -6,6 +6,7 @@ - - #pragma once - -+#include - #include - #include - #include ---- a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h -+++ b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h -@@ -8,6 +8,7 @@ - #pragma once - #ifndef ROCKSDB_LITE - -+#include - #include - #include - #include "rocksdb/status.h" ---- a/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h -+++ b/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h -@@ -5,6 +5,7 @@ - - #pragma once - -+#include - #include - #include - ---- a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h -+++ b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h -@@ -6,6 +6,7 @@ - #pragma once - - #include "rocksdb/rocksdb_namespace.h" -+#include - - struct CompactionIterationStats { - // Compaction statistics diff --git a/packages/mariadb/have-stacktrace.patch b/packages/mariadb/have-stacktrace.patch deleted file mode 100644 index 24f8b3f..0000000 --- a/packages/mariadb/have-stacktrace.patch +++ /dev/null @@ -1,21 +0,0 @@ -https://jira.mariadb.org/browse/MDEV-24131 - -diff --git a/unittest/mysys/stacktrace-t.c b/unittest/mysys/stacktrace-t.c -index 8fa0db15b36..67eb099028e 100644 ---- a/unittest/mysys/stacktrace-t.c -+++ b/unittest/mysys/stacktrace-t.c -@@ -22,6 +22,14 @@ - - char b_bss[10]; - -+#ifndef HAVE_STACKTRACE -+int my_safe_print_str(const char* val, size_t max_len) -+{ -+ printf("%*s\n", (int) max_len, val); -+ return 0; -+} -+#endif -+ - void test_my_safe_print_str() - { - char b_stack[10]; \ No newline at end of file diff --git a/packages/mariadb/lfs64.patch b/packages/mariadb/lfs64.patch deleted file mode 100644 index d08f1a1..0000000 --- a/packages/mariadb/lfs64.patch +++ /dev/null @@ -1,936 +0,0 @@ -needed since https://github.com/bminor/musl/commit/25e6fee27f4a293728dd15b659170e7b9c7db9bc --- -diff --git a/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h b/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h -index 0a389db6..6e3c900f 100644 ---- a/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h -+++ b/storage/columnstore/columnstore/dbcon/execplan/objectidmanager.h -@@ -129,7 +129,7 @@ class ObjectIDManager - * @param offset the offset to start reading at - * @param size the number of bytes to read into buf - */ -- void readData(uint8_t* buf, off64_t offset, int size) const; -+ void readData(uint8_t* buf, off_t offset, int size) const; - - /** @brief Reliably writes data to the bitmap file - * -@@ -140,7 +140,7 @@ class ObjectIDManager - * @param offset the offset to start writing at - * @param size the number of bytes to write - */ -- void writeData(uint8_t* buf, off64_t offset, int size) const; -+ void writeData(uint8_t* buf, off_t offset, int size) const; - - /** @brief If there is no bitmap file yet, this is used to make one - * -diff --git a/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read b/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read -index d5368cfa..18754df4 100644 ---- a/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read -+++ b/storage/columnstore/columnstore/primitives/blockcache/iomanager.cpp.single-read -@@ -115,7 +115,7 @@ void* thr_popper(void* arg) { - #endif - - longSeekOffset=(uint64_t)offset * (uint64_t)fileBlockSize; -- lseek64(fd, longSeekOffset, SEEK_SET); -+ lseek(fd, longSeekOffset, SEEK_SET); - totalRqst++; - dlen = (fr->BlocksRequested() > extentSize ? extentSize : fr->BlocksRequested()); - sz=0; -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp b/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp -index e2e9b3a9..3bb30fd1 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp -+++ b/storage/columnstore/columnstore/utils/cloudio/SMComm.cpp -@@ -192,7 +192,7 @@ int SMComm::stat(const string& filename, struct stat* statbuf) - common_exit(command, response, err); - } - --int SMComm::truncate(const string& filename, const off64_t length) -+int SMComm::truncate(const string& filename, const off_t length) - { - ByteStream* command = buffers.getByteStream(); - ByteStream* response = buffers.getByteStream(); -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMComm.h b/storage/columnstore/columnstore/utils/cloudio/SMComm.h -index bb46304b..51edc0be 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMComm.h -+++ b/storage/columnstore/columnstore/utils/cloudio/SMComm.h -@@ -50,7 +50,7 @@ class SMComm : public boost::noncopyable - - // added this one because it should be trivial to implement in SM, and prevents a large - // operation in SMDataFile. -- int truncate(const std::string& filename, const off64_t length); -+ int truncate(const std::string& filename, const off_t length); - - int listDirectory(const std::string& path, std::list* entries); - -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp -index 84eab1ac..0d827c16 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp -+++ b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.cpp -@@ -38,7 +38,7 @@ SMDataFile::SMDataFile(const char* name, int _openmode, const struct stat& _stat - comm = SMComm::get(); - } - --ssize_t SMDataFile::pread(void* buf, off64_t offset, size_t count) -+ssize_t SMDataFile::pread(void* buf, off_t offset, size_t count) - { - return comm->pread(name(), buf, count, offset); - } -@@ -63,7 +63,7 @@ ssize_t SMDataFile::write(const void* buf, size_t count) - return ret; - } - --int SMDataFile::seek(off64_t offset, int whence) -+int SMDataFile::seek(off_t offset, int whence) - { - switch (whence) - { -@@ -83,18 +83,18 @@ int SMDataFile::seek(off64_t offset, int whence) - return 0; - } - --int SMDataFile::truncate(off64_t length) -+int SMDataFile::truncate(off_t length) - { - return comm->truncate(name(), length); - } - --int SMDataFile::fallocate(int mode, off64_t offset, off64_t length) -+int SMDataFile::fallocate(int mode, off_t offset, off_t length) - { - idbassert_s(mode == 0, "SMDataFile::fallocate() does not support mode != 0 right now."); - return comm->truncate(name(), offset + length); - } - --off64_t SMDataFile::size() -+off_t SMDataFile::size() - { - struct stat _stat; - int err = comm->stat(name(), &_stat); -@@ -104,7 +104,7 @@ off64_t SMDataFile::size() - return _stat.st_size; - } - --off64_t SMDataFile::tell() -+off_t SMDataFile::tell() - { - return position; - } -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h -index 1d77edd6..6bd9b20f 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h -+++ b/storage/columnstore/columnstore/utils/cloudio/SMDataFile.h -@@ -30,14 +30,14 @@ class SMDataFile : public IDBDataFile - public: - virtual ~SMDataFile(); - -- ssize_t pread(void* ptr, off64_t offset, size_t count); -+ ssize_t pread(void* ptr, off_t offset, size_t count); - ssize_t read(void* ptr, size_t count); - ssize_t write(const void* ptr, size_t count); -- int seek(off64_t offset, int whence); -- int truncate(off64_t length); -- int fallocate(int mode, off64_t offset, off64_t length); -- off64_t size(); -- off64_t tell(); -+ int seek(off_t offset, int whence); -+ int truncate(off_t length); -+ int fallocate(int mode, off_t offset, off_t length); -+ off_t size(); -+ off_t tell(); - int flush(); - time_t mtime(); - int close(); -@@ -48,7 +48,7 @@ class SMDataFile : public IDBDataFile - private: - SMDataFile(); - SMDataFile(const char* fname, int openmode, const struct stat&); -- off64_t position; -+ off_t position; - int openmode; - SMComm* comm; - -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp -index 96fe25d3..c15653ad 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp -+++ b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.cpp -@@ -38,7 +38,7 @@ int SMFileSystem::mkdir(const char* path) - return 0; - } - --off64_t SMFileSystem::size(const char* filename) const -+off_t SMFileSystem::size(const char* filename) const - { - struct stat _stat; - -@@ -50,7 +50,7 @@ off64_t SMFileSystem::size(const char* filename) const - return _stat.st_size; - } - --off64_t SMFileSystem::compressedSize(const char* filename) const -+off_t SMFileSystem::compressedSize(const char* filename) const - { - // Yikes, punting on this one. - throw NotImplementedYet(__func__); -diff --git a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h -index 0e60f533..bace23fb 100644 ---- a/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h -+++ b/storage/columnstore/columnstore/utils/cloudio/SMFileSystem.h -@@ -33,8 +33,8 @@ class SMFileSystem : public IDBFileSystem, boost::noncopyable - - // why are some of these const and some not const in IDBFileSystem? - int mkdir(const char* pathname); -- off64_t size(const char* path) const; -- off64_t compressedSize(const char* path) const; -+ off_t size(const char* path) const; -+ off_t compressedSize(const char* path) const; - int remove(const char* pathname); - int rename(const char* oldpath, const char* newpath); - bool exists(const char* pathname) const; -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp -index 6d7c5834..cb3f2510 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp -+++ b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.cpp -@@ -67,7 +67,7 @@ BufferedFile::~BufferedFile() - delete[] m_buffer; - } - --ssize_t BufferedFile::pread(void* ptr, off64_t offset, size_t count) -+ssize_t BufferedFile::pread(void* ptr, off_t offset, size_t count) - { - ssize_t ret = 0; - int savedErrno; -@@ -122,7 +122,7 @@ ssize_t BufferedFile::read(void* ptr, size_t count) - ssize_t BufferedFile::write(const void* ptr, size_t count) - { - ssize_t ret = 0; -- off64_t offset = tell(); -+ off_t offset = tell(); - int savedErrno = 0; - size_t progress = 0; - uint8_t* ptr8 = (uint8_t*)ptr; -@@ -150,7 +150,7 @@ ssize_t BufferedFile::write(const void* ptr, size_t count) - return progress; - } - --int BufferedFile::seek(off64_t offset, int whence) -+int BufferedFile::seek(off_t offset, int whence) - { - int ret = 0; - int savedErrno; -@@ -168,7 +168,7 @@ int BufferedFile::seek(off64_t offset, int whence) - return ret; - } - --int BufferedFile::truncate(off64_t length) -+int BufferedFile::truncate(off_t length) - { - int ret = 0; - int savedErrno; -@@ -187,14 +187,14 @@ int BufferedFile::truncate(off64_t length) - return ret; - } - --off64_t BufferedFile::size() -+off_t BufferedFile::size() - { - #ifdef _MSC_VER - return _filelengthi64(fileno(m_fp)); // Interestingly, implemented as fseek/ftell in the windows crt - #else - // going to calculate size 2 ways - first, via seek -- off64_t length = -1; -- off64_t here; -+ off_t length = -1; -+ off_t here; - - flockfile(m_fp); - -@@ -220,7 +220,7 @@ off64_t BufferedFile::size() - #endif - } - --off64_t BufferedFile::tell() -+off_t BufferedFile::tell() - { - #ifdef _MSC_VER - return _ftelli64(m_fp); -@@ -282,7 +282,7 @@ int BufferedFile::close() - @see - This one is used in shared/we_fileop.cpp to skip expensive file preallocation. - */ --int BufferedFile::fallocate(int mode, off64_t offset, off64_t length) -+int BufferedFile::fallocate(int mode, off_t offset, off_t length) - { - int ret = 0; - int savedErrno = 0; -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h -index 09646b44..ba688a10 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/BufferedFile.h -@@ -40,16 +40,16 @@ class BufferedFile : public IDBDataFile, boost::noncopyable - BufferedFile(const char* fname, const char* mode, unsigned opts); - /* virtual */ ~BufferedFile(); - -- /* virtual */ ssize_t pread(void* ptr, off64_t offset, size_t count); -+ /* virtual */ ssize_t pread(void* ptr, off_t offset, size_t count); - /* virtual */ ssize_t read(void* ptr, size_t count); - /* virtual */ ssize_t write(const void* ptr, size_t count); -- /* virtual */ int seek(off64_t offset, int whence); -- /* virtual */ int truncate(off64_t length); -- /* virtual */ off64_t size(); -- /* virtual */ off64_t tell(); -+ /* virtual */ int seek(off_t offset, int whence); -+ /* virtual */ int truncate(off_t length); -+ /* virtual */ off_t size(); -+ /* virtual */ off_t tell(); - /* virtual */ int flush(); - /* virtual */ time_t mtime(); -- /* virtual */ int fallocate(int mode, off64_t offset, off64_t length); -+ /* virtual */ int fallocate(int mode, off_t offset, off_t length); - - protected: - /* virtual */ -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h -index 1747189e..739e7717 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBDataFile.h -@@ -124,7 +124,7 @@ class IDBDataFile - * or fseek followed by read for C-library FILE*. Return value - * is the number of bytes read. - */ -- virtual ssize_t pread(void* ptr, off64_t offset, size_t count) = 0; -+ virtual ssize_t pread(void* ptr, off_t offset, size_t count) = 0; - - /** - * This is a read method similar to kernel style read or C library -@@ -148,7 +148,7 @@ class IDBDataFile - * operation - ex. HDFS will not support it for files opened for writing - * Returns 0 on success, -1 on error - */ -- virtual int seek(off64_t offset, int whence) = 0; -+ virtual int seek(off_t offset, int whence) = 0; - - /** - * The truncate() method is equivalent to the ftruncate method. Note -@@ -156,7 +156,7 @@ class IDBDataFile - * or write or append do not, but HDFS files opened for modification do. - * Returns 0 on success, -1 on error. - */ -- virtual int truncate(off64_t length) = 0; -+ virtual int truncate(off_t length) = 0; - - /** - * The size() method returns the size of the file in a manner consistent -@@ -166,14 +166,14 @@ class IDBDataFile - * external view of size may differ (ex. if writing buffered i/o before - * a flush/sync or if writing an open HDFS file). Returns -1 on error. - */ -- virtual off64_t size() = 0; -+ virtual off_t size() = 0; - - /** - * The tell() call returns the current offset in the file. This is - * similar to lseek with 0 offset in the standard library and ftell - * for buffered FILE *s. - */ -- virtual off64_t tell() = 0; -+ virtual off_t tell() = 0; - - /** - * The flush() method instructs the file to write any buffered contents -@@ -194,7 +194,7 @@ class IDBDataFile - * only. - * Returns -1 on error. - */ -- virtual int fallocate(int mode, off64_t offset, off64_t length) = 0; -+ virtual int fallocate(int mode, off_t offset, off_t length) = 0; - - int colWidth() - { -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h -index 4ca4a285..54e58540 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBFileSystem.h -@@ -82,14 +82,14 @@ class IDBFileSystem - * size() returns the size of the file specified by path. - * Returns the size on success, -1 on error - */ -- virtual off64_t size(const char* path) const = 0; -+ virtual off_t size(const char* path) const = 0; - - /** - * compressedSize() returns the decompressed size of the file - * speicified by path. - * Returns the size on success, -1 on error - */ -- virtual off64_t compressedSize(const char* path) const = 0; -+ virtual off_t compressedSize(const char* path) const = 0; - - /** - * exists() checks for the existence of a particular path. -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp -index 37d4cb3c..8111d00c 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp -+++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.cpp -@@ -117,14 +117,14 @@ void IDBLogger::logRW(const char* op, const std::string& fname, const IDBDataFil - writeLog(logmsg.str()); - } - --void IDBLogger::logSeek(const std::string& fname, const IDBDataFile* ptr, off64_t offset, int whence, int ret) -+void IDBLogger::logSeek(const std::string& fname, const IDBDataFile* ptr, off_t offset, int whence, int ret) - { - ostringstream logmsg; - logmsg << fname << "," << ptr << ",seek," << offset << "," << whence << "," << ret; - writeLog(logmsg.str()); - } - --void IDBLogger::logTruncate(const std::string& fname, const IDBDataFile* ptr, off64_t length, int ret) -+void IDBLogger::logTruncate(const std::string& fname, const IDBDataFile* ptr, off_t length, int ret) - { - ostringstream logmsg; - logmsg << fname << "," << ptr << ",truncate," << length << ",," << ret; -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h -index b200c914..c4d6d0a5 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBLogger.h -@@ -36,8 +36,8 @@ class IDBLogger - static void logNoArg(const std::string& fname, const IDBDataFile* ptr, const char* op, int ret); - static void logRW(const char* op, const std::string& fname, const IDBDataFile* ptr, size_t offset, - size_t count, size_t bytesRead); -- static void logSeek(const std::string& fname, const IDBDataFile* ptr, off64_t offset, int whence, int ret); -- static void logTruncate(const std::string& fname, const IDBDataFile* ptr, off64_t length, int ret); -+ static void logSeek(const std::string& fname, const IDBDataFile* ptr, off_t offset, int whence, int ret); -+ static void logTruncate(const std::string& fname, const IDBDataFile* ptr, off_t length, int ret); - static void logSize(const std::string& fname, const IDBDataFile* ptr, long long ret); - - static void logFSop(IDBFileSystem::Types type, const char* op, const char* pathname, -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h b/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h -index 117f1e8d..d53fbfa0 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/IDBPolicy.h -@@ -125,8 +125,8 @@ class IDBPolicy - * please see IDBFileSystem.h. - */ - static int mkdir(const char* pathname); -- static off64_t size(const char* path); -- static off64_t compressedSize(const char* path); -+ static off_t size(const char* path); -+ static off_t compressedSize(const char* path); - static int remove(const char* pathname); - static int rename(const char* oldpath, const char* newpath); - static bool exists(const char* pathname); -@@ -194,12 +194,12 @@ inline int IDBPolicy::mkdir(const char* pathname) - return IDBPolicy::getFs(pathname).mkdir(pathname); - } - --inline off64_t IDBPolicy::size(const char* path) -+inline off_t IDBPolicy::size(const char* path) - { - return IDBPolicy::getFs(path).size(path); - } - --inline off64_t IDBPolicy::compressedSize(const char* path) -+inline off_t IDBPolicy::compressedSize(const char* path) - { - return IDBPolicy::getFs(path).compressedSize(path); - } -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp -index bd3e1c4b..6c9d04a5 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp -+++ b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.cpp -@@ -115,13 +115,13 @@ int PosixFileSystem::rename(const char* oldpath, const char* newpath) - return ret; - } - --off64_t PosixFileSystem::size(const char* path) const -+off_t PosixFileSystem::size(const char* path) const - { - // should this use Boost?? - struct stat statBuf; - int rc = ::stat(path, &statBuf); - int savedErrno = errno; -- off64_t ret = ((rc == 0) ? statBuf.st_size : -1); -+ off_t ret = ((rc == 0) ? statBuf.st_size : -1); - - if (IDBLogger::isEnabled()) - IDBLogger::logFSop(POSIX, "fs:size", path, this, ret); -@@ -156,11 +156,11 @@ size_t readFillBuffer(idbdatafile::IDBDataFile* pFile, char* buffer, size_t byte - return totalBytesRead; - } - --off64_t PosixFileSystem::compressedSize(const char* path) const -+off_t PosixFileSystem::compressedSize(const char* path) const - { - IDBDataFile* pFile = NULL; - size_t nBytes; -- off64_t dataSize = 0; -+ off_t dataSize = 0; - - try - { -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h -index c1f4e5ff..6e18ca45 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h -+++ b/storage/columnstore/columnstore/utils/idbdatafile/PosixFileSystem.h -@@ -29,8 +29,8 @@ class PosixFileSystem : public IDBFileSystem - ~PosixFileSystem(); - - int mkdir(const char* pathname) override; -- off64_t size(const char* path) const override; -- off64_t compressedSize(const char* path) const override; -+ off_t size(const char* path) const override; -+ off_t compressedSize(const char* path) const override; - int remove(const char* pathname) override; - int rename(const char* oldpath, const char* newpath) override; - bool exists(const char* pathname) const override; -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp b/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp -index 07a7630b..97dcb97c 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp -+++ b/storage/columnstore/columnstore/utils/idbdatafile/UnbufferedFile.cpp -@@ -75,7 +75,7 @@ UnbufferedFile::~UnbufferedFile() - close(); - } - --ssize_t UnbufferedFile::pread(void* ptr, off64_t offset, size_t count) -+ssize_t UnbufferedFile::pread(void* ptr, off_t offset, size_t count) - { - ssize_t ret; - int savedErrno; -@@ -161,7 +161,7 @@ ssize_t UnbufferedFile::write(const void* ptr, size_t count) - return ret; - } - --int UnbufferedFile::seek(off64_t offset, int whence) -+int UnbufferedFile::seek(off_t offset, int whence) - { - int ret; - int savedErrno; -@@ -182,7 +182,7 @@ int UnbufferedFile::seek(off64_t offset, int whence) - return ret; - } - --int UnbufferedFile::truncate(off64_t length) -+int UnbufferedFile::truncate(off_t length) - { - int ret; - int savedErrno; -@@ -207,15 +207,15 @@ int UnbufferedFile::truncate(off64_t length) - return ret; - } - --off64_t UnbufferedFile::size() -+off_t UnbufferedFile::size() - { -- off64_t ret = 0; -+ off_t ret = 0; - int savedErrno; - - #ifdef _MSC_VER - DWORD hi = 0; - DWORD lo = GetFileSize(m_fd, &hi); -- ret = off64_t(((uint64_t)hi) << 32) | lo; -+ ret = off_t(((uint64_t)hi) << 32) | lo; - #else - struct stat statBuf; - int rc = ::fstat(m_fd, &statBuf); -@@ -230,9 +230,9 @@ off64_t UnbufferedFile::size() - return ret; - } - --off64_t UnbufferedFile::tell() -+off_t UnbufferedFile::tell() - { -- off64_t ret; -+ off_t ret; - #ifdef _MSC_VER - LARGE_INTEGER wRet; - LARGE_INTEGER dist; -@@ -333,7 +333,7 @@ int UnbufferedFile::close() - @see - This one is used in shared/we_fileop.cpp to skip expensive file preallocation. - */ --int UnbufferedFile::fallocate(int mode, off64_t offset, off64_t length) -+int UnbufferedFile::fallocate(int mode, off_t offset, off_t length) - { - int ret = 0; - int savedErrno = 0; -diff --git a/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp b/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp -index 42b46873..0cef9ebb 100644 ---- a/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp -+++ b/storage/columnstore/columnstore/utils/idbdatafile/tdriver.cpp -@@ -623,9 +623,9 @@ bool TestRunner::truncateTest(IDBDataFile::Types filetype) - blk_num = m_opts.numblocks; - } - -- off64_t fsize = m_file->size(); -+ off_t fsize = m_file->size(); - -- if (fsize != (off64_t)(blk_num * BLK_SIZE)) -+ if (fsize != (off_t)(blk_num * BLK_SIZE)) - { - ostringstream errstr; - errstr << "wrong file size after truncate, " << fsize << " != " << blk_num * BLK_SIZE; -@@ -645,7 +645,7 @@ bool TestRunner::renameTest(IDBDataFile::Types type) - IDBFileSystem& fs = IDBFileSystem::getFs(type); - - // get the size before we move for compare purposes. -- off64_t fsize_orig = fs.size(m_fname.c_str()); -+ off_t fsize_orig = fs.size(m_fname.c_str()); - - // choose a path in a different directory that we know already exists - // and make it specific to our thread... -@@ -666,7 +666,7 @@ bool TestRunner::renameTest(IDBDataFile::Types type) - } - - // now check if oldpath exists using size method -- off64_t fsize = fs.size(m_fname.c_str()); -+ off_t fsize = fs.size(m_fname.c_str()); - - if (fsize != -1) - { -@@ -712,7 +712,7 @@ bool TestRunner::copyTest(IDBDataFile::Types type) - IDBFileSystem& fs = IDBFileSystem::getFs(type); - - // get the size before we copy for compare purposes. -- off64_t fsize_orig = fs.size(m_fname.c_str()); -+ off_t fsize_orig = fs.size(m_fname.c_str()); - - // choose a path in a different directory that we know already exists - // and make it specific to our thread... -@@ -733,7 +733,7 @@ bool TestRunner::copyTest(IDBDataFile::Types type) - } - - // now check if newpath exists using size method -- off64_t fsize = fs.size(newpath.c_str()); -+ off_t fsize = fs.size(newpath.c_str()); - - if (fsize != fsize_orig) - { -@@ -1023,9 +1023,9 @@ bool TestRunner::tellTest(IDBDataFile::Types filetype) - return false; - } - -- off64_t filepos = m_file->tell(); -+ off_t filepos = m_file->tell(); - -- if (filepos != off64_t(BLK_SIZE)) -+ if (filepos != off_t(BLK_SIZE)) - { - ostringstream errstr; - errstr << "tellTest: File position not at correct block, " << filepos << " != " << BLK_SIZE; -diff --git a/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp b/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp -index 9678501c..4bb33049 100644 ---- a/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp -+++ b/storage/columnstore/columnstore/writeengine/bulk/we_colbufcompressed.cpp -@@ -393,7 +393,7 @@ int ColumnBufferCompressed::compressAndFlush(bool bFinishingFile) - Stats::startParseEvent(WE_STATS_WRITE_COL); - #endif - -- off64_t fileOffset = fFile->tell(); -+ off_t fileOffset = fFile->tell(); - size_t nitems = fFile->write(compressedOutBuf, outputLen) / outputLen; - - if (nitems != 1) -diff --git a/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp b/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp -index 3f89c28a..57f74352 100644 ---- a/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp -+++ b/storage/columnstore/columnstore/writeengine/bulk/we_columninfo.cpp -@@ -955,7 +955,7 @@ int ColumnInfo::expandAbbrevExtent(bool bRetainFilePos) - { - if (fLoadingAbbreviatedExtent) - { -- off64_t oldOffset = 0; -+ off_t oldOffset = 0; - - if (bRetainFilePos) - { -diff --git a/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp b/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp -index 0a4f5e90..c7eb5fe6 100644 ---- a/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp -+++ b/storage/columnstore/columnstore/writeengine/dictionary/we_dctnry.cpp -@@ -318,7 +318,7 @@ int Dctnry::expandDctnryExtent() - { - RETURN_ON_NULL(m_dFile, ERR_FILE_SEEK); - -- off64_t oldOffset = m_dFile->tell(); -+ off_t oldOffset = m_dFile->tell(); - - RETURN_ON_ERROR(setFileOffset(m_dFile, 0, SEEK_END)); - -diff --git a/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp b/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp -index 194b260e..4f9ce81b 100644 ---- a/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp -+++ b/storage/columnstore/columnstore/writeengine/server/we_getfilesizes.cpp -@@ -93,9 +93,9 @@ size_t readFillBuffer(idbdatafile::IDBDataFile* pFile, char* buffer, size_t byte - return totalBytesRead; - } - --static off64_t getCompressedDataSize(string& fileName) -+static off_t getCompressedDataSize(string& fileName) - { -- off64_t dataSize = 0; -+ off_t dataSize = 0; - IDBDataFile* pFile = 0; - size_t nBytes; - // Some IDBPolicy functions can throw exceptions, caller will catch it -@@ -198,7 +198,7 @@ struct ColumnThread - char fileName[200]; - (void)fileOp.getFileName(fOid, fileName, rootList[i], entries[0].partitionNum, entries[0].segmentNum); - string aFile(fileName); // convert between char* and string -- off64_t fileSize = 0; -+ off_t fileSize = 0; - - if (fReportRealUse && (fCompressionType > 0)) - { -diff --git a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp -index b34535c7..474a44a8 100644 ---- a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp -+++ b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.cpp -@@ -1183,7 +1183,7 @@ int ChunkManager::openFile(CompFileData* fileData, const char* mode, int colWidt - // (ex __LINE__); this is used for logging error messages. Likewise, filename - // is used for logging any error message. - //------------------------------------------------------------------------------ --int ChunkManager::setFileOffset(IDBDataFile* pFile, const string& fileName, off64_t offset, int ln) const -+int ChunkManager::setFileOffset(IDBDataFile* pFile, const string& fileName, off_t offset, int ln) const - { - int rc = NO_ERROR; - -diff --git a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h -index 30a9862f..bc22a451 100644 ---- a/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h -+++ b/storage/columnstore/columnstore/writeengine/shared/we_chunkmanager.h -@@ -309,7 +309,7 @@ class ChunkManager - int openFile(CompFileData* fileData, const char* mode, int colWidth, bool useTmpSuffix, int ln) const; - - // @brief set offset in a compressed DB file from beginning. -- int setFileOffset(IDBDataFile* pFile, const std::string& fileName, off64_t offset, int ln) const; -+ int setFileOffset(IDBDataFile* pFile, const std::string& fileName, off_t offset, int ln) const; - - // @brief read from a compressed DB file. - int readFile(IDBDataFile* pFile, const std::string& fileName, void* buf, size_t size, int ln) const; -diff --git a/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp b/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp -index 1db08a92..2c783325 100644 ---- a/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp -+++ b/storage/columnstore/columnstore/writeengine/shared/we_fileop.cpp -@@ -1310,7 +1310,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t - getLogger()->logMsg(oss.str(), MSGLVL_INFO2); - } - -- off64_t endHdrsOffset = pFile->tell(); -+ off_t endHdrsOffset = pFile->tell(); - rc = expandAbbrevColumnExtent(pFile, dbRoot, emptyVal, colWidth, colDataType); - - if (rc != NO_ERROR) -@@ -1374,7 +1374,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t - std::endl << std::endl; - #endif - -- off64_t endOffset = 0; -+ off_t endOffset = 0; - - // Fill in or add necessary remaining empty chunks - if (numChunksToFill > 0) -@@ -1416,7 +1416,7 @@ int FileOp::fillCompColumnExtentEmptyChunks(OID oid, int colWidth, const uint8_t - - // Position file to write empty chunks; default to end of headers - // in case there are no chunks listed in the header -- off64_t startOffset = pFile->tell(); -+ off_t startOffset = pFile->tell(); - - if (chunkPtrs.size() > 0) - { -diff --git a/storage/connect/filamfix.cpp b/storage/connect/filamfix.cpp -index 3298a833..ec256a2a 100644 ---- a/storage/connect/filamfix.cpp -+++ b/storage/connect/filamfix.cpp -@@ -695,7 +695,7 @@ bool BGXFAM::BigSeek(PGLOBAL g, HANDLE h, BIGINT pos, int org) - return true; - } // endif - #else // !_WIN32 -- if (lseek64(h, pos, org) < 0) { -+ if (lseek(h, pos, org) < 0) { - snprintf(g->Message, sizeof(g->Message), "lseek64: %s", strerror(errno)); - printf("%s\n", g->Message); - return true; -@@ -1022,7 +1022,7 @@ int BGXFAM::Cardinality(PGLOBAL g) - - #else // UNIX - if (Hfile == INVALID_HANDLE_VALUE) { -- int h = open64(filename, O_RDONLY, 0); -+ int h = open(filename, O_RDONLY, 0); - - if (trace(1)) - htrc(" h=%d\n", h); -@@ -1041,13 +1041,13 @@ int BGXFAM::Cardinality(PGLOBAL g) - } // endif h - - // Get the size of the file (can be greater than 4 GB) -- fsize = lseek64(h, 0, SEEK_END); -+ fsize = lseek(h, 0, SEEK_END); - close(h); - } else { -- BIGINT curpos = lseek64(Hfile, 0, SEEK_CUR); -+ BIGINT curpos = lseek(Hfile, 0, SEEK_CUR); - -- fsize = lseek64(Hfile, 0, SEEK_END); -- lseek64(Hfile, curpos, SEEK_SET); -+ fsize = lseek(Hfile, 0, SEEK_END); -+ lseek(Hfile, curpos, SEEK_SET); - } // endif Hfile - - if (fsize < 0) { -@@ -1357,7 +1357,7 @@ int BGXFAM::DeleteRecords(PGLOBAL g, int irc) - return RC_FX; - } // endif error - #else // !_WIN32 -- if (ftruncate64(Hfile, (BIGINT)(Tpos * Lrecl))) { -+ if (ftruncate(Hfile, (BIGINT)(Tpos * Lrecl))) { - snprintf(g->Message, sizeof(g->Message), MSG(TRUNCATE_ERROR), strerror(errno)); - return RC_FX; - } // endif -@@ -1402,7 +1402,7 @@ bool BGXFAM::OpenTempFile(PGLOBAL g) - return true; - } // endif Tfile - #else // UNIX -- Tfile = open64(tempname, O_WRONLY | O_TRUNC, S_IWRITE); -+ Tfile = open(tempname, O_WRONLY | O_TRUNC, S_IWRITE); - - if (Tfile == INVALID_HANDLE_VALUE) { - int rc = errno; -@@ -1531,7 +1531,7 @@ void BGXFAM::Rewind(void) - #if defined(_WIN32) //OB - SetFilePointer(Hfile, 0, NULL, FILE_BEGIN); - #else // UNIX -- lseek64(Hfile, 0, SEEK_SET); -+ lseek(Hfile, 0, SEEK_SET); - #endif // UNIX - #endif // 0 - CurBlk = -1; -diff --git a/storage/connect/filamvct.cpp b/storage/connect/filamvct.cpp -index 184df646..f462060a 100644 ---- a/storage/connect/filamvct.cpp -+++ b/storage/connect/filamvct.cpp -@@ -3084,7 +3084,7 @@ bool BGVFAM::BigSeek(PGLOBAL g, HANDLE h, BIGINT pos, bool b) - return true; - } // endif - #else // !_WIN32 -- if (lseek64(h, pos, (b) ? SEEK_END : SEEK_SET) < 0) { -+ if (lseek(h, pos, (b) ? SEEK_END : SEEK_SET) < 0) { - snprintf(g->Message, sizeof(g->Message), MSG(ERROR_IN_LSK), errno); - return true; - } // endif -@@ -3238,7 +3238,7 @@ int BGVFAM::GetBlockInfo(PGLOBAL g) - - if (h == INVALID_HANDLE_VALUE || !len.QuadPart) { - #else // !_WIN32 -- h = open64(filename, O_RDONLY, 0); -+ h = open(filename, O_RDONLY, 0); - - if (h == INVALID_HANDLE_VALUE || !_filelength(h)) { - #endif // !_WIN32 -@@ -3314,7 +3314,7 @@ bool BGVFAM::SetBlockInfo(PGLOBAL g) - #else // !_WIN32 - int oflag = (b) ? O_RDWR : O_RDWR | O_TRUNC; - -- h = open64(filename, oflag, 0); -+ h = open(filename, oflag, 0); - #endif // !_WIN32 - - if (h == INVALID_HANDLE_VALUE) { -@@ -3409,7 +3409,7 @@ bool BGVFAM::MakeEmptyFile(PGLOBAL g, PCSZ fn) - int h; - BIGINT pos; - -- h= open64(filename, O_CREAT | O_WRONLY, S_IREAD | S_IWRITE); -+ h= open(filename, O_CREAT | O_WRONLY, S_IREAD | S_IWRITE); - - if (h == -1) - return true; -@@ -3420,7 +3420,7 @@ bool BGVFAM::MakeEmptyFile(PGLOBAL g, PCSZ fn) - htrc("MEF: pos=%lld n=%d maxblk=%d blksize=%d\n", - pos, n, MaxBlk, Blksize); - -- if (lseek64(h, pos, SEEK_SET) < 0) -+ if (lseek(h, pos, SEEK_SET) < 0) - goto err; - - // This actually fills the empty file -@@ -3619,7 +3619,7 @@ bool BGVFAM::OpenTableFile(PGLOBAL g) - return true; - } // endswitch - -- Hfile = open64(filename, oflag, pmd); // Enable file size > 2G -+ Hfile = open(filename, oflag, pmd); // Enable file size > 2G - - if (Hfile == INVALID_HANDLE_VALUE) { - rc = errno; -@@ -3933,7 +3933,7 @@ int BGVFAM::DeleteRecords(PGLOBAL g, int irc) - return RC_FX; - } // endif error - #else // !_WIN32 -- if (ftruncate64(Hfile, (BIGINT)(Tpos * Lrecl))) { -+ if (ftruncate(Hfile, (BIGINT)(Tpos * Lrecl))) { - snprintf(g->Message, sizeof(g->Message), MSG(TRUNCATE_ERROR), strerror(errno)); - return RC_FX; - } // endif -@@ -3993,7 +3993,7 @@ bool BGVFAM::OpenTempFile(PGLOBAL g) - #else // UNIX - int oflag = (MaxBlk) ? O_WRONLY : O_WRONLY | O_TRUNC; - -- Tfile = open64(tempname, oflag, S_IWRITE); -+ Tfile = open(tempname, oflag, S_IWRITE); - - if (Tfile == INVALID_HANDLE_VALUE) { - int rc = errno; -@@ -4250,7 +4250,7 @@ void BGVFAM::Rewind(void) - #if defined(_WIN32) //OB - SetFilePointer(Hfile, 0, NULL, FILE_BEGIN); - #else // UNIX -- lseek64(Hfile, 0, SEEK_SET); -+ lseek(Hfile, 0, SEEK_SET); - #endif // UNIX - #endif // 0 - } // end of Rewind -diff --git a/storage/connect/xindex.cpp b/storage/connect/xindex.cpp -index 4bcbbfd4..1144f89a 100644 ---- a/storage/connect/xindex.cpp -+++ b/storage/connect/xindex.cpp -@@ -2652,7 +2652,7 @@ bool XHUGE::Open(PGLOBAL g, char *filename, int id, MODE mode) - /*******************************************************************/ - /* Position the cursor at end of file so ftell returns file size. */ - /*******************************************************************/ -- if (!(NewOff.Val = (longlong)lseek64(Hfile, 0LL, SEEK_END))) { -+ if (!(NewOff.Val = (longlong)lseek(Hfile, 0LL, SEEK_END))) { - snprintf(g->Message, sizeof(g->Message), MSG(FUNC_ERRNO), errno, "Seek"); - return true; - } // endif -@@ -2681,7 +2681,7 @@ bool XHUGE::Open(PGLOBAL g, char *filename, int id, MODE mode) - htrc("noff[%d]=%lld\n", id, noff[id].Val); - - // Position the cursor at the offset of this index -- if (lseek64(Hfile, noff[id].Val, SEEK_SET) < 0) { -+ if (lseek(Hfile, noff[id].Val, SEEK_SET) < 0) { - snprintf(g->Message, sizeof(g->Message), "(XHUGE)lseek64: %s (%lld)", strerror(errno), noff[id].Val); - printf("%s\n", g->Message); - // snprintf(g->Message, sizeof(g->Message), MSG(FUNC_ERRNO), errno, "Hseek"); -@@ -2709,10 +2709,10 @@ bool XHUGE::Seek(PGLOBAL g, int low, int high, int origin) - } // endif - - #else // UNIX -- off64_t pos = (off64_t)low -- + (off64_t)high * ((off64_t)0x100 * (off64_t)0x1000000); -+ off_t pos = (off_t)low -+ + (off_t)high * ((off_t)0x100 * (off_t)0x1000000); - -- if (lseek64(Hfile, pos, origin) < 0) { -+ if (lseek(Hfile, pos, origin) < 0) { - snprintf(g->Message, sizeof(g->Message), MSG(ERROR_IN_LSK), errno); - - if (trace(1)) -@@ -2841,7 +2841,7 @@ void XHUGE::Close(char *fn, int id) - #else // !_WIN32 - if (id >= 0 && fn) { - if (Hfile != INVALID_HANDLE_VALUE) { -- if (lseek64(Hfile, id * sizeof(IOFF), SEEK_SET) >= 0) { -+ if (lseek(Hfile, id * sizeof(IOFF), SEEK_SET) >= 0) { - ssize_t nbw = write(Hfile, &NewOff, sizeof(IOFF)); - - if (nbw != (signed)sizeof(IOFF)) \ No newline at end of file diff --git a/packages/mariadb/pcc-remove-glibc-dep.patch b/packages/mariadb/pcc-remove-glibc-dep.patch deleted file mode 100644 index 725cb8c..0000000 --- a/packages/mariadb/pcc-remove-glibc-dep.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/include/my_cpu.h b/include/my_cpu.h -index f2e26fca..94599b74 100644 ---- a/include/my_cpu.h -+++ b/include/my_cpu.h -@@ -24,17 +24,16 @@ - */ - - #ifdef _ARCH_PWR8 --#include - /* Very low priority */ --#define HMT_very_low() __ppc_set_ppr_very_low() -+#define HMT_very_low() asm volatile("or 31,31,31") - /* Low priority */ --#define HMT_low() __ppc_set_ppr_low() -+#define HMT_low() asm volatile ("or 1,1,1") - /* Medium low priority */ --#define HMT_medium_low() __ppc_set_ppr_med_low() -+#define HMT_medium_low() asm volatile ("or 6,6,6") - /* Medium priority */ --#define HMT_medium() __ppc_set_ppr_med() -+#define HMT_medium() asm volatile ("or 2,2,2") - /* Medium high priority */ --#define HMT_medium_high() __ppc_set_ppr_med_high() -+#define HMT_medium_high() asm volatile("or 5,5,5") - /* High priority */ - #define HMT_high() asm volatile("or 3,3,3") - #else -@@ -72,7 +71,7 @@ static inline void MY_RELAX_CPU(void) - __asm__ __volatile__ ("pause"); - #endif - #elif defined(_ARCH_PWR8) -- __ppc_get_timebase(); -+ __builtin_ppc_get_timebase(); - #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__) - /* Mainly, prevent the compiler from optimizing away delay loops */ - __asm__ __volatile__ ("":::"memory"); \ No newline at end of file diff --git a/packages/mariadb/revert-c432c9ef.patch b/packages/mariadb/revert-c432c9ef.patch deleted file mode 100644 index e69de29..0000000 diff --git a/packages/nasm/Containerfile b/packages/nasm/Containerfile deleted file mode 100644 index ccde570..0000000 --- a/packages/nasm/Containerfile +++ /dev/null @@ -1,38 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=2.16.03 -ENV SRC_HASH=1412a1c760bbd05db026b6c0d1657affd6631cd0a63cddb6f73cc6d4aa616148 -ENV SRC_FILE=nasm-${VERSION}.tar.xz -ENV SRC_SITE=https://www.nasm.us/pub/nasm/releasebuilds/${VERSION}/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . - -FROM fetch AS build -COPY --from=stagex/busybox . / -COPY --from=stagex/perl . / -COPY --from=stagex/cmake . / -COPY --from=stagex/gcc . / -COPY --from=stagex/binutils . / -COPY --from=stagex/musl . / -COPY --from=stagex/openssl . / -COPY --from=stagex/make . / -COPY --from=stagex/bash . / -RUN tar -xf ${SRC_FILE} -WORKDIR nasm-${VERSION} -RUN --network=none <<-EOF - set -eux - CFLAGS="-O2 -flto=auto" \ - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr - make -j "$(nproc)" -EOF - -FROM build AS install -RUN --network=none DESTDIR="/rootfs" cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/nuspell/Containerfile b/packages/nuspell/Containerfile index b30addc..572bd5a 100644 --- a/packages/nuspell/Containerfile +++ b/packages/nuspell/Containerfile @@ -19,6 +19,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/openssl . / COPY --from=stagex/icu . / COPY --from=stagex/make . / +COPY --from=stagex/m4 . / COPY --from=stagex/gcc . / RUN tar -xf v${VERSION}.tar.gz WORKDIR nuspell-${VERSION} diff --git a/packages/oniguruma/Containerfile b/packages/oniguruma/Containerfile deleted file mode 100644 index 22c9f15..0000000 --- a/packages/oniguruma/Containerfile +++ /dev/null @@ -1,44 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=6.9.9 -ENV SRC_HASH=001aa1202e78448f4c0bf1a48c76e556876b36f16d92ce3207eccfd61d99f2a0 -ENV SRC_FILE=v${VERSION}.tar.gz -ENV SRC_SITE=https://github.com/kkos/oniguruma/archive/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . - -FROM fetch AS build -COPY --from=stagex/busybox . / -COPY --from=stagex/autoconf . / -COPY --from=stagex/libtool . / -COPY --from=stagex/automake . / -COPY --from=stagex/gcc . / -COPY --from=stagex/binutils . / -COPY --from=stagex/musl . / -COPY --from=stagex/openssl . / -COPY --from=stagex/make . / -RUN tar -xf ${SRC_FILE} -WORKDIR oniguruma-${VERSION} -COPY *.patch . -RUN --network=none <<-EOF - set -eux - autoreconf -vfi - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --localstatedir=/var \ - --enable-posix-api - make -EOF - -FROM build AS install -RUN --network=none DESTDIR="/rootfs" cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/openldap/Containerfile b/packages/openldap/Containerfile index a7869da..5ef589a 100644 --- a/packages/openldap/Containerfile +++ b/packages/openldap/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.5.17 ENV SRC_HASH=d706a34b348ae38a9e3e4eb0d2cd5afeb939f2b2db95e6ae3d410d6a75e90e3c ENV SRC_FILE=openldap-${VERSION}.tgz ENV SRC_SITE=https://www.openldap.org/software/download/OpenLDAP/openldap-release/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/bash . / COPY --from=stagex/m4 . / @@ -27,6 +28,7 @@ COPY --from=stagex/argon2 . / COPY --from=stagex/groff . / RUN tar -xf $SRC_FILE WORKDIR openldap-${VERSION} +ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux ./configure \ @@ -48,9 +50,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/pcre2/Containerfile b/packages/pcre2/Containerfile index 92874b8..7bb401d 100644 --- a/packages/pcre2/Containerfile +++ b/packages/pcre2/Containerfile @@ -1,13 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=10.43 ENV SRC_HASH=f0048e26b02bdfaf43b8cec75030a9c2fe28552bf5caa693d3ccbf4d886fa930 ENV SRC_FILE=pcre2-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/PCRE2Project/pcre2/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/zlib . / COPY --from=stagex/gawk . / COPY --from=stagex/bzip2 . / @@ -47,11 +48,11 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/perl-dbd-mysql/Containerfile b/packages/perl-dbd-mysql/Containerfile deleted file mode 100644 index f751884..0000000 --- a/packages/perl-dbd-mysql/Containerfile +++ /dev/null @@ -1,36 +0,0 @@ -FROM scratch as base -ARG ARCH=x86_64 -ENV VERSION=4.052 -ENV SRC_HASH=a83f57af7817787de0ef56fb15fdfaf4f1c952c8f32ff907153b66d2da78ff5b -ENV SRC_FILE=DBD-mysql-${VERSION}.tar.gz -ENV SRC_SITE=https://cpan.metacpan.org/authors/id/D/DV/DVEEDEN/${SRC_FILE} - -FROM base as fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch as build -COPY --from=stagex/musl . / -COPY --from=stagex/gcc . / -COPY --from=stagex/bash . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/perl . / -COPY --from=stagex/zlib . / -COPY --from=stagex/mariadb-connector-c . / -COPY --from=stagex/perl-dbi . / -COPY --from=stagex/make . / -RUN tar -xf ${SRC_FILE} -WORKDIR DBD-mysql-${VERSION} -RUN --network=none <<-EOF - set -eux - perl Makefile.PL - make -EOF - -FROM build as install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem as package -COPY --from=install /rootfs/. / diff --git a/packages/perl-dbi/Containerfile b/packages/perl-dbi/Containerfile index 15b2f57..a33d460 100644 --- a/packages/perl-dbi/Containerfile +++ b/packages/perl-dbi/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.643 ENV SRC_HASH=8a2b993db560a2c373c174ee976a51027dd780ec766ae17620c20393d2e836fa ENV SRC_FILE=DBI-${VERSION}.tar.gz ENV SRC_SITE=https://cpan.metacpan.org/authors/id/T/TI/TIMB/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -19,16 +19,17 @@ COPY --from=stagex/perl . / COPY --from=stagex/make . / RUN tar -xf ${SRC_FILE} WORKDIR DBI-${VERSION} +ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux perl Makefile.PL PERL_MM_USE_DEFAULT="1 perl -I. Makefile.PL INSTALLDIRS=vendor" - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/perl-yaml-syck/Containerfile b/packages/perl-yaml-syck/Containerfile index 2fb8b56..6d2ba52 100644 --- a/packages/perl-yaml-syck/Containerfile +++ b/packages/perl-yaml-syck/Containerfile @@ -18,6 +18,7 @@ COPY --from=stagex/make . / RUN tar -xf ${SRC_FILE} WORKDIR YAML-Syck-${VERSION} +ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux \ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}') diff --git a/packages/php/Containerfile b/packages/php/Containerfile index be46920..0d4a21a 100644 --- a/packages/php/Containerfile +++ b/packages/php/Containerfile @@ -20,9 +20,9 @@ COPY --from=stagex/libzstd . / COPY --from=stagex/lld . / COPY --from=stagex/binutils . / COPY --from=stagex/llvm . / +COPY --from=stagex/curl . / COPY --from=stagex/clang . / COPY --from=stagex/bison . / -COPY --from=stagex/curl . / COPY --from=stagex/gdbm . / COPY --from=stagex/lmdb . / COPY --from=stagex/pkgconf . / @@ -79,10 +79,9 @@ RUN --network=none <<-EOF --with-config-file-scan-dir=/etc/php83/conf.d \ --disable-rpath \ --disable-short-tags \ - --disable-all \ \ - # --enable-bcmath=shared \ - # --with-bz2=shared \ + --enable-bcmath=shared \ + --with-bz2=shared \ # --enable-calendar=shared \ # --enable-ctype=shared \ # --with-curl=shared \ @@ -143,7 +142,7 @@ RUN --network=none <<-EOF # --enable-soap=shared \ # --with-sodium=shared \ # --enable-sockets=shared \ - # --with-sqlite3=shared \ + # with-sqlite3=shared \ # --enable-sysvmsg=shared \ # --enable-sysvsem=shared \ # --enable-sysvshm=shared \ @@ -155,7 +154,7 @@ RUN --network=none <<-EOF # --enable-xmlwriter=shared \ # --with-xsl=shared \ # --with-zip=shared \ - # --with-zlib \ + --with-zlib \ # --enable-zend-test=shared \ "$@" make || { echo "Make failed"; cat config.log; } diff --git a/packages/re2c/Containerfile b/packages/re2c/Containerfile index 9476e5f..5f4b8c2 100644 --- a/packages/re2c/Containerfile +++ b/packages/re2c/Containerfile @@ -1,13 +1,13 @@ -FROM scratch as base +FROM scratch AS base ENV VERSION=3.1 ENV SRC_HASH=087c44de0400fb15caafde09fd72edc7381e688a35ef505ee65e0e3d2fac688b ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://github.com/skvadrik/re2c/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch as build +FROM fetch AS build COPY --from=stagex/autoconf . / COPY --from=stagex/automake . / COPY --from=stagex/binutils . / @@ -26,12 +26,12 @@ RUN --network=none <<-EOF autoreconf -i -W all ./configure \ --prefix=/usr - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/rhash/Containerfile b/packages/rhash/Containerfile index eb0cc15..cdd456b 100644 --- a/packages/rhash/Containerfile +++ b/packages/rhash/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.4.4 ENV SRC_HASH=8e7d1a8ccac0143c8fe9b68ebac67d485df119ea17a613f4038cda52f84ef52a ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/rhash/RHash/archive/refs/tags/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/bash . / @@ -25,12 +25,12 @@ RUN --network=none <<-EOF --sysconfdir=/etc \ --enable-openssl \ --disable-openssl-runtime - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/samurai/Containerfile b/packages/samurai/Containerfile index bbe7f14..8e7d6b4 100644 --- a/packages/samurai/Containerfile +++ b/packages/samurai/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.2 ENV SRC_HASH=3b8cf51548dfc49b7efe035e191ff5e1963ebc4fe8f6064a5eefc5343eaf78a5 ENV SRC_FILE=samurai-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/michaelforney/samurai/releases/download/${VERSION}/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -19,15 +19,15 @@ RUN tar -xf ${SRC_FILE} WORKDIR samurai-${VERSION} COPY *.patch . RUN --network=none <<-EOF - set -eux \ + set -eux patch -p1 CVE-2021-30218.patch patch -p1 CVE-2021-30219.patch - make CFLAGS="-O2" CC=gcc + make CFLAGS="-O2" CC=gcc -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/scdoc/Containerfile b/packages/scdoc/Containerfile index 188e448..75577e5 100644 --- a/packages/scdoc/Containerfile +++ b/packages/scdoc/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.11.3 ENV SRC_HASH=4c5c6136540384e5455b250f768e7ca11b03fdba1a8efc2341ee0f1111e57612 ENV SRC_FILE=${VERSION}.tar.gz ENV SRC_SITE=https://git.sr.ht/~sircmpwn/scdoc/archive/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -18,13 +18,13 @@ RUN tar -xf ${SRC_FILE} WORKDIR scdoc-${VERSION} RUN --network=none <<-EOF set -eux - make PREFIX="/usr" + make PREFIX="/usr" -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/skalibs/Containerfile b/packages/skalibs/Containerfile index 28e24ef..260a447 100644 --- a/packages/skalibs/Containerfile +++ b/packages/skalibs/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.14.1.1 ENV SRC_HASH=b6b79b816f4ba0b6801676b0ed4179b59c8c7809eeffe26db672e404636befc3 ENV SRC_FILE=skalibs-${VERSION}.tar.gz ENV SRC_SITE=https://skarnet.org/software/skalibs/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -23,12 +23,12 @@ RUN --network=none <<-EOF --enable-static \ --prefix=/usr \ --libdir=/usr/lib - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/unixodbc/Containerfile b/packages/unixodbc/Containerfile index 17b2ac5..aee4f2c 100644 --- a/packages/unixodbc/Containerfile +++ b/packages/unixodbc/Containerfile @@ -1,14 +1,14 @@ - -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=2.3.12 ENV SRC_HASH=f210501445ce21bf607ba51ef8c125e10e22dffdffec377646462df5f01915ec ENV SRC_FILE=unixODBC-${VERSION}.tar.gz ENV SRC_SITE=https://www.unixodbc.org/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build + +FROM fetch AS build COPY --from=stagex/perl . / COPY --from=stagex/bash . / COPY --from=stagex/m4 . / @@ -38,9 +38,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/util-macros/Containerfile b/packages/util-macros/Containerfile index 6a85a5b..f5f5b16 100644 --- a/packages/util-macros/Containerfile +++ b/packages/util-macros/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.20.0 ENV SRC_HASH=0b86b262dbe971edb4ff233bc370dfad9f241d09f078a3f6d5b7f4b8ea4430db ENV SRC_FILE=util-macros-${VERSION}.tar.xz ENV SRC_SITE=https://www.x.org/releases/individual/util/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -26,12 +26,12 @@ RUN --network=none <<-EOF --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ --prefix=/usr - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/utmps/Containerfile b/packages/utmps/Containerfile index 035aaaa..3f9dea1 100644 --- a/packages/utmps/Containerfile +++ b/packages/utmps/Containerfile @@ -1,11 +1,11 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=0.1.2.2 ENV SRC_HASH=f7ffa3714c65973bb95fbcf1501c06fc0478d93a51cea1b373ec6811c2425f52 ENV SRC_FILE=utmps-${VERSION}.tar.gz ENV SRC_SITE=https://skarnet.org/software/utmps/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} FROM fetch as build @@ -28,12 +28,12 @@ RUN --network=none <<-EOF --libexecdir=/lib/utmps \ --with-lib=/usr/lib \ --with-dynlib=/lib - make + make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch b/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch deleted file mode 100644 index e5a2761..0000000 --- a/packages/vala/0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 1d79a03d86a2f10051e902b97a3bf08cf038d06a Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Tue, 6 Aug 2024 12:53:55 +0200 -Subject: [PATCH] posix: Define _XOPEN_SOURCE/_GNU_SOURCE for signal funcs - -Fixes https://gitlab.gnome.org/GNOME/vala/-/issues/1558 ---- - vapi/posix.vapi | 32 ++++++++++++++++---------------- - 1 file changed, 16 insertions(+), 16 deletions(-) - -diff --git a/vapi/posix.vapi b/vapi/posix.vapi -index caa0f41f8..91e03ff5c 100644 ---- a/vapi/posix.vapi -+++ b/vapi/posix.vapi -@@ -1590,35 +1590,35 @@ namespace Posix { - short si_addr_lsb; - } - -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int kill (pid_t pid, int signum); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int killpg (pid_t pgpr, int signum); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] - public int raise (int signum); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public void psignal (int signum, string message); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigemptyset (out sigset_t sigset); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigfillset (out sigset_t sigset); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigaddset (ref sigset_t sigset, int signo); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigdelset (ref sigset_t sigset, int __signo); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigismember (sigset_t sigset, int __signo); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigprocmask (int how, sigset_t sigset, out sigset_t oset); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigqueue (pid_t pid, int signum, sigval_t val); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigsuspend (sigset_t sigset); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigpending (sigset_t sigset); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigwait (sigset_t sigset, out int sig); -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_XOPEN_SOURCE")] - public int sigaction (int signum, sigaction_t? act, out sigaction_t? oldact); - - [CCode (has_target = false, cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] -@@ -1636,7 +1636,7 @@ namespace Posix { - [CCode (cheader_filename = "signal.h")] - public sighandler_t SIG_IGN; - -- [CCode (cheader_filename = "signal.h")] -+ [CCode (cheader_filename = "signal.h", feature_test_macro = "_GNU_SOURCE")] - public sighandler_t signal (int signum, sighandler_t? handler); - - [CCode (cheader_filename = "stdio.h")] --- -2.46.0 \ No newline at end of file diff --git a/packages/vala/Containerfile b/packages/vala/Containerfile deleted file mode 100644 index ceab7db..0000000 --- a/packages/vala/Containerfile +++ /dev/null @@ -1,46 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=0.56.16 -ENV SRC_HASH=05487b5600f5d2f09e66a753cccd8f39c1bff9f148aea1b7774d505b9c8bca9b -ENV SRC_FILE=vala-${VERSION}.tar.xz -ENV SRC_SITE=https://download.gnome.org/sources/vala/0.56/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . - -FROM fetch AS build -COPY --from=stagex/busybox . / -COPY --from=stagex/glib . / -COPY --from=stagex/gcc . / -COPY --from=stagex/bison . / -COPY --from=stagex/binutils . / -COPY --from=stagex/libunwind . / -COPY --from=stagex/zlib . / -COPY --from=stagex/flex . / -COPY --from=stagex/perl . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/libtool . / -COPY --from=stagex/musl . / -COPY --from=stagex/openssl . / -COPY --from=stagex/make . / -RUN tar -xf ${SRC_FILE} -WORKDIR vala-${VERSION} -COPY *.patch . -RUN --network=none <<-EOF - set -eux - patch -p1 < 0001-posix-Define-_XOPEN_SOURCE-_GNU_SOURCE-for-signal-fu.patch - CFLAGS="-O2 -flto=auto" \ - CXXFLAGS="$-O2 -flto=auto" \ - ./configure \ - --build=${ARCH}-linux-musl \ - --host=${ARCH}-linux-musl \ - --prefix=/usr - make -j "$(nproc)" -EOF - -FROM build AS install -RUN --network=none DESTDIR="/rootfs" cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/packages/xorgproto/Containerfile b/packages/xorgproto/Containerfile deleted file mode 100644 index 67ac2bd..0000000 --- a/packages/xorgproto/Containerfile +++ /dev/null @@ -1,45 +0,0 @@ -FROM scratch AS base -ARG ARCH=x86_64 -ENV VERSION=2024.1 -ENV SRC_HASH=4f6b9b4faf91e5df8265b71843a91fc73dc895be6210c84117a996545df296ce -ENV SRC_FILE=xorgproto-${VERSION}.tar.gz -ENV SRC_SITE=https://xorg.freedesktop.org/archive/individual/proto/${SRC_FILE} - -FROM base AS fetch -ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} - -FROM fetch AS build -COPY --from=stagex/musl . / -COPY --from=stagex/abuild . / -COPY --from=stagex/ninja . / -COPY --from=stagex/make . / -COPY --from=stagex/gcc . / -COPY --from=stagex/perl . / -COPY --from=stagex/binutils . / -COPY --from=stagex/util-macros . / -COPY --from=stagex/bash . / -COPY --from=stagex/busybox . / -COPY --from=stagex/binutils . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/meson . / -COPY --from=stagex/m4 . / -COPY --from=stagex/autoconf . / -COPY --from=stagex/automake . / -COPY --from=stagex/zlib . / -RUN tar -xf ${SRC_FILE} -WORKDIR xorgproto-${VERSION} -RUN --network=none <<-EOF - set -eux - abuild-meson \ - --datadir=/usr/lib \ - -Dlegacy=true \ - . output - meson compile -C output -EOF - -FROM build AS install -RUN make DESTDIR=/rootfs install -RUN find /rootfs -exec touch -hcd "@0" "{}" + - -FROM stagex/filesystem AS package -COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 38103c3..c88cd48 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1,3 +1,34 @@ +.PHONY: apr-util +apr-util: out/apr-util/index.json +out/apr-util/index.json: \ + packages/apr-util/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/expat/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gdbm/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openldap/index.json \ + out/openssl/index.json \ + out/postgresql/index.json \ + out/sqlite3/index.json + $(call build,apr-util) + +.PHONY: libiconv +libiconv: out/libiconv/index.json +out/libiconv/index.json: \ + packages/libiconv/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,libiconv) .PHONY: abseil-cpp abseil-cpp: out/abseil-cpp/index.json @@ -15,6 +46,44 @@ out/abseil-cpp/index.json: \ out/zlib/index.json $(call build,abseil-cpp) +.PHONY: acl +acl: out/acl/index.json +out/acl/index.json: \ + packages/acl/Containerfile \ + out/attr/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,acl) + +.PHONY: apr +apr: out/apr/index.json +out/apr/index.json: \ + packages/apr/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/util-linux/index.json + $(call build,apr) + +.PHONY: argon2 +argon2: out/argon2/index.json +out/argon2/index.json: \ + packages/argon2/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,argon2) + .PHONY: argp-standalone argp-standalone: out/argp-standalone/index.json out/argp-standalone/index.json: \ @@ -31,6 +100,32 @@ out/argp-standalone/index.json: \ out/perl/index.json $(call build,argp-standalone) +.PHONY: aspell +aspell: out/aspell/index.json +out/aspell/index.json: \ + packages/aspell/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json + $(call build,aspell) + +.PHONY: attr +attr: out/attr/index.json +out/attr/index.json: \ + packages/attr/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json + $(call build,attr) + .PHONY: autoconf autoconf: out/autoconf/index.json out/autoconf/index.json: \ @@ -167,6 +262,21 @@ out/bison/index.json: \ out/perl/index.json $(call build,bison) +.PHONY: brotli +brotli: out/brotli/index.json +out/brotli/index.json: \ + packages/brotli/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/samurai/index.json + $(call build,brotli) + .PHONY: buf buf: out/buf/index.json out/buf/index.json: \ @@ -239,12 +349,16 @@ out/clang/index.json: \ out/cmake/index.json \ out/filesystem/index.json \ out/gcc/index.json \ + out/git/index.json \ + out/libxml2/index.json \ + out/linux-headers/index.json \ out/llvm/index.json \ out/musl/index.json \ out/ninja/index.json \ out/openssl/index.json \ out/py-setuptools/index.json \ out/python/index.json \ + out/samurai/index.json \ out/zlib/index.json $(call build,clang) @@ -381,6 +495,29 @@ out/dosfstools/index.json: \ out/perl/index.json $(call build,dosfstools) +.PHONY: doxygen +doxygen: out/doxygen/index.json +out/doxygen/index.json: \ + packages/doxygen/Containerfile \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/coreutils/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/libxml2/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/python/index.json \ + out/samurai/index.json + $(call build,doxygen) + .PHONY: e2fsprogs e2fsprogs: out/e2fsprogs/index.json out/e2fsprogs/index.json: \ @@ -471,6 +608,18 @@ out/eudev/index.json: \ out/musl/index.json $(call build,eudev) +.PHONY: expat +expat: out/expat/index.json +out/expat/index.json: \ + packages/expat/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,expat) + .PHONY: file file: out/file/index.json out/file/index.json: \ @@ -538,6 +687,42 @@ out/flex/index.json: \ out/perl/index.json $(call build,flex) +.PHONY: fmt +fmt: out/fmt/index.json +out/fmt/index.json: \ + packages/fmt/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/doxygen/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/postgresql/index.json \ + out/python/index.json \ + out/samurai/index.json + $(call build,fmt) + +.PHONY: freetds +freetds: out/freetds/index.json +out/freetds/index.json: \ + packages/freetds/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libtool/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/readline/index.json \ + out/unixodbc/index.json + $(call build,freetds) + .PHONY: gawk gawk: out/gawk/index.json out/gawk/index.json: \ @@ -561,6 +746,20 @@ out/gcc/index.json: \ out/stage3/index.json $(call build,gcc) +.PHONY: gdbm +gdbm: out/gdbm/index.json +out/gdbm/index.json: \ + packages/gdbm/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,gdbm) + .PHONY: gen_initramfs gen_initramfs: out/gen_initramfs/index.json out/gen_initramfs/index.json: \ @@ -602,6 +801,39 @@ out/git/index.json: \ out/zlib/index.json $(call build,git) +.PHONY: glib +glib: out/glib/index.json +out/glib/index.json: \ + packages/glib/Containerfile \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/bzip2/index.json \ + out/cmake/index.json \ + out/expat/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/gettext/index.json \ + out/libffi/index.json \ + out/libxml2/index.json \ + out/libxslt/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/meson/index.json \ + out/musl/index.json \ + out/ncurses/index.json \ + out/ninja/index.json \ + out/pcre2/index.json \ + out/pkgconf/index.json \ + out/py-packaging/index.json \ + out/python/index.json \ + out/rhash/index.json \ + out/util-linux/index.json \ + out/xz/index.json \ + out/zlib/index.json + $(call build,glib) + .PHONY: gmp gmp: out/gmp/index.json out/gmp/index.json: \ @@ -683,6 +915,20 @@ out/grep/index.json: \ out/musl/index.json $(call build,grep) +.PHONY: groff +groff: out/groff/index.json +out/groff/index.json: \ + packages/groff/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json + $(call build,groff) + .PHONY: grpcurl grpcurl: out/grpcurl/index.json out/grpcurl/index.json: \ @@ -739,6 +985,20 @@ out/helm/index.json: \ out/go/index.json $(call build,helm) +.PHONY: hunspell +hunspell: out/hunspell/index.json +out/hunspell/index.json: \ + packages/hunspell/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,hunspell) + .PHONY: icu icu: out/icu/index.json out/icu/index.json: \ @@ -830,6 +1090,36 @@ out/keyfork/index.json: \ out/zlib/index.json $(call build,keyfork) +.PHONY: krb5 +krb5: out/krb5/index.json +out/krb5/index.json: \ + packages/krb5/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/curl/index.json \ + out/e2fsprogs/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/groff/index.json \ + out/libevent/index.json \ + out/libtool/index.json \ + out/libverto/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openldap/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/python/index.json \ + out/util-linux/index.json + $(call build,krb5) + .PHONY: ksops-dry-run ksops-dry-run: out/ksops-dry-run/index.json out/ksops-dry-run/index.json: \ @@ -880,6 +1170,20 @@ out/kustomize-sops/index.json: \ out/go/index.json $(call build,kustomize-sops) +.PHONY: libaio +libaio: out/libaio/index.json +out/libaio/index.json: \ + packages/libaio/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,libaio) + .PHONY: libarchive libarchive: out/libarchive/index.json out/libarchive/index.json: \ @@ -920,6 +1224,37 @@ out/libcap/index.json: \ out/perl/index.json $(call build,libcap) +.PHONY: libedit +libedit: out/libedit/index.json +out/libedit/index.json: \ + packages/libedit/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gawk/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ncurses/index.json \ + out/perl/index.json + $(call build,libedit) + +.PHONY: libevent +libevent: out/libevent/index.json +out/libevent/index.json: \ + packages/libevent/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,libevent) + .PHONY: libffi libffi: out/libffi/index.json out/libffi/index.json: \ @@ -958,6 +1293,24 @@ out/libgpg-error/index.json: \ out/npth/index.json $(call build,libgpg-error) +.PHONY: libical +libical: out/libical/index.json +out/libical/index.json: \ + packages/libical/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/icu/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/samurai/index.json + $(call build,libical) + .PHONY: libksba libksba: out/libksba/index.json out/libksba/index.json: \ @@ -986,6 +1339,18 @@ out/libqrencode/index.json: \ out/musl/index.json $(call build,libqrencode) +.PHONY: libsodium +libsodium: out/libsodium/index.json +out/libsodium/index.json: \ + packages/libsodium/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,libsodium) + .PHONY: libtool libtool: out/libtool/index.json out/libtool/index.json: \ @@ -1027,6 +1392,35 @@ out/libusb/index.json: \ out/musl/index.json $(call build,libusb) +.PHONY: libverto +libverto: out/libverto/index.json +out/libverto/index.json: \ + packages/libverto/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/curl/index.json \ + out/e2fsprogs/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/groff/index.json \ + out/libedit/index.json \ + out/libevent/index.json \ + out/libtool/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openldap/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/python/index.json \ + out/util-linux/index.json + $(call build,libverto) + .PHONY: libxml2 libxml2: out/libxml2/index.json out/libxml2/index.json: \ @@ -1185,6 +1579,29 @@ out/linux-nitro/index.json: \ out/zlib/index.json $(call build,linux-nitro) +.PHONY: linux-pam +linux-pam: out/linux-pam/index.json +out/linux-pam/index.json: \ + packages/linux-pam/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/gettext/index.json \ + out/libtool/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/utmps/index.json + $(call build,linux-pam) + .PHONY: lld lld: out/lld/index.json out/lld/index.json: \ @@ -1255,6 +1672,20 @@ out/llvm16/index.json: \ out/zlib/index.json $(call build,llvm16) +.PHONY: lmdb +lmdb: out/lmdb/index.json +out/lmdb/index.json: \ + packages/lmdb/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,lmdb) + .PHONY: lua lua: out/lua/index.json out/lua/index.json: \ @@ -1476,7 +1907,48 @@ out/ocismack/index.json: \ out/openssl/index.json \ out/rust/index.json \ out/zlib/index.json - $(call build,ocismack) + +.PHONY: nuspell +nuspell: out/nuspell/index.json +out/nuspell/index.json: \ + packages/nuspell/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/icu/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/samurai/index.json + $(call build,nuspell) + +.PHONY: openldap +openldap: out/openldap/index.json +out/openldap/index.json: \ + packages/openldap/Containerfile \ + out/argon2/index.json \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/groff/index.json \ + out/libedit/index.json \ + out/libevent/index.json \ + out/libtool/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/unixodbc/index.json + $(call build,openldap) .PHONY: openpgp-card-tools openpgp-card-tools: out/openpgp-card-tools/index.json @@ -1569,6 +2041,31 @@ out/openssl/index.json: \ out/perl/index.json $(call build,openssl) +.PHONY: pcre2 +pcre2: out/pcre2/index.json +out/pcre2/index.json: \ + packages/pcre2/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/bzip2/index.json \ + out/filesystem/index.json \ + out/gawk/index.json \ + out/gcc/index.json \ + out/libedit/index.json \ + out/libtool/index.json \ + out/libzstd/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ncurses/index.json \ + out/perl/index.json \ + out/readline/index.json \ + out/zlib/index.json + $(call build,pcre2) + .PHONY: pcsc-lite pcsc-lite: out/pcsc-lite/index.json out/pcsc-lite/index.json: \ @@ -1615,6 +2112,21 @@ out/perl/index.json: \ out/musl/index.json $(call build,perl) +.PHONY: perl-dbi +perl-dbi: out/perl-dbi/index.json +out/perl-dbi/index.json: \ + packages/perl-dbi/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json + $(call build,perl-dbi) + .PHONY: perl-module-build perl-module-build: out/perl-module-build/index.json out/perl-module-build/index.json: \ @@ -1639,6 +2151,63 @@ out/perl-pod-parser/index.json: \ out/perl/index.json $(call build,perl-pod-parser) +.PHONY: perl-yaml-syck +perl-yaml-syck: out/perl-yaml-syck/index.json +out/perl-yaml-syck/index.json: \ + packages/perl-yaml-syck/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json + $(call build,perl-yaml-syck) + +.PHONY: php +php: out/php/index.json +out/php/index.json: \ + packages/php/Containerfile \ + out/acl/index.json \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/bc/index.json \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/bzip2/index.json \ + out/clang/index.json \ + out/curl/index.json \ + out/expat/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gdbm/index.json \ + out/gettext/index.json \ + out/gmp/index.json \ + out/icu/index.json \ + out/libedit/index.json \ + out/libunwind/index.json \ + out/libxml2/index.json \ + out/libzstd/index.json \ + out/linux-headers/index.json \ + out/lld/index.json \ + out/llvm/index.json \ + out/lmdb/index.json \ + out/lzip/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/pcre2/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/python/index.json \ + out/re2c/index.json \ + out/sqlite3/index.json \ + out/zlib/index.json + $(call build,php) + .PHONY: pkgconf pkgconf: out/pkgconf/index.json out/pkgconf/index.json: \ @@ -2232,6 +2801,24 @@ out/python/index.json: \ out/zlib/index.json $(call build,python) +.PHONY: re2c +re2c: out/re2c/index.json +out/re2c/index.json: \ + packages/re2c/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libtool/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/python/index.json + $(call build,re2c) + .PHONY: readline readline: out/readline/index.json out/readline/index.json: \ @@ -2261,6 +2848,20 @@ out/redis/index.json: \ out/pkgconf/index.json $(call build,redis) +.PHONY: rhash +rhash: out/rhash/index.json +out/rhash/index.json: \ + packages/rhash/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,rhash) + .PHONY: rust rust: out/rust/index.json out/rust/index.json: \ @@ -2284,6 +2885,31 @@ out/rust/index.json: \ out/zlib/index.json $(call build,rust) +.PHONY: samurai +samurai: out/samurai/index.json +out/samurai/index.json: \ + packages/samurai/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,samurai) + +.PHONY: scdoc +scdoc: out/scdoc/index.json +out/scdoc/index.json: \ + packages/scdoc/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,scdoc) + .PHONY: sed sed: out/sed/index.json out/sed/index.json: \ @@ -2296,6 +2922,18 @@ out/sed/index.json: \ out/musl/index.json $(call build,sed) +.PHONY: skalibs +skalibs: out/skalibs/index.json +out/skalibs/index.json: \ + packages/skalibs/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,skalibs) + .PHONY: sops sops: out/sops/index.json out/sops/index.json: \ @@ -2509,6 +3147,25 @@ out/tpm2-tss/index.json: \ out/util-linux/index.json $(call build,tpm2-tss) +.PHONY: unixodbc +unixodbc: out/unixodbc/index.json +out/unixodbc/index.json: \ + packages/unixodbc/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libtool/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/postgresql/index.json + $(call build,unixodbc) + .PHONY: util-linux util-linux: out/util-linux/index.json out/util-linux/index.json: \ @@ -2530,6 +3187,83 @@ out/util-linux/index.json: \ out/pkgconf/index.json $(call build,util-linux) +.PHONY: util-macros +util-macros: out/util-macros/index.json +out/util-macros/index.json: \ + packages/util-macros/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gawk/index.json \ + out/gcc/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,util-macros) + +.PHONY: utmps +utmps: out/utmps/index.json +out/utmps/index.json: \ + packages/utmps/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/skalibs/index.json + $(call build,utmps) + +.PHONY: xmlto +xmlto: out/xmlto/index.json +out/xmlto/index.json: \ + packages/xmlto/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/docbook-xsl/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gettext/index.json \ + out/glib/index.json \ + out/libtool/index.json \ + out/libxml2/index.json \ + out/libxslt/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/perl-pod-parser/index.json \ + out/perl-yaml-syck/index.json \ + out/zlib/index.json + $(call build,xmlto) + +.PHONY: xorgproto +xorgproto: out/xorgproto/index.json +out/xorgproto/index.json: \ + packages/xorgproto/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/meson/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/util-macros/index.json \ + out/zlib/index.json + $(call build,xorgproto) + .PHONY: xorriso xorriso: out/xorriso/index.json out/xorriso/index.json: \ From 0ccccb9c2ad55455548033f4a85e11d032bc3660 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Sat, 17 Aug 2024 10:03:51 -0400 Subject: [PATCH 30/57] fix: clean up php containerfile --- packages/php/Containerfile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/php/Containerfile b/packages/php/Containerfile index 0d4a21a..21f7b73 100644 --- a/packages/php/Containerfile +++ b/packages/php/Containerfile @@ -63,7 +63,7 @@ RUN --network=none <<-EOF patch -p1 sharedir.patch export CC=clang-18 export CXX=clang++-18 - ./buildconf --force || { echo "buildconf failed"; cat config.log;} + ./buildconf --force EXTENSION_DIR=/usr/lib/modules ./configure \ --build=x86_64-linux-musl \ --host=x86_64-linux-musl \ @@ -80,11 +80,12 @@ RUN --network=none <<-EOF --disable-rpath \ --disable-short-tags \ \ + --disable-all \ --enable-bcmath=shared \ --with-bz2=shared \ - # --enable-calendar=shared \ - # --enable-ctype=shared \ - # --with-curl=shared \ + --enable-calendar=shared \ + --enable-ctype=shared \ + --with-curl=shared \ # --enable-dba=shared \ # --with-dbmaker=shared \ # --with-gdbm \ @@ -142,7 +143,7 @@ RUN --network=none <<-EOF # --enable-soap=shared \ # --with-sodium=shared \ # --enable-sockets=shared \ - # with-sqlite3=shared \ + # --with-sqlite3=shared \ # --enable-sysvmsg=shared \ # --enable-sysvsem=shared \ # --enable-sysvshm=shared \ @@ -154,10 +155,10 @@ RUN --network=none <<-EOF # --enable-xmlwriter=shared \ # --with-xsl=shared \ # --with-zip=shared \ - --with-zlib \ + # --with-zlib \ # --enable-zend-test=shared \ "$@" - make || { echo "Make failed"; cat config.log; } + make -j "$(nproc)" EOF FROM build AS install @@ -176,4 +177,3 @@ USER root RUN rm -rf /var/run RUN mkdir -p /var && mkdir -p /var/run && chown -R root:root /var/run && chmod -R 755 /var/run COPY --from=install /rootfs/. / - From 7104c5ff8574cafa9e0c688b1d573ef63a0fc996 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Sat, 17 Aug 2024 10:33:38 -0400 Subject: [PATCH 31/57] fix: use tabs for indentation and add missing -j (nproc) --- packages/acl/Containerfile | 2 +- packages/apr-util/Containerfile | 6 ++--- packages/apr/Containerfile | 6 ++--- packages/doxygen/Containerfile | 2 +- packages/eif_build/Containerfile | 10 +++---- packages/freetds/Containerfile | 4 +-- packages/gdbm/Containerfile | 2 +- packages/hunspell/Containerfile | 4 +-- packages/libaio/Containerfile | 10 +++---- packages/libevent/Containerfile | 2 +- packages/libiconv/Containerfile | 2 +- packages/libsodium/Containerfile | 4 +-- packages/libverto/Containerfile | 2 +- packages/linux-pam/Containerfile | 6 ++--- packages/lld/Containerfile | 12 ++++----- packages/lmdb/Containerfile | 2 +- packages/perl-dbi/Containerfile | 2 +- packages/perl-yaml-syck/Containerfile | 2 +- packages/php/Containerfile | 38 +++++++++++++-------------- packages/re2c/Containerfile | 4 +-- packages/rhash/Containerfile | 2 +- packages/skalibs/Containerfile | 8 +++--- packages/util-macros/Containerfile | 2 +- packages/utmps/Containerfile | 6 ++--- 24 files changed, 70 insertions(+), 70 deletions(-) diff --git a/packages/acl/Containerfile b/packages/acl/Containerfile index 9e1088e..bf5ce1c 100644 --- a/packages/acl/Containerfile +++ b/packages/acl/Containerfile @@ -22,7 +22,7 @@ RUN --network=none <<-EOF ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ - --prefix=/usr \ + --prefix=/usr \ --libdir=/usr/lib \ --libexecdir=/usr/libexec make -j "$(nproc)" diff --git a/packages/apr-util/Containerfile b/packages/apr-util/Containerfile index eafe6de..49859f4 100644 --- a/packages/apr-util/Containerfile +++ b/packages/apr-util/Containerfile @@ -30,8 +30,8 @@ COPY *.patch . RUN --network=none <<-EOF set -eux patch -p1 < musl-fix-testsuite.patch - ./configure \ - --prefix=/usr \ + ./configure \ + --prefix=/usr \ --with-apr=/usr \ --with-ldap \ --with-pgsql \ @@ -42,7 +42,7 @@ RUN --network=none <<-EOF --without-sqlite2 \ --with-dbm=ndbm \ --with-ndbm - make -j "$(nproc)" + make -j "$(nproc)" EOF FROM build AS install diff --git a/packages/apr/Containerfile b/packages/apr/Containerfile index 0a65758..52986fa 100644 --- a/packages/apr/Containerfile +++ b/packages/apr/Containerfile @@ -22,12 +22,12 @@ RUN --network=none <<-EOF set -eux \ patch -p1 apr-1.6.2-dont-test-dlclose.patch patch -p1 semtimedop-s390x.patch - ./configure \ - --prefix=/usr \ + ./configure \ + --prefix=/usr \ --datadir=/usr/share \ --enable-nonportable-atomics=no \ --with-devrandom=/dev/urandom - make + make -j "$(nproc)" EOF FROM build as install diff --git a/packages/doxygen/Containerfile b/packages/doxygen/Containerfile index 2a9f82f..ba2ca51 100644 --- a/packages/doxygen/Containerfile +++ b/packages/doxygen/Containerfile @@ -32,7 +32,7 @@ COPY *.patch . RUN --network=none <<-EOF set -eux \ patch -p1 remove-usage-of-fstat64.patch - cmake -B build -G Ninja \ + cmake -B build -G Ninja \ -DGIT_EXECUTABLE=/bin/false \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=MinSizeRel \ diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index 4b0a940..4ec053c 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -25,11 +25,11 @@ RUN cargo fetch --locked FROM fetch AS build RUN --network=none \ - cargo build \ - --no-default-features \ - --locked \ - --release \ - --target x86_64-unknown-linux-musl + cargo build \ + --no-default-features \ + --locked \ + --release \ + --target x86_64-unknown-linux-musl FROM build AS install WORKDIR /rootfs/usr/bin diff --git a/packages/freetds/Containerfile b/packages/freetds/Containerfile index 158f3b8..c52a68b 100644 --- a/packages/freetds/Containerfile +++ b/packages/freetds/Containerfile @@ -40,8 +40,8 @@ EOF FROM build AS install RUN --network=none <<-EOF - set -eu - make DESTDIR="/rootfs" install + set -eu + make DESTDIR="/rootfs" install EOF FROM stagex/filesystem AS package diff --git a/packages/gdbm/Containerfile b/packages/gdbm/Containerfile index aece6cb..200043e 100644 --- a/packages/gdbm/Containerfile +++ b/packages/gdbm/Containerfile @@ -21,7 +21,7 @@ WORKDIR gdbm-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux - ./configure \ + ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ --prefix=/usr \ diff --git a/packages/hunspell/Containerfile b/packages/hunspell/Containerfile index 99bf8a5..f135031 100644 --- a/packages/hunspell/Containerfile +++ b/packages/hunspell/Containerfile @@ -20,10 +20,10 @@ RUN tar -xf ${SRC_FILE} WORKDIR hunspell-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ + ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ - --prefix=/usr \ + --prefix=/usr \ --with-ui \ --with-readline \ --disable-static \ diff --git a/packages/libaio/Containerfile b/packages/libaio/Containerfile index 92a1722..931e107 100644 --- a/packages/libaio/Containerfile +++ b/packages/libaio/Containerfile @@ -22,11 +22,11 @@ WORKDIR libaio-libaio-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux - patch -p1 libaio-cppflags.patch - patch -p1 libaio-errno.patch - patch -p1 test-poll.patch - patch -p1 test.patch - make -j "$(nproc)" + patch -p1 libaio-cppflags.patch + patch -p1 libaio-errno.patch + patch -p1 test-poll.patch + patch -p1 test.patch + make -j "$(nproc)" EOF FROM build AS install diff --git a/packages/libevent/Containerfile b/packages/libevent/Containerfile index d25e1f6..3c08af6 100644 --- a/packages/libevent/Containerfile +++ b/packages/libevent/Containerfile @@ -23,7 +23,7 @@ RUN --network=none <<-EOF ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ - --prefix=/usr \ + --prefix=/usr \ --sysconfdir=/etc make -j "$(nproc)" EOF diff --git a/packages/libiconv/Containerfile b/packages/libiconv/Containerfile index 75a3a9f..99b2f66 100644 --- a/packages/libiconv/Containerfile +++ b/packages/libiconv/Containerfile @@ -21,7 +21,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR libiconv-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ + ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --enable-openssl \ diff --git a/packages/libsodium/Containerfile b/packages/libsodium/Containerfile index 273256b..19da266 100644 --- a/packages/libsodium/Containerfile +++ b/packages/libsodium/Containerfile @@ -27,8 +27,8 @@ EOF FROM build AS install RUN --network=none <<-EOF - set -eu - make DESTDIR="/rootfs" install + set -eu + make DESTDIR="/rootfs" install EOF FROM stagex/filesystem AS package diff --git a/packages/libverto/Containerfile b/packages/libverto/Containerfile index 53a4e5a..8337aa0 100644 --- a/packages/libverto/Containerfile +++ b/packages/libverto/Containerfile @@ -50,7 +50,7 @@ RUN --network=none <<-EOF --prefix=/usr \ --localstatedir=/var/lib \ --with-libdev \ - --with-libevent + --with-libevent make -j "$(nproc)" EOF diff --git a/packages/linux-pam/Containerfile b/packages/linux-pam/Containerfile index 2b9e54f..f00e036 100644 --- a/packages/linux-pam/Containerfile +++ b/packages/linux-pam/Containerfile @@ -29,9 +29,9 @@ RUN tar -xf ${SRC_FILE} WORKDIR Linux-PAM-${VERSION} RUN --network=none <<-EOF set -eux - export CFLAGS="-flto=auto $(pkg-config --cflags utmps)" + export CFLAGS="-flto=auto $(pkg-config --cflags utmps)" export LDFLAGS=$(pkg-config --libs utmps) - ./configure \ + ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ --prefix=/usr \ @@ -45,7 +45,7 @@ RUN --network=none <<-EOF --disable-examples \ --sbindir=/usr/sbin \ --enable-securedir=/usr/lib/security - make -j "$(nproc)" + make -j "$(nproc)" EOF FROM build AS install diff --git a/packages/lld/Containerfile b/packages/lld/Containerfile index 79a2e1d..4c8688e 100644 --- a/packages/lld/Containerfile +++ b/packages/lld/Containerfile @@ -26,15 +26,15 @@ COPY --from=stagex/gcc /usr/lib64/* /usr/lib/ RUN tar -xf ${SRC_FILE} WORKDIR llvm-project-${VERSION}.src RUN set -eux; \ - cmake \ - -S lld \ - -B build \ - -G Ninja \ - -Wno-dev \ + cmake \ + -S lld \ + -B build \ + -G Ninja \ + -Wno-dev \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr/ \ -DCMAKE_INSTALL_RPATH=/usr/ \ - -DLLVM_ENABLE_ZLIB=FORCE_ON; \ + -DLLVM_ENABLE_ZLIB=FORCE_ON; \ cmake --build build FROM build AS install diff --git a/packages/lmdb/Containerfile b/packages/lmdb/Containerfile index 228e20d..ab01c65 100644 --- a/packages/lmdb/Containerfile +++ b/packages/lmdb/Containerfile @@ -22,7 +22,7 @@ COPY *.patch . RUN --network=none <<-EOF set -eux \ patch -p1 lmdb-make.patch - export CFLAGS="-O2 -fPIC" + export CFLAGS="-O2 -fPIC" make -j "$(nproc)" EOF diff --git a/packages/perl-dbi/Containerfile b/packages/perl-dbi/Containerfile index a33d460..77acd78 100644 --- a/packages/perl-dbi/Containerfile +++ b/packages/perl-dbi/Containerfile @@ -22,7 +22,7 @@ WORKDIR DBI-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux - perl Makefile.PL + perl Makefile.PL PERL_MM_USE_DEFAULT="1 perl -I. Makefile.PL INSTALLDIRS=vendor" make -j "$(nproc)" EOF diff --git a/packages/perl-yaml-syck/Containerfile b/packages/perl-yaml-syck/Containerfile index 6d2ba52..86c4562 100644 --- a/packages/perl-yaml-syck/Containerfile +++ b/packages/perl-yaml-syck/Containerfile @@ -21,7 +21,7 @@ WORKDIR YAML-Syck-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux \ - export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}') + export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}') PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor make -j "$(nproc)" EOF diff --git a/packages/php/Containerfile b/packages/php/Containerfile index 21f7b73..4efef81 100644 --- a/packages/php/Containerfile +++ b/packages/php/Containerfile @@ -51,22 +51,22 @@ RUN tar -xf php-${VERSION}RC1.tar.gz WORKDIR php-src-php-${VERSION}RC1 COPY *.patch . RUN --network=none <<-EOF - set -eux - export CFLAGS="-O2" - export CXXFLAGS="-O2" - patch -p1 fix-lfs64-2.patch - patch -p1 fix-tests-devserver.patch - patch -p1 includedir.patch - patch -p1 install-pear.patch - patch -p1 php83-fpm-verison-suffix.patch - patch -p1 phpinfo-avif.patch - patch -p1 sharedir.patch - export CC=clang-18 + set -eux + export CFLAGS="-O2" + export CXXFLAGS="-O2" + patch -p1 fix-lfs64-2.patch + patch -p1 fix-tests-devserver.patch + patch -p1 includedir.patch + patch -p1 install-pear.patch + patch -p1 php83-fpm-verison-suffix.patch + patch -p1 phpinfo-avif.patch + patch -p1 sharedir.patch + export CC=clang-18 export CXX=clang++-18 - ./buildconf --force - EXTENSION_DIR=/usr/lib/modules ./configure \ - --build=x86_64-linux-musl \ - --host=x86_64-linux-musl \ + ./buildconf --force + EXTENSION_DIR=/usr/lib/modules ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ --prefix=/usr \ --program-suffix=php83#php \ --libdir=/usr/lib \ @@ -166,10 +166,10 @@ RUN --network=none make INSTALL_ROOT=/rootfs install FROM build AS test RUN /bin/sh -c 'set -eux; \ - if ! make TEST_PHP_ARGS=-j$(nproc) test; then \ - echo "PHP test failed"; \ - exit 1; \ - fi' + if ! make TEST_PHP_ARGS=-j$(nproc) test; then \ + echo "PHP test failed"; \ + exit 1; \ + fi' FROM stagex/filesystem AS package COPY --from=stagex/busybox . / diff --git a/packages/re2c/Containerfile b/packages/re2c/Containerfile index 5f4b8c2..452ab52 100644 --- a/packages/re2c/Containerfile +++ b/packages/re2c/Containerfile @@ -23,9 +23,9 @@ RUN tar -xvf $SRC_FILE WORKDIR re2c-${VERSION} RUN --network=none <<-EOF set -eux - autoreconf -i -W all + autoreconf -i -W all ./configure \ - --prefix=/usr + --prefix=/usr make -j "$(nproc)" EOF diff --git a/packages/rhash/Containerfile b/packages/rhash/Containerfile index cdd456b..2f5d2d3 100644 --- a/packages/rhash/Containerfile +++ b/packages/rhash/Containerfile @@ -20,7 +20,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR RHash-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ + ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --enable-openssl \ diff --git a/packages/skalibs/Containerfile b/packages/skalibs/Containerfile index 260a447..eade0b5 100644 --- a/packages/skalibs/Containerfile +++ b/packages/skalibs/Containerfile @@ -18,12 +18,12 @@ RUN tar -xf ${SRC_FILE} WORKDIR skalibs-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ - --enable-shared \ + ./configure \ + --enable-shared \ --enable-static \ - --prefix=/usr \ + --prefix=/usr \ --libdir=/usr/lib - make -j "$(nproc)" + make -j "$(nproc)" EOF FROM build AS install diff --git a/packages/util-macros/Containerfile b/packages/util-macros/Containerfile index f5f5b16..cb17b97 100644 --- a/packages/util-macros/Containerfile +++ b/packages/util-macros/Containerfile @@ -22,7 +22,7 @@ RUN tar -xf ${SRC_FILE} WORKDIR util-macros-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ + ./configure \ --build=${ARCH}-linux-musl \ --host=${ARCH}-linux-musl \ --prefix=/usr diff --git a/packages/utmps/Containerfile b/packages/utmps/Containerfile index 3f9dea1..d2f4f62 100644 --- a/packages/utmps/Containerfile +++ b/packages/utmps/Containerfile @@ -19,10 +19,10 @@ RUN tar -xf ${SRC_FILE} WORKDIR utmps-${VERSION} RUN --network=none <<-EOF set -eux - ./configure \ - --enable-shared \ + ./configure \ + --enable-shared \ --enable-static \ - --prefix=/usr \ + --prefix=/usr \ --disable-allstatic \ --libdir=/usr/lib \ --libexecdir=/lib/utmps \ From 3a7bbbb8e68973b02cb8167f1426976434cb7184 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Sat, 17 Aug 2024 22:57:23 -0400 Subject: [PATCH 32/57] fix: use non RC version of php --- packages/php/Containerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/php/Containerfile b/packages/php/Containerfile index 4efef81..55887c5 100644 --- a/packages/php/Containerfile +++ b/packages/php/Containerfile @@ -2,8 +2,8 @@ FROM scratch AS base ARG ARCH=x86_64 ENV PKG_NAME=php83 ENV VERSION=8.3.4 -ENV SRC_HASH=c458cf3a9e83764055c6cf15f3348b06645ab499f424b32e33339ada954928db -ENV SRC_FILE=php-${VERSION}RC1.tar.gz +ENV SRC_HASH=4e633d4709afa5301d84d3821471bfb136f281bb71f9acca2fe9d29cc0407d2a +ENV SRC_FILE=php-${VERSION}.tar.gz ENV SRC_SITE=https://github.com/php/php-src/archive/refs/tags/${SRC_FILE} FROM base AS fetch @@ -47,8 +47,8 @@ COPY --from=stagex/python . / COPY --from=stagex/libedit . / COPY --from=stagex/linux-headers . / COPY --from=stagex/sqlite3 . / -RUN tar -xf php-${VERSION}RC1.tar.gz -WORKDIR php-src-php-${VERSION}RC1 +RUN tar -xf php-${VERSION}.tar.gz +WORKDIR php-src-php-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux From 0aa84522451b2ee57a41bd23b824a60bdcfe799b Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Sun, 18 Aug 2024 16:08:17 -0400 Subject: [PATCH 33/57] fix: remove unnecessary patches --- packages/glib/Containerfile | 5 - packages/glib/alwaysbash.patch | 16 - packages/glib/deprecated-no-warn.patch | 22 -- packages/glib/fix-tests.patch | 456 ------------------------- packages/glib/flaky-tests.patch | 83 ----- packages/glib/tests-machine-id.patch | 41 --- packages/libaio/Containerfile | 4 - packages/libaio/libaio-cppflags.patch | 16 - packages/libaio/libaio-errno.patch | 11 - packages/libaio/test-poll.patch | 11 - packages/libaio/test.patch | 55 --- 11 files changed, 720 deletions(-) delete mode 100644 packages/glib/alwaysbash.patch delete mode 100644 packages/glib/deprecated-no-warn.patch delete mode 100644 packages/glib/fix-tests.patch delete mode 100644 packages/glib/flaky-tests.patch delete mode 100644 packages/glib/tests-machine-id.patch delete mode 100644 packages/libaio/libaio-cppflags.patch delete mode 100644 packages/libaio/libaio-errno.patch delete mode 100644 packages/libaio/test-poll.patch delete mode 100644 packages/libaio/test.patch diff --git a/packages/glib/Containerfile b/packages/glib/Containerfile index d384940..e64dc68 100644 --- a/packages/glib/Containerfile +++ b/packages/glib/Containerfile @@ -42,11 +42,6 @@ WORKDIR glib-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux - patch -p1 alwaysbash.patch - patch -p1 deprecated-no-warn.patch - patch -p1 fix-tests.patch - patch -p1 flaky-tests.patch - patch -p1 tests-machine-id.patch export CFLAGS="-ffat-lto-objects -O2" export CXXFLAGS="-O2" export CPPFLAGS="-O2" diff --git a/packages/glib/alwaysbash.patch b/packages/glib/alwaysbash.patch deleted file mode 100644 index 8351dd8..0000000 --- a/packages/glib/alwaysbash.patch +++ /dev/null @@ -1,16 +0,0 @@ -the completions only install if bash is detected. -instead of adding bash to makedeps, just always install them --- -diff --git a/gio/meson.build b/gio/meson.build -index 462606f..bb3e19d 100644 ---- a/gio/meson.build -+++ b/gio/meson.build -@@ -805,7 +805,7 @@ if host_system == 'windows' - internal_deps += [ giowin32_lib ] - endif - --if have_bash -+if true - bash_comp_inst_dir = '' - if bash_comp_dep.found() - bash_comp_dir_override = bash_comp_dep.version().version_compare('>= 2.10') ? ['datadir', get_option('datadir')] : ['prefix', get_option('prefix')] diff --git a/packages/glib/deprecated-no-warn.patch b/packages/glib/deprecated-no-warn.patch deleted file mode 100644 index 4322406..0000000 --- a/packages/glib/deprecated-no-warn.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Naur a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c ---- a/gio/glib-compile-schemas.c 2018-09-21 15:23:52.000000000 +0100 -+++ b/gio/glib-compile-schemas.c 2019-02-10 14:37:30.034879344 +0000 -@@ -1233,19 +1233,6 @@ - return; - } - -- if (path && (g_str_has_prefix (path, "/apps/") || -- g_str_has_prefix (path, "/desktop/") || -- g_str_has_prefix (path, "/system/"))) -- { -- gchar *message = NULL; -- message = g_strdup_printf (_("Warning: Schema “%s” has path “%s”. " -- "Paths starting with " -- "“/apps/”, “/desktop/” or “/system/” are deprecated."), -- id, path); -- g_printerr ("%s\n", message); -- g_free (message); -- } -- - state->schema_state = schema_state_new (path, gettext_domain, - extends, extends_name, list_of); \ No newline at end of file diff --git a/packages/glib/fix-tests.patch b/packages/glib/fix-tests.patch deleted file mode 100644 index 2230732..0000000 --- a/packages/glib/fix-tests.patch +++ /dev/null @@ -1,456 +0,0 @@ -From 01304c97693a7c789bde9c543979872fc63c387c Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Wed, 3 Apr 2024 21:11:24 +0200 -Subject: [PATCH 1/3] tests: skip test that requires shared-mime-info when its - missing - -shared-mime-info required glib to build and will not be there during -bootstrap. Skip the test if it is missing. - -ref: https://gitlab.gnome.org/GNOME/glib/-/issues/3317 -Signed-off-by: Natanael Copa ---- - gio/tests/contenttype.c | 47 +++++++++++++++++++++++++++++++++++++++-- - 1 file changed, 45 insertions(+), 2 deletions(-) - -diff --git a/gio/tests/contenttype.c b/gio/tests/contenttype.c -index 8784374f2..b442d5352 100644 ---- a/gio/tests/contenttype.c -+++ b/gio/tests/contenttype.c -@@ -13,6 +13,20 @@ - __s1, " == ", __s2); \ - } while (0) - -+static gboolean -+skip_missing_shared_mime_info (void) -+{ -+ const gchar *path = g_find_program_in_path("update-mime-database"); -+ -+ if (path == NULL) -+ { -+ g_test_skip ("shared-mime-info is required to run this test"); -+ return TRUE; -+ } -+ g_free(path); -+ return FALSE; -+} -+ - static void - test_guess (void) - { -@@ -26,6 +40,9 @@ test_guess (void) - "Name=appinfo-test\n" - "Exec=./appinfo-test --option\n"; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - #ifdef G_OS_WIN32 - existing_directory = (gchar *) g_getenv ("SYSTEMROOT"); - -@@ -150,6 +167,9 @@ test_subtype (void) - gchar *plain; - gchar *xml; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - plain = g_content_type_from_mime_type ("text/plain"); - xml = g_content_type_from_mime_type ("application/xml"); - -@@ -175,6 +195,9 @@ test_list (void) - gchar *plain; - gchar *xml; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - #ifdef __APPLE__ - g_test_skip ("The OSX backend does not implement g_content_types_get_registered()"); - return; -@@ -202,6 +225,9 @@ test_executable (void) - { - gchar *type; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - #ifdef G_OS_WIN32 - type = g_content_type_from_mime_type ("application/vnd.microsoft.portable-executable"); - /* FIXME: the MIME is not in the default `MIME\Database\Content Type` registry. -@@ -228,6 +254,9 @@ test_description (void) - gchar *type; - gchar *desc; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - type = g_content_type_from_mime_type ("text/plain"); - desc = g_content_type_get_description (type); - g_assert_nonnull (desc); -@@ -242,6 +271,9 @@ test_icon (void) - gchar *type; - GIcon *icon; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - type = g_content_type_from_mime_type ("text/plain"); - icon = g_content_type_get_icon (type); - g_assert_true (G_IS_ICON (icon)); -@@ -290,6 +322,9 @@ test_symbolic_icon (void) - gchar *type; - GIcon *icon; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - type = g_content_type_from_mime_type ("text/plain"); - icon = g_content_type_get_symbolic_icon (type); - g_assert_true (G_IS_ICON (icon)); -@@ -344,6 +379,9 @@ test_tree (void) - gchar **types; - gsize i; - -+ if (skip_missing_shared_mime_info ()) -+ return; -+ - #if defined(__APPLE__) || defined(G_OS_WIN32) - g_test_skip ("The OSX & Windows backends do not implement g_content_type_guess_for_tree()"); - return; -@@ -437,8 +475,13 @@ test_guess_svg_from_data (void) - \n"; - - gboolean uncertain = TRUE; -- gchar *res = g_content_type_guess (NULL, (guchar *)svgfilecontent, -- sizeof (svgfilecontent) - 1, &uncertain); -+ gchar *res; -+ -+ if (skip_missing_shared_mime_info ()) -+ return; -+ -+ res = g_content_type_guess (NULL, (guchar *)svgfilecontent, -+ sizeof (svgfilecontent) - 1, &uncertain); - #ifdef __APPLE__ - g_assert_cmpstr (res, ==, "public.svg-image"); - #elif defined(G_OS_WIN32) --- -2.44.0 - - -From a77fdc4cae8deb7ef9f47e81f81a8db139434093 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Thu, 4 Apr 2024 17:08:46 +0200 -Subject: [PATCH 2/3] tests: skip tests that requires dbus-daemon when its - missing - -dbus may not be built yet during bootstrap, because it needs glib to -build. - -Ref: https://gitlab.gnome.org/GNOME/glib/-/issues/3317 -Signed-off-by: Natanael Copa ---- - gio/tests/appinfo.c | 22 ++++++++++++++++++++++ - gio/tests/desktop-app-info.c | 19 +++++++++++++++++++ - 2 files changed, 41 insertions(+) - -diff --git a/gio/tests/appinfo.c b/gio/tests/appinfo.c -index d9c53c853..81bc48191 100644 ---- a/gio/tests/appinfo.c -+++ b/gio/tests/appinfo.c -@@ -49,6 +49,19 @@ test_launch_for_app_info (GAppInfo *appinfo) - g_free (uri); - } - -+static gboolean -+skip_missing_dbus_daemon (void) -+{ -+ const gchar *path = g_find_program_in_path ("dbus-daemon"); -+ if (path == NULL) -+ { -+ g_test_skip ("dbus-daemon is required to run this test"); -+ return TRUE; -+ } -+ g_free (path); -+ return FALSE; -+} -+ - static void - test_launch (void) - { -@@ -56,6 +69,9 @@ test_launch (void) - GAppInfo *appinfo; - const gchar *path; - -+ if (skip_missing_dbus_daemon ()) -+ return; -+ - /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ - bus = g_test_dbus_new (G_TEST_DBUS_NONE); - g_test_dbus_up (bus); -@@ -96,6 +112,9 @@ test_launch_no_app_id (void) - gchar *exec_line_variants[2]; - gsize i; - -+ if (skip_missing_dbus_daemon ()) -+ return; -+ - exec_line_variants[0] = g_strdup_printf ( - "Exec=%s/appinfo-test --option %%U %%i --name %%c --filename %%k %%m %%%%", - g_test_get_dir (G_TEST_BUILT)); -@@ -356,6 +375,9 @@ test_launch_context_signals (void) - gboolean success; - gchar *cmdline; - -+ if (skip_missing_dbus_daemon ()) -+ return; -+ - /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ - bus = g_test_dbus_new (G_TEST_DBUS_NONE); - g_test_dbus_up (bus); -diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c -index e82e2dd31..ec65b7618 100644 ---- a/gio/tests/desktop-app-info.c -+++ b/gio/tests/desktop-app-info.c -@@ -593,6 +593,19 @@ wait_for_file (const gchar *want_this, - unlink (or_this); - } - -+static gboolean -+skip_missing_dbus_daemon (void) -+{ -+ const gchar *path = g_find_program_in_path ("dbus-daemon"); -+ if (path == NULL) -+ { -+ g_test_skip ("dbus-daemon is required to run this test"); -+ return TRUE; -+ } -+ g_free (path); -+ return FALSE; -+} -+ - static void - test_actions (void) - { -@@ -606,6 +619,9 @@ test_actions (void) - gchar *tweak_path; - gchar *twiddle_path; - -+ if (skip_missing_dbus_daemon ()) -+ return; -+ - /* Set up a test session bus to keep D-Bus traffic off the real session bus. */ - bus = g_test_dbus_new (G_TEST_DBUS_NONE); - g_test_dbus_up (bus); -@@ -1833,6 +1849,9 @@ test_launch_fail_dbus (void) - GAsyncResult *result = NULL; - GError *error = NULL; - -+ if (skip_missing_dbus_daemon ()) -+ return; -+ - /* Set up a test session bus to ensure that launching the app happens using - * D-Bus rather than spawning. */ - bus = g_test_dbus_new (G_TEST_DBUS_NONE); --- -2.44.0 - - -From 0ec9c399c7d2755147e409d065690b2ff53fda40 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Wed, 3 Apr 2024 22:10:18 +0200 -Subject: [PATCH 3/3] tests: find update-desktop-database - -Disable tests that require update-desktop-database when it is missing. - -It requires glib to build so it will be missing when bootstrapping glib. - -Refactor the ifdef for Windows and MacOS while at it and reduce number -of ifdefs. - -Ref: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3658 -Signed-off-by: Natanael Copa ---- - gio/tests/desktop-app-info.c | 35 +++++++++++++++++++++++++++++ - gio/tests/file.c | 43 ++++++++++++++++++++++-------------- - 2 files changed, 62 insertions(+), 16 deletions(-) - -diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c -index ec65b7618..e492b1346 100644 ---- a/gio/tests/desktop-app-info.c -+++ b/gio/tests/desktop-app-info.c -@@ -125,6 +125,20 @@ create_app_info (const char *name) - return info; - } - -+static gboolean -+skip_missing_update_desktop_database (void) -+{ -+ const gchar *path = g_find_program_in_path ("update-desktop-database"); -+ -+ if (path == NULL) -+ { -+ g_test_skip ("update-desktop-database is required to run this test"); -+ return TRUE; -+ } -+ g_free (path); -+ return FALSE; -+} -+ - static void - test_delete (void) - { -@@ -134,6 +148,9 @@ test_delete (void) - char *filename; - gboolean res; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - info = create_app_info ("Blah"); - - id = g_app_info_get_id (info); -@@ -177,6 +194,9 @@ test_default (void) - GList *list; - GError *error = NULL; - -+if (skip_missing_update_desktop_database ()) -+ return; -+ - info1 = create_app_info ("Blah1"); - info2 = create_app_info ("Blah2"); - info3 = create_app_info ("Blah3"); -@@ -316,6 +336,9 @@ test_default_async (void) - GList *list; - GError *error = NULL; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - data.loop = g_main_loop_new (NULL, TRUE); - - info1 = create_app_info ("Blah1"); -@@ -418,6 +441,9 @@ test_fallback (void) - GError *error = NULL; - gint old_length; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - info1 = create_app_info ("Test1"); - info2 = create_app_info ("Test2"); - -@@ -492,6 +518,9 @@ test_last_used (void) - GAppInfo *info1, *info2, *default_app; - GError *error = NULL; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - info1 = create_app_info ("Test1"); - info2 = create_app_info ("Test2"); - -@@ -1222,6 +1251,9 @@ test_default_uri_handler (void) - gchar *file_path = NULL; - GAppInfo *info; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - info = create_app_info_toucher ("Touch Handled", "handled", - "x-scheme-handler/glib-touch", - &file_path); -@@ -1298,6 +1330,9 @@ test_default_uri_handler_async (void) - gboolean called = FALSE; - gint64 start_time, touch_time; - -+ if (skip_missing_update_desktop_database ()) -+ return; -+ - loop = g_main_loop_new (NULL, FALSE); - info = create_app_info_toucher ("Touch Handled", "handled-async", - "x-scheme-handler/glib-async-touch", -diff --git a/gio/tests/file.c b/gio/tests/file.c -index 72296d008..dba5fe66c 100644 ---- a/gio/tests/file.c -+++ b/gio/tests/file.c -@@ -3784,6 +3784,25 @@ create_command_line_app_info (const char *name, - return g_steal_pointer (&info); - } - -+static gboolean -+skip_missing_update_desktop_database (void) -+{ -+#if defined(G_OS_WIN32) || defined(__APPLE__) -+ g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); -+ return TRUE; -+#else -+ const gchar *path = g_find_program_in_path ("update-desktop-database"); -+ -+ if (path == NULL) -+ { -+ g_test_skip ("update-desktop-database is required to run this test"); -+ return TRUE; -+ } -+ g_free (path); -+ return FALSE; -+#endif -+} -+ - static void - test_query_default_handler_uri (void) - { -@@ -3793,10 +3812,8 @@ test_query_default_handler_uri (void) - GFile *file; - GFile *invalid_file; - --#if defined(G_OS_WIN32) || defined(__APPLE__) -- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); -- return; --#endif -+ if (skip_missing_update_desktop_database ()) -+ return; - - info = create_command_line_app_info ("Gio File Handler", "true", - "x-scheme-handler/gio-file"); -@@ -3878,10 +3895,8 @@ test_query_default_handler_file (void) - const char buffer[] = "Text file!\n"; - const guint8 binary_buffer[] = "\xde\xad\xbe\xff"; - --#if defined(G_OS_WIN32) || defined(__APPLE__) -- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); -- return; --#endif -+ if (skip_missing_update_desktop_database ()) -+ return; - - text_file = g_file_new_tmp ("query-default-handler-XXXXXX", &iostream, &error); - g_assert_no_error (error); -@@ -3974,10 +3989,8 @@ test_query_default_handler_file_async (void) - const guint8 binary_buffer[] = "\xde\xad\xbe\xff"; - GError *error = NULL; - --#if defined(G_OS_WIN32) || defined(__APPLE__) -- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); -- return; --#endif -+ if (skip_missing_update_desktop_database ()) -+ return; - - data.loop = g_main_loop_new (NULL, FALSE); - -@@ -4064,10 +4077,8 @@ test_query_default_handler_uri_async (void) - GFile *file; - GFile *invalid_file; - --#if defined(G_OS_WIN32) || defined(__APPLE__) -- g_test_skip ("Default URI handlers are not currently supported on Windows or macOS"); -- return; --#endif -+ if (skip_missing_update_desktop_database ()) -+ return; - - info = create_command_line_app_info ("Gio File Handler", "true", - "x-scheme-handler/gio-file"); --- -2.44.0 \ No newline at end of file diff --git a/packages/glib/flaky-tests.patch b/packages/glib/flaky-tests.patch deleted file mode 100644 index 3ce30c6..0000000 --- a/packages/glib/flaky-tests.patch +++ /dev/null @@ -1,83 +0,0 @@ -https://gitlab.gnome.org/GNOME/glib/-/issues/3318 -https://gitlab.gnome.org/GNOME/glib/-/issues/3320 - -diff --git a/glib/tests/meson.build b/glib/tests/meson.build -index 85f40d2e1..059a786d3 100644 ---- a/glib/tests/meson.build -+++ b/glib/tests/meson.build -@@ -54,6 +54,7 @@ glib_tests = { - 'gwakeup' : { - 'source' : ['gwakeuptest.c', '../gwakeup.c'], - 'install' : false, -+ 'can_fail': host_machine.cpu_family() == 's390x', - }, - 'hash' : {}, - 'hmac' : {}, -@@ -226,6 +227,7 @@ if glib_conf.has('HAVE_EVENTFD') - 'source' : ['gwakeuptest.c', '../gwakeup.c'], - 'c_args' : ['-DTEST_EVENTFD_FALLBACK'], - 'install' : false, -+ 'can_fail': host_machine.cpu_family() == 's390x', - }, - } - endif -diff --git a/gobject/tests/meson.build b/gobject/tests/meson.build -index a163e5f91..12c449519 100644 ---- a/gobject/tests/meson.build -+++ b/gobject/tests/meson.build -@@ -78,7 +78,7 @@ gobject_tests = { - 'references' : {}, - 'basic-signals' : {}, - 'singleton' : {}, -- 'threadtests' : {}, -+ 'threadtests' : { 'can_fail': 'aarch64' in host_machine.cpu_family() or 'riscv' in host_machine.cpu_family() }, - 'dynamictests' : {}, - 'binding' : {}, - 'bindinggroup' : {}, -From ad2925ef361a7c889ff696a1ba9e677accaecd08 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Thu, 4 Apr 2024 10:15:07 +0200 -Subject: [PATCH] tests: increase timeout on slow architectures - -Prevent tests to timeout on architectures that are slow. - -Fixes https://gitlab.gnome.org/GNOME/glib/-/issues/3319 - -Signed-off-by: Natanael Copa ---- - meson.build | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/meson.build b/meson.build -index f0c5e070b..4c6c87766 100644 ---- a/meson.build -+++ b/meson.build -@@ -182,6 +182,12 @@ test_protocol = 'tap' - test_timeout = 30 - test_timeout_slow = 90 - -+# give more time on slow architectures -+if 'riscv' in host_machine.cpu_family() -+ test_timeout = test_timeout * 4 -+ test_timeout_slow = test_timeout_slow * 4 -+endif -+ - add_test_setup('default', - is_default: true, - exclude_suites: ['flaky', 'failing'], --- -2.44.0 - -diff --git a/glib/tests/meson.build b/glib/tests/meson.build -index 85f40d2e1..f2ee59678 100644 ---- a/glib/tests/meson.build -+++ b/glib/tests/meson.build -@@ -113,6 +113,8 @@ glib_tests = { - 'regex' : { - 'dependencies' : [pcre2], - 'c_args' : use_pcre2_static_flag ? ['-DPCRE2_STATIC'] : [], -+ # https://gitlab.gnome.org/GNOME/glib/-/issues/3321 -+ 'can_fail': host_machine.cpu_family() == 'riscv64', - }, - 'relation' : {}, - 'rwlock' : {}, diff --git a/packages/glib/tests-machine-id.patch b/packages/glib/tests-machine-id.patch deleted file mode 100644 index fdbc536..0000000 --- a/packages/glib/tests-machine-id.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 5cf08a9a1041a9dc9975371fb62f8f22c3be76c4 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Wed, 3 Apr 2024 21:25:04 +0200 -Subject: [PATCH 2/3] tests: skip gio tests which fails with missing machine-id - -Signed-off-by: Natanael Copa ---- - gio/tests/meson.build | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/gio/tests/meson.build b/gio/tests/meson.build -index f04ff43ff..71ec09750 100644 ---- a/gio/tests/meson.build -+++ b/gio/tests/meson.build -@@ -46,6 +46,8 @@ if glib_build_shared - subdir('modules') - endif - -+have_machine_id = import('fs').is_file('/etc/machine-id') -+ - # Test programs buildable on all platforms - gio_tests = { - 'application-command-line': {}, -@@ -98,7 +100,7 @@ gio_tests = { - 'install_rpath' : installed_tests_execdir, - # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 - # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148 -- 'can_fail' : host_system in ['darwin', 'windows', 'gnu'], -+ 'can_fail' : host_system in ['darwin', 'windows', 'gnu'] or not have_machine_id, - }, - 'inet-address' : {}, - 'io-stream' : {}, -@@ -147,7 +149,7 @@ gio_tests = { - 'extra_programs': host_system != 'windows' ? ['dbus-launch'] : [], - # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 - # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148 -- 'can_fail' : host_system in ['darwin', 'gnu'], -+ 'can_fail' : host_system in ['darwin', 'gnu'] or not have_machine_id, - }, - 'win32-appinfo' : {}, - } diff --git a/packages/libaio/Containerfile b/packages/libaio/Containerfile index 931e107..4a466fb 100644 --- a/packages/libaio/Containerfile +++ b/packages/libaio/Containerfile @@ -22,10 +22,6 @@ WORKDIR libaio-libaio-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux - patch -p1 libaio-cppflags.patch - patch -p1 libaio-errno.patch - patch -p1 test-poll.patch - patch -p1 test.patch make -j "$(nproc)" EOF diff --git a/packages/libaio/libaio-cppflags.patch b/packages/libaio/libaio-cppflags.patch deleted file mode 100644 index 9579327..0000000 --- a/packages/libaio/libaio-cppflags.patch +++ /dev/null @@ -1,16 +0,0 @@ -respect env CPPFLAGS - ---- a/src/Makefile -+++ b/src/Makefile -@@ -2,8 +2,9 @@ prefix=/usr - includedir=$(prefix)/include - libdir=$(prefix)/lib - --CFLAGS ?= -g -fomit-frame-pointer -O2 --CFLAGS += -Wall -I. -fPIC -+CFLAGS ?= -fomit-frame-pointer -O2 -+CFLAGS += -I. -fPIC -+CFLAGS += $(CPPFLAGS) - SO_CFLAGS=-shared $(CFLAGS) - L_CFLAGS=$(CFLAGS) - LINK_FLAGS= diff --git a/packages/libaio/libaio-errno.patch b/packages/libaio/libaio-errno.patch deleted file mode 100644 index 7ead880..0000000 --- a/packages/libaio/libaio-errno.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libaio-0.3.112.orig/src/compat-0_1.c -+++ libaio-0.3.112/src/compat-0_1.c -@@ -19,7 +19,7 @@ - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - #include --#include -+#include - - #include "libaio.h" - #include "vsys_def.h" \ No newline at end of file diff --git a/packages/libaio/test-poll.patch b/packages/libaio/test-poll.patch deleted file mode 100644 index b851926..0000000 --- a/packages/libaio/test-poll.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Nurp a/harness/cases/22.t b/harness/cases/22.t ---- a/harness/cases/22.t 2018-10-22 20:59:34.000000000 +0100 -+++ b/harness/cases/22.t 2022-02-26 09:48:59.421311473 +0000 -@@ -11,7 +11,7 @@ - #include - #include - #include --#include -+#include - #include - #include diff --git a/packages/libaio/test.patch b/packages/libaio/test.patch deleted file mode 100644 index 0822723..0000000 --- a/packages/libaio/test.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Lee Duncan -Date: Thu, 11 Feb 2021 11:34:42 -0800 -Subject: [PATCH] Fix test issue with gcc-11 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Test 3.t exercises io_submit() with invalid addresses, -and one test attempted to pass in "-1" as an invalid -pointer. But gcc-11 realizes you cannot take an offset -from an invalid pointer, making it impossible to -compile or run this test: - -> sh# make CC=gcc-11 partcheck -> make[1]: Entering directory '/alt/public_software/libaio/src' -> make[1]: Nothing to be done for 'all'. -> make[1]: Leaving directory '/alt/public_software/libaio/src' -> make[1]: Entering directory '/alt/public_software/libaio/harness' -> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/2.t\" -o cases/2.p main.c ../src/libaio.a -lpthread -> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/3.t\" -o cases/3.p main.c ../src/libaio.a -lpthread -> In file included from main.c:24: -> cases/3.t: In function ‘test_main’: -> cases/3.t:18:19: error: ‘attempt_io_submit’ accessing 8 bytes in a region of size 0 [-Werror=stringop-overflow=] -> 18 | status |= attempt_io_submit( io_ctx, 1, (void *)-1, -EFAULT); -> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -> cases/3.t:18:19: note: referencing argument 3 of type ‘struct iocb **’ -> In file included from cases/3.t:5, -> from main.c:24: -> cases/aio_setup.h:15:5: note: in a call to function ‘attempt_io_submit’ -> 15 | int attempt_io_submit(io_context_t ctx, long nr, struct iocb *ios[], int expect) -> | ^~~~~~~~~~~~~~~~~ -> cc1: all warnings being treated as errors -> make[1]: *** [Makefile:19: cases/3.p] Error 1 -> make[1]: Leaving directory '/alt/public_software/libaio/harness' -> make: *** [Makefile:23: partcheck] Error 2 - -The fix is to remove this one test case, since the compiler now -ensures the running code will never see this case. - -Signed-off-by: Lee Duncan ---- - harness/cases/3.t | 1 - - 1 file changed, 1 deletion(-) - -diff -Nurp a/harness/cases/3.t b/harness/cases/3.t ---- a/harness/cases/3.t 2018-10-22 20:59:34.000000000 +0100 -+++ b/harness/cases/3.t 2022-02-26 09:46:51.969845084 +0000 -@@ -15,7 +15,6 @@ int test_main(void) - status |= attempt_io_submit(BAD_CTX, 1, good_ios, -EINVAL); - status |= attempt_io_submit( io_ctx, 0, good_ios, 0); - status |= attempt_io_submit( io_ctx, 1, NULL, -EFAULT); -- status |= attempt_io_submit( io_ctx, 1, (void *)-1, -EFAULT); - status |= attempt_io_submit( io_ctx, 2, bad1_ios, -EFAULT); - status |= attempt_io_submit( io_ctx, 2, bad2_ios, -EFAULT); - status |= attempt_io_submit( io_ctx, -1, good_ios, -EINVAL); From ea82b012ba116345633512131fb6c5a8aab40ec0 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sun, 18 Aug 2024 16:09:39 -0700 Subject: [PATCH 34/57] feat: qemu support --- packages/alsa-lib/Containerfile | 41 + packages/apr/Containerfile | 10 +- packages/argon2/Containerfile | 4 +- packages/cython/Containerfile | 2 +- packages/doxygen/Containerfile | 10 +- packages/dtc/Containerfile | 44 ++ packages/libcap-ng/Containerfile | 38 + packages/libseccomp/Containerfile | 41 + packages/lzo/Containerfile | 39 + packages/numactl/Containerfile | 35 + packages/py-alabaster/Containerfile | 39 + packages/py-babel/Containerfile | 39 + packages/py-docutils/Containerfile | 15 +- packages/py-hatchling/Containerfile | 41 + packages/py-idna/Containerfile | 39 + packages/py-imagesize/Containerfile | 39 + packages/py-jinja2/Containerfile | 38 + packages/py-markupsafe/Containerfile | 39 + packages/py-pathspec/Containerfile | 37 + packages/py-pluggy/Containerfile | 39 + packages/py-pygments/Containerfile | 42 + packages/py-requests/Containerfile | 39 + packages/py-snowballstemmer/Containerfile | 39 + packages/py-sphinx/Containerfile | 31 + packages/py-sphinx_rtd_theme/Containerfile | 33 + .../py-sphinxcontrib-applehelp/Containerfile | 33 + .../py-sphinxcontrib-devhelp/Containerfile | 33 + .../py-sphinxcontrib-htmlhelp/Containerfile | 33 + .../py-sphinxcontrib-jquery/Containerfile | 33 + .../py-sphinxcontrib-qthelp/Containerfile | 33 + .../Containerfile | 33 + packages/py-trove-classifiers/Containerfile | 38 + packages/qemu/Containerfile | 179 +++++ packages/utmps/Containerfile | 2 +- src/packages.mk | 728 ++++++++++++++++-- 35 files changed, 1868 insertions(+), 90 deletions(-) create mode 100644 packages/alsa-lib/Containerfile create mode 100644 packages/dtc/Containerfile create mode 100644 packages/libcap-ng/Containerfile create mode 100644 packages/libseccomp/Containerfile create mode 100644 packages/lzo/Containerfile create mode 100644 packages/numactl/Containerfile create mode 100644 packages/py-alabaster/Containerfile create mode 100644 packages/py-babel/Containerfile create mode 100644 packages/py-hatchling/Containerfile create mode 100644 packages/py-idna/Containerfile create mode 100644 packages/py-imagesize/Containerfile create mode 100644 packages/py-jinja2/Containerfile create mode 100644 packages/py-markupsafe/Containerfile create mode 100644 packages/py-pathspec/Containerfile create mode 100644 packages/py-pluggy/Containerfile create mode 100644 packages/py-pygments/Containerfile create mode 100644 packages/py-requests/Containerfile create mode 100644 packages/py-snowballstemmer/Containerfile create mode 100644 packages/py-sphinx/Containerfile create mode 100644 packages/py-sphinx_rtd_theme/Containerfile create mode 100644 packages/py-sphinxcontrib-applehelp/Containerfile create mode 100644 packages/py-sphinxcontrib-devhelp/Containerfile create mode 100644 packages/py-sphinxcontrib-htmlhelp/Containerfile create mode 100644 packages/py-sphinxcontrib-jquery/Containerfile create mode 100644 packages/py-sphinxcontrib-qthelp/Containerfile create mode 100644 packages/py-sphinxcontrib-serializinghtml/Containerfile create mode 100644 packages/py-trove-classifiers/Containerfile create mode 100644 packages/qemu/Containerfile diff --git a/packages/alsa-lib/Containerfile b/packages/alsa-lib/Containerfile new file mode 100644 index 0000000..0b12325 --- /dev/null +++ b/packages/alsa-lib/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=1.2.12 +ENV SRC_HASH=4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2 +ENV SRC_FILE=alsa-lib-${VERSION}.tar.bz2 +ENV SRC_SITE=https://alsa-project.org/files/pub/lib/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +RUN tar -xf ${SRC_FILE} +WORKDIR alsa-lib-${VERSION} +RUN --network=none <<-EOF + set -eux; \ + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --libdir=/usr/lib \ + --disable-python \ + --disable-static \ + --disable-resmgr \ + --enable-rawmidi \ + --enable-seq \ + --enable-aload \ + --disable-dependency-tracking \ + --without-versioned + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none make DESTDIR=/rootfs install + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/apr/Containerfile b/packages/apr/Containerfile index 52986fa..3998660 100644 --- a/packages/apr/Containerfile +++ b/packages/apr/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.7.4 ENV SRC_HASH=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577 ENV SRC_FILE=apr-${VERSION}.tar.bz2 ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -30,9 +30,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" EOF -FROM build as install +FROM build AS install RUN make DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/argon2/Containerfile b/packages/argon2/Containerfile index 265bc17..1c8dc94 100644 --- a/packages/argon2/Containerfile +++ b/packages/argon2/Containerfile @@ -21,9 +21,9 @@ RUN --network=none <<-EOF make -j "$(nproc)" OPTTARGET=none ARGON2_VERSION=${VERSION} EOF -FROM build as install +FROM build AS install RUN make OPTTARGET=none LIBRARY_REL=lib DESTDIR=/rootfs install RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/cython/Containerfile b/packages/cython/Containerfile index 307dfb6..aa6dc49 100644 --- a/packages/cython/Containerfile +++ b/packages/cython/Containerfile @@ -33,7 +33,7 @@ RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 # FROM build AS install RUN --network=none <<-EOF - set -eu + set -eux python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF diff --git a/packages/doxygen/Containerfile b/packages/doxygen/Containerfile index ba2ca51..b260de6 100644 --- a/packages/doxygen/Containerfile +++ b/packages/doxygen/Containerfile @@ -1,14 +1,14 @@ -FROM scratch as base +FROM scratch AS base ARG ARCH=x86_64 ENV VERSION=1.10.0 ENV SRC_HASH=dd7c556b4d96ca5e682534bc1f1a78a5cfabce0c425b14c1b8549802686a4442 ENV SRC_FILE=doxygen-${VERSION}.src.tar.gz ENV SRC_SITE=https://doxygen.nl/files/${SRC_FILE} -FROM base as fetch +FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / @@ -40,9 +40,9 @@ RUN --network=none <<-EOF cmake --build build EOF -FROM build as install +FROM build AS install RUN DESTDIR=/rootfs cmake --install build RUN find /rootfs -exec touch -hcd "@0" "{}" + -FROM stagex/filesystem as package +FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/dtc/Containerfile b/packages/dtc/Containerfile new file mode 100644 index 0000000..1bbe8f8 --- /dev/null +++ b/packages/dtc/Containerfile @@ -0,0 +1,44 @@ +FROM scratch AS base +ENV VERSION=1.7.0 +ENV SRC_HASH=29edce3d302a15563d8663198bbc398c5a0554765c83830d0d4c0409d21a16c4 +ENV SRC_FILE=dtc-${VERSION}.tar.xz +ENV SRC_SITE=https://kernel.org/pub/software/utils/dtc/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/perl . / +COPY --from=stagex/m4 . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bison . / +COPY --from=stagex/openssl . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/zlib . / +COPY --from=stagex/flex . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/coreutils . / +COPY --from=stagex/python . / +COPY --from=stagex/py-setuptools . / +RUN tar -xf ${SRC_FILE} +WORKDIR dtc-${VERSION} +RUN --network=none <<-EOF + set -eux + sed -i s:-Werror::g Makefile + sed -i "s|@VERSION@|${VERSION}|" setup.py + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make DESTDIR=/rootfs PREFIX=/usr install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libcap-ng/Containerfile b/packages/libcap-ng/Containerfile new file mode 100644 index 0000000..37e7f09 --- /dev/null +++ b/packages/libcap-ng/Containerfile @@ -0,0 +1,38 @@ +FROM scratch AS base +ENV VERSION=0.8.5 +ENV SRC_HASH=3ba5294d1cbdfa98afaacfbc00b6af9ed2b83e8a21817185dfd844cc8c7ac6ff +ENV SRC_FILE=libcap-ng-${VERSION}.tar.gz +ENV SRC_SITE=http://people.redhat.com/sgrubb/libcap-ng/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +RUN tar -xf ${SRC_FILE} +WORKDIR libcap-ng-${VERSION} +RUN --network=none <<-EOF + set -eux; + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --without-python \ + --without-python3 \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none make DESTDIR=/rootfs install + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libseccomp/Containerfile b/packages/libseccomp/Containerfile new file mode 100644 index 0000000..cbf240c --- /dev/null +++ b/packages/libseccomp/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=2.5.5 +ENV SRC_HASH=248a2c8a4d9b9858aa6baf52712c34afefcf9c9e94b76dce02c1c9aa25fb3375 +ENV SRC_FILE=libseccomp-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/seccomp/libseccomp/releases/download/v${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/gperf . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/binutils . / +COPY --from=stagex/python . / +COPY --from=stagex/cython . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +RUN tar -xf ${SRC_FILE} +WORKDIR libseccomp-${VERSION} +RUN --network=none <<-EOF + set -eux; + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --infodir=/usr/share/info \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-python \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none make DESTDIR=/rootfs install + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/lzo/Containerfile b/packages/lzo/Containerfile new file mode 100644 index 0000000..96ac62a --- /dev/null +++ b/packages/lzo/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=2.10 +ENV SRC_HASH=c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072 +ENV SRC_FILE=lzo-${VERSION}.tar.gz +ENV SRC_SITE=https://www.oberhumer.com/opensource/lzo/download/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/openssl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/zlib . / + +RUN tar -xf ${SRC_FILE} +WORKDIR lzo-${VERSION} +RUN <<-EOF + set -eux + cmake -B build -G Ninja \ + -DBUILD_TESTING=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_BUILD_TYPE=Release \ + -DENABLE_SHARED=ON + cmake --build build +EOF + +FROM build AS install +RUN --network=none DESTDIR="/rootfs" cmake --install build + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/numactl/Containerfile b/packages/numactl/Containerfile new file mode 100644 index 0000000..f744019 --- /dev/null +++ b/packages/numactl/Containerfile @@ -0,0 +1,35 @@ +FROM scratch AS base +ENV VERSION=2.0.18 +ENV SRC_HASH=b4fc0956317680579992d7815bc43d0538960dc73aa1dd8ca7e3806e30bc1274 +ENV SRC_FILE=numactl-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/numactl/numactl/releases/download/v${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/gperf . / + +RUN --network=none tar -xf ${SRC_FILE} +WORKDIR numactl-${VERSION} +RUN --network=none <&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-babel/Containerfile b/packages/py-babel/Containerfile new file mode 100644 index 0000000..a788ee2 --- /dev/null +++ b/packages/py-babel/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=2.14.0 +ENV SRC_HASH=6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363 +ENV SRC_FILE=Babel-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/B/Babel/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR Babel-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eux + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-docutils/Containerfile b/packages/py-docutils/Containerfile index fd841a8..908a281 100644 --- a/packages/py-docutils/Containerfile +++ b/packages/py-docutils/Containerfile @@ -7,20 +7,25 @@ ENV SRC_SITE=https://files.pythonhosted.org/packages/source/d/docutils/${SRC_FIL FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . -FROM fetch AS install +FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/musl . / COPY --from=stagex/python . / +COPY --from=stagex/libffi . / COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} WORKDIR docutils-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install RUN --network=none <<-EOF - set -eu - sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" - mkdir -p "/rootfs/${sitedir}" - cp -a docutils "/rootfs/$sitedir" + set -eu + python -m installer -d /rootfs .dist/*.whl find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf EOF diff --git a/packages/py-hatchling/Containerfile b/packages/py-hatchling/Containerfile new file mode 100644 index 0000000..08980aa --- /dev/null +++ b/packages/py-hatchling/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=1.25.0 +ENV SRC_HASH=7064631a512610b52250a4d3ff1bd81551d6d1431c4eb7b72e734df6c74f4262 +ENV SRC_FILE=hatchling-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/h/hatchling/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-trove-classifiers . / +COPY --from=stagex/py-pathspec . / +COPY --from=stagex/py-pluggy . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR hatchling-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eux + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-idna/Containerfile b/packages/py-idna/Containerfile new file mode 100644 index 0000000..d836cf3 --- /dev/null +++ b/packages/py-idna/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=3.7 +ENV SRC_HASH=07017f753632624abaa31aa2c1b243aea6409367256de4183671d95e019f7d70 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/kjd/idna/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR idna-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eux + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-imagesize/Containerfile b/packages/py-imagesize/Containerfile new file mode 100644 index 0000000..2ac7bdb --- /dev/null +++ b/packages/py-imagesize/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=1.4.1 +ENV SRC_HASH=69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a +ENV SRC_FILE=imagesize-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/i/imagesize/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR imagesize-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eux + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-jinja2/Containerfile b/packages/py-jinja2/Containerfile new file mode 100644 index 0000000..c8f15a9 --- /dev/null +++ b/packages/py-jinja2/Containerfile @@ -0,0 +1,38 @@ +FROM scratch AS base +ENV VERSION=3.1.4 +ENV SRC_HASH=4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369 +ENV SRC_FILE=jinja2-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/j/jinja2/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR jinja2-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-markupsafe/Containerfile b/packages/py-markupsafe/Containerfile new file mode 100644 index 0000000..c803b2a --- /dev/null +++ b/packages/py-markupsafe/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=2.1.5 +ENV SRC_HASH=d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b +ENV SRC_FILE=MarkupSafe-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/M/MarkupSafe/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR MarkupSafe-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-pathspec/Containerfile b/packages/py-pathspec/Containerfile new file mode 100644 index 0000000..ea60fa2 --- /dev/null +++ b/packages/py-pathspec/Containerfile @@ -0,0 +1,37 @@ +FROM scratch AS base +ENV VERSION=0.12.1 +ENV SRC_HASH=a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712 +ENV SRC_FILE=pathspec-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pathspec/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR pathspec-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-pluggy/Containerfile b/packages/py-pluggy/Containerfile new file mode 100644 index 0000000..2870d14 --- /dev/null +++ b/packages/py-pluggy/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=1.5.0 +ENV SRC_HASH=2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1 +ENV SRC_FILE=pluggy-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/p/pluggy/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-pathspec . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR pluggy-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-pygments/Containerfile b/packages/py-pygments/Containerfile new file mode 100644 index 0000000..fc53586 --- /dev/null +++ b/packages/py-pygments/Containerfile @@ -0,0 +1,42 @@ +FROM scratch AS base +ENV VERSION=2.18.0 +ENV SRC_HASH=786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199 +ENV SRC_FILE=pygments-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/P/Pygments/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-trove-classifiers . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-pathspec . / +COPY --from=stagex/py-pluggy . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-hatchling . / +RUN tar -xzf ${SRC_FILE} +WORKDIR pygments-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-requests/Containerfile b/packages/py-requests/Containerfile new file mode 100644 index 0000000..9c87d7d --- /dev/null +++ b/packages/py-requests/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=2.32.3 +ENV SRC_HASH=55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 +ENV SRC_FILE=requests-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/r/requests/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR requests-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-snowballstemmer/Containerfile b/packages/py-snowballstemmer/Containerfile new file mode 100644 index 0000000..d106ede --- /dev/null +++ b/packages/py-snowballstemmer/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=2.2.0 +ENV SRC_HASH=09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1 +ENV SRC_FILE=snowballstemmer-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/snowballstemmer/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR snowballstemmer-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinx/Containerfile b/packages/py-sphinx/Containerfile new file mode 100644 index 0000000..109d204 --- /dev/null +++ b/packages/py-sphinx/Containerfile @@ -0,0 +1,31 @@ +FROM scratch AS base +ENV VERSION=7.2.6 +ENV SRC_HASH=b41c04543148937b887097f396d7b2b54ae49d0597b68625f06ffdf702d4d917 + +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/sphinx-doc/sphinx/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinx-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinx_rtd_theme/Containerfile b/packages/py-sphinx_rtd_theme/Containerfile new file mode 100644 index 0000000..97a1fab --- /dev/null +++ b/packages/py-sphinx_rtd_theme/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=2.0.0 +ENV SRC_HASH=40446e6789dd34deb4e9814e379bae0aa74057b6fb43de4b343a48c84fc0f8db +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/readthedocs/sphinx_rtd_theme/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/python . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinx_rtd_theme-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-applehelp/Containerfile b/packages/py-sphinxcontrib-applehelp/Containerfile new file mode 100644 index 0000000..5bc227e --- /dev/null +++ b/packages/py-sphinxcontrib-applehelp/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=1.0.4 +ENV SRC_HASH=828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e +ENV SRC_FILE=sphinxcontrib-applehelp-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/sphinxcontrib-applehelp/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinxcontrib-applehelp-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-devhelp/Containerfile b/packages/py-sphinxcontrib-devhelp/Containerfile new file mode 100644 index 0000000..5faaa4d --- /dev/null +++ b/packages/py-sphinxcontrib-devhelp/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=1.0.5 +ENV SRC_HASH=e2b24fcee87da8fb6a3826ba072c8369cdbffee116bd38bcfaa0302b279dc844 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-devhelp/archive/refs/tags/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinxcontrib-devhelp-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-htmlhelp/Containerfile b/packages/py-sphinxcontrib-htmlhelp/Containerfile new file mode 100644 index 0000000..f757ac5 --- /dev/null +++ b/packages/py-sphinxcontrib-htmlhelp/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=2.0.1 +ENV SRC_HASH=0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff +ENV SRC_FILE=sphinxcontrib-htmlhelp-${VERSION}.tar.gz +ENV SRC_SITE=https://files.pythonhosted.org/packages/source/s/sphinxcontrib-htmlhelp/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinxcontrib-htmlhelp-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-jquery/Containerfile b/packages/py-sphinxcontrib-jquery/Containerfile new file mode 100644 index 0000000..057b847 --- /dev/null +++ b/packages/py-sphinxcontrib-jquery/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=4.1 +ENV SRC_HASH=f6a7578b00a8458e5edd38431d3ea4037b928a21ba1f82469ec2015127955c34 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/sphinx-contrib/jquery/archive/refs/tags/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR jquery-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-qthelp/Containerfile b/packages/py-sphinxcontrib-qthelp/Containerfile new file mode 100644 index 0000000..53f6929 --- /dev/null +++ b/packages/py-sphinxcontrib-qthelp/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=1.0.6 +ENV SRC_HASH=a7bd74c400fc84fadbd0bd74c6c48b1a12465dc950af335b59ee5e62e082fce3 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-qthelp/archive/refs/tags/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinxcontrib-qthelp-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-sphinxcontrib-serializinghtml/Containerfile b/packages/py-sphinxcontrib-serializinghtml/Containerfile new file mode 100644 index 0000000..2b9b637 --- /dev/null +++ b/packages/py-sphinxcontrib-serializinghtml/Containerfile @@ -0,0 +1,33 @@ +FROM scratch AS base +ENV VERSION=1.1.9 +ENV SRC_HASH=8ff6f82f0b7876eaaf258cb90d2ddfdc26ae069552bf6db6ae5eb534ae689c19 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/sphinx-doc/sphinxcontrib-serializinghtml/archive/refs/tags/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/python . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/zlib . / +RUN tar -xzf ${SRC_FILE} +WORKDIR sphinxcontrib-serializinghtml-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-trove-classifiers/Containerfile b/packages/py-trove-classifiers/Containerfile new file mode 100644 index 0000000..2502d28 --- /dev/null +++ b/packages/py-trove-classifiers/Containerfile @@ -0,0 +1,38 @@ +FROM scratch AS base +ENV VERSION=2024.5.17 +ENV SRC_HASH=5d0a143e5977e5c32a34265f803fcdbf064c57940ce95492fe6c559622f7497c +ENV SRC_FILE=py3-trove-classifiers-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/pypa/trove-classifiers/archive/${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-gpep517 . / +RUN tar -xzf ${SRC_FILE} +WORKDIR trove-classifiers-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/qemu/Containerfile b/packages/qemu/Containerfile new file mode 100644 index 0000000..b3ea659 --- /dev/null +++ b/packages/qemu/Containerfile @@ -0,0 +1,179 @@ +FROM scratch AS base +ENV VERSION=9.0.2 +ENV SRC_HASH=a8c3f596aece96da3b00cafb74baafa0d14515eafb8ed1ee3f7f5c2d0ebf02b6 +ENV SRC_FILE=qemu-${VERSION}.tar.xz +ENV SRC_SITE=https://download.qemu.org/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/bash . / +COPY --from=stagex/gzip . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/python . / +COPY --from=stagex/py-docutils . / +COPY --from=stagex/py-pygments . / +COPY --from=stagex/py-babel . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/py-sphinx . / +COPY --from=stagex/py-sphinx_rtd_theme . / +COPY --from=stagex/py-sphinxcontrib-applehelp . / +COPY --from=stagex/py-sphinxcontrib-devhelp . / +COPY --from=stagex/py-sphinxcontrib-htmlhelp . / +COPY --from=stagex/py-sphinxcontrib-qthelp . / +COPY --from=stagex/py-sphinxcontrib-serializinghtml . / +COPY --from=stagex/py-sphinxcontrib-jquery . / +COPY --from=stagex/py-jinja2 . / +COPY --from=stagex/py-markupsafe . / +COPY --from=stagex/py-snowballstemmer . / +COPY --from=stagex/py-imagesize . / +COPY --from=stagex/py-requests . / +COPY --from=stagex/py-urllib3 . / +COPY --from=stagex/py-idna . / +COPY --from=stagex/py-certifi . / +COPY --from=stagex/py-alabaster . / +COPY --from=stagex/make . / +COPY --from=stagex/bison . / +COPY --from=stagex/meson . / +COPY --from=stagex/ninja . / +COPY --from=stagex/libtool . / +COPY --from=stagex/openssl . / +COPY --from=stagex/git . / +COPY --from=stagex/zlib . / +COPY --from=stagex/libffi . / +COPY --from=stagex/libaio . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/libseccomp . / +COPY --from=stagex/libcap-ng . / +COPY --from=stagex/alsa-lib . / +COPY --from=stagex/ncurses . / +COPY --from=stagex/curl . / +COPY --from=stagex/flex . / +COPY --from=stagex/openssh . / +COPY --from=stagex/perl . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/glib . / +COPY --from=stagex/lzo . / +COPY --from=stagex/dtc . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/gettext . / +COPY --from=stagex/numactl . / +COPY --from=stagex/m4 . / +COPY --from=stagex/argp-standalone . / +COPY --from=stagex/musl . / +COPY --from=stagex/musl-fts . / +COPY --from=stagex/musl-obstack . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR qemu-${VERSION} +ADD *.patch . +ENV SOURCE_DATE_EPOCH=1 +ENV LDFLAGS=" \ + -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro \ + -Wl,-z,now -Wl,-z,pack-relative-relocs" +ENV CFLAGS=" \ + -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \ + -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \ + -fstack-clash-protection -fcf-protection \ + -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" +ENV CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" +ENV LTOFLAGS="-flto=auto" +RUN --network=none <<-EOF + set -eux + ./configure \ + --build="x86_64-linux-musl" \ + --host="x86_64-linux-musl" \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/qemu \ + --docdir=/usr/share/doc/qemu \ + --python=/usr/bin/python \ + --cc=gcc \ + --audio-drv-list=oss,alsa \ + --enable-curses \ + --enable-modules \ + --enable-tpm \ + --disable-docs \ + --disable-sdl \ + --disable-gtk \ + --disable-bpf \ + --disable-capstone \ + --disable-glusterfs \ + --disable-debug-info \ + --disable-opengl \ + --disable-bsd-user \ + --disable-werror \ + --disable-libnfs \ + --disable-libssh \ + --disable-snappy \ + --disable-spice \ + --disable-usb-redir \ + --disable-vde \ + --disable-vhost-net \ + --disable-virglrenderer \ + --disable-virtfs \ + --disable-vnc \ + --disable-vnc-jpeg \ + --disable-xen + make ARFLAGS="rc" +EOF + +FROM build AS install +RUN --network=none <<-EOF + make DESTDIR=/rootfs install + rm -rf /rootfs/var/run + strip /rootfs/usr/bin/qemu-* + # These are not currently deterministic so we can't release them yet + rm -rf /rootfs/usr/bin/qemu-aarch64 + rm -rf /rootfs/usr/bin/qemu-aarch64_be + rm -rf /rootfs/usr/bin/qemu-arm + rm -rf /rootfs/usr/bin/qemu-armeb + rm -rf /rootfs/usr/bin/qemu-hexagon + rm -rf /rootfs/usr/bin/qemu-hppa + rm -rf /rootfs/usr/bin/qemu-loongarch64 + rm -rf /rootfs/usr/bin/qemu-microblaze + rm -rf /rootfs/usr/bin/qemu-microblazeel + rm -rf /rootfs/usr/bin/qemu-mips + rm -rf /rootfs/usr/bin/qemu-mips64 + rm -rf /rootfs/usr/bin/qemu-mips64el + rm -rf /rootfs/usr/bin/qemu-mipsel + rm -rf /rootfs/usr/bin/qemu-mipsn32 + rm -rf /rootfs/usr/bin/qemu-mipsn32el + rm -rf /rootfs/usr/bin/qemu-or1k + rm -rf /rootfs/usr/bin/qemu-ppc + rm -rf /rootfs/usr/bin/qemu-ppc64 + rm -rf /rootfs/usr/bin/qemu-ppc64le + rm -rf /rootfs/usr/bin/qemu-riscv32 + rm -rf /rootfs/usr/bin/qemu-riscv64 + rm -rf /rootfs/usr/bin/qemu-sparc + rm -rf /rootfs/usr/bin/qemu-sparc32plus + rm -rf /rootfs/usr/bin/qemu-sparc64 + rm -rf /rootfs/usr/bin/qemu-system-aarch64 + rm -rf /rootfs/usr/bin/qemu-system-arm + rm -rf /rootfs/usr/bin/qemu-system-avr + rm -rf /rootfs/usr/bin/qemu-system-hppa + rm -rf /rootfs/usr/bin/qemu-system-loongarch64 + rm -rf /rootfs/usr/bin/qemu-system-microblaze + rm -rf /rootfs/usr/bin/qemu-system-microblazeel + rm -rf /rootfs/usr/bin/qemu-system-mips + rm -rf /rootfs/usr/bin/qemu-system-mips64 + rm -rf /rootfs/usr/bin/qemu-system-mips64el + rm -rf /rootfs/usr/bin/qemu-system-mipsel + rm -rf /rootfs/usr/bin/qemu-system-or1k + rm -rf /rootfs/usr/bin/qemu-system-ppc + rm -rf /rootfs/usr/bin/qemu-system-ppc64 + rm -rf /rootfs/usr/bin/qemu-system-riscv32 + rm -rf /rootfs/usr/bin/qemu-system-riscv64 + rm -rf /rootfs/usr/bin/qemu-system-rx + rm -rf /rootfs/usr/bin/qemu-system-sparc + rm -rf /rootfs/usr/bin/qemu-system-sparc64 +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/utmps/Containerfile b/packages/utmps/Containerfile index d2f4f62..d11bc25 100644 --- a/packages/utmps/Containerfile +++ b/packages/utmps/Containerfile @@ -8,7 +8,7 @@ ENV SRC_SITE=https://skarnet.org/software/utmps/${SRC_FILE} FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} -FROM fetch as build +FROM fetch AS build COPY --from=stagex/musl . / COPY --from=stagex/gcc . / COPY --from=stagex/busybox . / diff --git a/src/packages.mk b/src/packages.mk index 59df25e..7bd0d0a 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -1,34 +1,3 @@ -.PHONY: apr-util -apr-util: out/apr-util/index.json -out/apr-util/index.json: \ - packages/apr-util/Containerfile \ - out/binutils/index.json \ - out/busybox/index.json \ - out/expat/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/gdbm/index.json \ - out/make/index.json \ - out/musl/index.json \ - out/openldap/index.json \ - out/openssl/index.json \ - out/postgresql/index.json \ - out/sqlite3/index.json - $(call build,apr-util) - -.PHONY: libiconv -libiconv: out/libiconv/index.json -out/libiconv/index.json: \ - packages/libiconv/Containerfile \ - out/bash/index.json \ - out/binutils/index.json \ - out/busybox/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/make/index.json \ - out/musl/index.json \ - out/openssl/index.json - $(call build,libiconv) .PHONY: abseil-cpp abseil-cpp: out/abseil-cpp/index.json @@ -59,6 +28,19 @@ out/acl/index.json: \ out/musl/index.json $(call build,acl) +.PHONY: alsa-lib +alsa-lib: out/alsa-lib/index.json +out/alsa-lib/index.json: \ + packages/alsa-lib/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,alsa-lib) + .PHONY: apr apr: out/apr/index.json out/apr/index.json: \ @@ -72,6 +54,27 @@ out/apr/index.json: \ out/util-linux/index.json $(call build,apr) +.PHONY: apr-util +apr-util: out/apr-util/index.json +out/apr-util/index.json: \ + packages/apr-util/Containerfile \ + out/apr/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/expat/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gdbm/index.json \ + out/libtool/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openldap/index.json \ + out/openssl/index.json \ + out/postgresql/index.json \ + out/sqlite3/index.json \ + out/util-linux/index.json + $(call build,apr-util) + .PHONY: argon2 argon2: out/argon2/index.json out/argon2/index.json: \ @@ -544,6 +547,30 @@ out/doxygen/index.json: \ out/samurai/index.json $(call build,doxygen) +.PHONY: dtc +dtc: out/dtc/index.json +out/dtc/index.json: \ + packages/dtc/Containerfile \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/coreutils/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/libzstd/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/py-setuptools/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,dtc) + .PHONY: e2fsprogs e2fsprogs: out/e2fsprogs/index.json out/e2fsprogs/index.json: \ @@ -1250,6 +1277,19 @@ out/libcap/index.json: \ out/perl/index.json $(call build,libcap) +.PHONY: libcap-ng +libcap-ng: out/libcap-ng/index.json +out/libcap-ng/index.json: \ + packages/libcap-ng/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,libcap-ng) + .PHONY: libedit libedit: out/libedit/index.json out/libedit/index.json: \ @@ -1337,6 +1377,20 @@ out/libical/index.json: \ out/samurai/index.json $(call build,libical) +.PHONY: libiconv +libiconv: out/libiconv/index.json +out/libiconv/index.json: \ + packages/libiconv/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json + $(call build,libiconv) + .PHONY: libksba libksba: out/libksba/index.json out/libksba/index.json: \ @@ -1365,6 +1419,23 @@ out/libqrencode/index.json: \ out/musl/index.json $(call build,libqrencode) +.PHONY: libseccomp +libseccomp: out/libseccomp/index.json +out/libseccomp/index.json: \ + packages/libseccomp/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cython/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gperf/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,libseccomp) + .PHONY: libsodium libsodium: out/libsodium/index.json out/libsodium/index.json: \ @@ -1745,6 +1816,22 @@ out/lzip/index.json: \ out/musl/index.json $(call build,lzip) +.PHONY: lzo +lzo: out/lzo/index.json +out/lzo/index.json: \ + packages/lzo/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/zlib/index.json + $(call build,lzo) + .PHONY: m4 m4: out/m4/index.json out/m4/index.json: \ @@ -1918,6 +2005,39 @@ out/npth/index.json: \ out/zlib/index.json $(call build,npth) +.PHONY: numactl +numactl: out/numactl/index.json +out/numactl/index.json: \ + packages/numactl/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/gperf/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,numactl) + +.PHONY: nuspell +nuspell: out/nuspell/index.json +out/nuspell/index.json: \ + packages/nuspell/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/icu/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/samurai/index.json + $(call build,nuspell) + .PHONY: ocismack ocismack: out/ocismack/index.json out/ocismack/index.json: \ @@ -1933,24 +2053,7 @@ out/ocismack/index.json: \ out/openssl/index.json \ out/rust/index.json \ out/zlib/index.json - -.PHONY: nuspell -nuspell: out/nuspell/index.json -out/nuspell/index.json: \ - packages/nuspell/Containerfile \ - out/binutils/index.json \ - out/busybox/index.json \ - out/cmake/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/icu/index.json \ - out/make/index.json \ - out/musl/index.json \ - out/ninja/index.json \ - out/openssl/index.json \ - out/perl/index.json \ - out/samurai/index.json - $(call build,nuspell) + $(call build,ocismack) .PHONY: openldap openldap: out/openldap/index.json @@ -2366,6 +2469,29 @@ out/protoc-go-inject-tag/index.json: \ out/go/index.json $(call build,protoc-go-inject-tag) +.PHONY: py-alabaster +py-alabaster: out/py-alabaster/index.json +out/py-alabaster/index.json: \ + packages/py-alabaster/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-alabaster) + .PHONY: py-awscrt py-awscrt: out/py-awscrt/index.json out/py-awscrt/index.json: \ @@ -2388,6 +2514,29 @@ out/py-awscrt/index.json: \ out/zlib/index.json $(call build,py-awscrt) +.PHONY: py-babel +py-babel: out/py-babel/index.json +out/py-babel/index.json: \ + packages/py-babel/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-babel) + .PHONY: py-botocore py-botocore: out/py-botocore/index.json out/py-botocore/index.json: \ @@ -2542,9 +2691,13 @@ out/py-docutils/index.json: \ packages/py-docutils/Containerfile \ out/busybox/index.json \ out/filesystem/index.json \ + out/libffi/index.json \ out/musl/index.json \ out/py-flit/index.json \ out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ out/python/index.json \ out/zlib/index.json $(call build,py-docutils) @@ -2572,6 +2725,77 @@ out/py-gpep517/index.json: \ out/zlib/index.json $(call build,py-gpep517) +.PHONY: py-hatchling +py-hatchling: out/py-hatchling/index.json +out/py-hatchling/index.json: \ + packages/py-hatchling/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-pathspec/index.json \ + out/py-pluggy/index.json \ + out/py-trove-classifiers/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-hatchling) + +.PHONY: py-idna +py-idna: out/py-idna/index.json +out/py-idna/index.json: \ + packages/py-idna/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-idna) + +.PHONY: py-imagesize +py-imagesize: out/py-imagesize/index.json +out/py-imagesize/index.json: \ + packages/py-imagesize/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-imagesize) + .PHONY: py-installer py-installer: out/py-installer/index.json out/py-installer/index.json: \ @@ -2589,6 +2813,28 @@ out/py-installer/index.json: \ out/zlib/index.json $(call build,py-installer) +.PHONY: py-jinja2 +py-jinja2: out/py-jinja2/index.json +out/py-jinja2/index.json: \ + packages/py-jinja2/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-jinja2) + .PHONY: py-jmespath py-jmespath: out/py-jmespath/index.json out/py-jmespath/index.json: \ @@ -2602,6 +2848,29 @@ out/py-jmespath/index.json: \ out/zlib/index.json $(call build,py-jmespath) +.PHONY: py-markupsafe +py-markupsafe: out/py-markupsafe/index.json +out/py-markupsafe/index.json: \ + packages/py-markupsafe/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-markupsafe) + .PHONY: py-packaging py-packaging: out/py-packaging/index.json out/py-packaging/index.json: \ @@ -2615,6 +2884,27 @@ out/py-packaging/index.json: \ out/zlib/index.json $(call build,py-packaging) +.PHONY: py-pathspec +py-pathspec: out/py-pathspec/index.json +out/py-pathspec/index.json: \ + packages/py-pathspec/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-pathspec) + .PHONY: py-pep517 py-pep517: out/py-pep517/index.json out/py-pep517/index.json: \ @@ -2627,6 +2917,29 @@ out/py-pep517/index.json: \ out/zlib/index.json $(call build,py-pep517) +.PHONY: py-pluggy +py-pluggy: out/py-pluggy/index.json +out/py-pluggy/index.json: \ + packages/py-pluggy/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-pathspec/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-pluggy) + .PHONY: py-prompt_toolkit py-prompt_toolkit: out/py-prompt_toolkit/index.json out/py-prompt_toolkit/index.json: \ @@ -2640,6 +2953,55 @@ out/py-prompt_toolkit/index.json: \ out/zlib/index.json $(call build,py-prompt_toolkit) +.PHONY: py-pygments +py-pygments: out/py-pygments/index.json +out/py-pygments/index.json: \ + packages/py-pygments/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-hatchling/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-pathspec/index.json \ + out/py-pluggy/index.json \ + out/py-trove-classifiers/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-pygments) + +.PHONY: py-requests +py-requests: out/py-requests/index.json +out/py-requests/index.json: \ + packages/py-requests/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-requests) + .PHONY: py-ruamel.yaml py-ruamel.yaml: out/py-ruamel.yaml/index.json out/py-ruamel.yaml/index.json: \ @@ -2733,6 +3095,162 @@ out/py-six/index.json: \ out/zlib/index.json $(call build,py-six) +.PHONY: py-snowballstemmer +py-snowballstemmer: out/py-snowballstemmer/index.json +out/py-snowballstemmer/index.json: \ + packages/py-snowballstemmer/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-packaging/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-snowballstemmer) + +.PHONY: py-sphinx +py-sphinx: out/py-sphinx/index.json +out/py-sphinx/index.json: \ + packages/py-sphinx/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinx) + +.PHONY: py-sphinx_rtd_theme +py-sphinx_rtd_theme: out/py-sphinx_rtd_theme/index.json +out/py-sphinx_rtd_theme/index.json: \ + packages/py-sphinx_rtd_theme/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinx_rtd_theme) + +.PHONY: py-sphinxcontrib-applehelp +py-sphinxcontrib-applehelp: out/py-sphinxcontrib-applehelp/index.json +out/py-sphinxcontrib-applehelp/index.json: \ + packages/py-sphinxcontrib-applehelp/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-applehelp) + +.PHONY: py-sphinxcontrib-devhelp +py-sphinxcontrib-devhelp: out/py-sphinxcontrib-devhelp/index.json +out/py-sphinxcontrib-devhelp/index.json: \ + packages/py-sphinxcontrib-devhelp/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-devhelp) + +.PHONY: py-sphinxcontrib-htmlhelp +py-sphinxcontrib-htmlhelp: out/py-sphinxcontrib-htmlhelp/index.json +out/py-sphinxcontrib-htmlhelp/index.json: \ + packages/py-sphinxcontrib-htmlhelp/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-htmlhelp) + +.PHONY: py-sphinxcontrib-jquery +py-sphinxcontrib-jquery: out/py-sphinxcontrib-jquery/index.json +out/py-sphinxcontrib-jquery/index.json: \ + packages/py-sphinxcontrib-jquery/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-jquery) + +.PHONY: py-sphinxcontrib-qthelp +py-sphinxcontrib-qthelp: out/py-sphinxcontrib-qthelp/index.json +out/py-sphinxcontrib-qthelp/index.json: \ + packages/py-sphinxcontrib-qthelp/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-qthelp) + +.PHONY: py-sphinxcontrib-serializinghtml +py-sphinxcontrib-serializinghtml: out/py-sphinxcontrib-serializinghtml/index.json +out/py-sphinxcontrib-serializinghtml/index.json: \ + packages/py-sphinxcontrib-serializinghtml/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/libffi/index.json \ + out/musl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-sphinxcontrib-serializinghtml) + .PHONY: py-toml py-toml: out/py-toml/index.json out/py-toml/index.json: \ @@ -2745,6 +3263,28 @@ out/py-toml/index.json: \ out/zlib/index.json $(call build,py-toml) +.PHONY: py-trove-classifiers +py-trove-classifiers: out/py-trove-classifiers/index.json +out/py-trove-classifiers/index.json: \ + packages/py-trove-classifiers/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-trove-classifiers) + .PHONY: py-typing-extensions py-typing-extensions: out/py-typing-extensions/index.json out/py-typing-extensions/index.json: \ @@ -2827,6 +3367,74 @@ out/python/index.json: \ out/zlib/index.json $(call build,python) +.PHONY: qemu +qemu: out/qemu/index.json +out/qemu/index.json: \ + packages/qemu/Containerfile \ + out/alsa-lib/index.json \ + out/argp-standalone/index.json \ + out/autoconf/index.json \ + out/automake/index.json \ + out/bash/index.json \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/curl/index.json \ + out/dtc/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/gettext/index.json \ + out/git/index.json \ + out/glib/index.json \ + out/gzip/index.json \ + out/libaio/index.json \ + out/libcap-ng/index.json \ + out/libffi/index.json \ + out/libseccomp/index.json \ + out/libtool/index.json \ + out/libzstd/index.json \ + out/linux-headers/index.json \ + out/lzo/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/meson/index.json \ + out/musl/index.json \ + out/musl-fts/index.json \ + out/musl-obstack/index.json \ + out/ncurses/index.json \ + out/ninja/index.json \ + out/numactl/index.json \ + out/openssh/index.json \ + out/openssl/index.json \ + out/pcre2/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/py-alabaster/index.json \ + out/py-babel/index.json \ + out/py-certifi/index.json \ + out/py-docutils/index.json \ + out/py-idna/index.json \ + out/py-imagesize/index.json \ + out/py-jinja2/index.json \ + out/py-markupsafe/index.json \ + out/py-packaging/index.json \ + out/py-pygments/index.json \ + out/py-requests/index.json \ + out/py-snowballstemmer/index.json \ + out/py-sphinx/index.json \ + out/py-sphinx_rtd_theme/index.json \ + out/py-sphinxcontrib-applehelp/index.json \ + out/py-sphinxcontrib-devhelp/index.json \ + out/py-sphinxcontrib-htmlhelp/index.json \ + out/py-sphinxcontrib-jquery/index.json \ + out/py-sphinxcontrib-qthelp/index.json \ + out/py-sphinxcontrib-serializinghtml/index.json \ + out/py-urllib3/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,qemu) + .PHONY: re2c re2c: out/re2c/index.json out/re2c/index.json: \ @@ -3268,28 +3876,6 @@ out/xmlto/index.json: \ out/zlib/index.json $(call build,xmlto) -.PHONY: xorgproto -xorgproto: out/xorgproto/index.json -out/xorgproto/index.json: \ - packages/xorgproto/Containerfile \ - out/autoconf/index.json \ - out/automake/index.json \ - out/bash/index.json \ - out/binutils/index.json \ - out/busybox/index.json \ - out/filesystem/index.json \ - out/gcc/index.json \ - out/m4/index.json \ - out/make/index.json \ - out/meson/index.json \ - out/musl/index.json \ - out/ninja/index.json \ - out/perl/index.json \ - out/pkgconf/index.json \ - out/util-macros/index.json \ - out/zlib/index.json - $(call build,xorgproto) - .PHONY: xorriso xorriso: out/xorriso/index.json out/xorriso/index.json: \ From a9270885f567a765ff17d755a9d16136225fc1f7 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sun, 18 Aug 2024 16:36:31 -0700 Subject: [PATCH 35/57] feat: package sdtool --- packages/sdtool/Containerfile | 25 +++++++++++++++++++++++++ src/packages.mk | 13 +++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 packages/sdtool/Containerfile diff --git a/packages/sdtool/Containerfile b/packages/sdtool/Containerfile new file mode 100644 index 0000000..e994fbc --- /dev/null +++ b/packages/sdtool/Containerfile @@ -0,0 +1,25 @@ +FROM scratch AS base +ENV VERSION=ad4155c1d2988a17f4d5b13feaa6e4c1beb2cf4b +ENV SRC_HASH=82d289e47a6a379bc17df7fc9e5c665ef59edc4dd8a32998f244a6a7f22c24f7 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/BertoldVdb/sdtool/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +RUN tar -xf ${SRC_FILE} +WORKDIR sdtool-${VERSION} +RUN --network=none make all + +FROM build AS install +RUN --network=none install -D -m644 sdtool /rootfs/usr/bin/sdtool + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 7bd0d0a..0864a3a 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -3544,6 +3544,19 @@ out/scdoc/index.json: \ out/musl/index.json $(call build,scdoc) +.PHONY: sdtool +sdtool: out/sdtool/index.json +out/sdtool/index.json: \ + packages/sdtool/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,sdtool) + .PHONY: sed sed: out/sed/index.json out/sed/index.json: \ From 33f1d0e3010aef94028729df58d9ccb3f9954c23 Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Fri, 24 May 2024 23:40:54 +0000 Subject: [PATCH 36/57] feat: add ocaml --- packages/ocaml/Containerfile | 41 ++++++++++++++++++++++++++++++++++++ src/packages.mk | 13 ++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 packages/ocaml/Containerfile diff --git a/packages/ocaml/Containerfile b/packages/ocaml/Containerfile new file mode 100644 index 0000000..26de073 --- /dev/null +++ b/packages/ocaml/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=5.2.0 +ENV SRC_HASH=48554abfd530fcdaa08f23f801b699e4f74c320ddf7d0bd56b0e8c24e55fc911 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/ocaml/ocaml/archive/refs/tags/${SRC_FILE} +ENV SOURCE_DATE_EPOCH=1 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/libzstd . / +RUN tar -xf ${SRC_FILE} +WORKDIR /ocaml-${VERSION} +RUN --network=none <<-EOF + set -eux + + CFLAGS="-fPIC" \ + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var + make -j "$(nproc)" +EOF + +FROM build AS install +RUN --network=none <<-EOF + set -eux + + make install DESTDIR=/rootfs +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 0864a3a..4d10fe5 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -2038,6 +2038,19 @@ out/nuspell/index.json: \ out/samurai/index.json $(call build,nuspell) +.PHONY: ocaml +ocaml: out/ocaml/index.json +out/ocaml/index.json: \ + packages/ocaml/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libzstd/index.json \ + out/make/index.json \ + out/musl/index.json + $(call build,ocaml) + .PHONY: ocismack ocismack: out/ocismack/index.json out/ocismack/index.json: \ From 266467f61bc62e8e67ce5a72309ba0d127d015af Mon Sep 17 00:00:00 2001 From: ConYel Date: Tue, 20 Aug 2024 13:36:08 +0200 Subject: [PATCH 37/57] feat: add py-magic py-libarchive and diffoscope --- packages/diffoscope/Containerfile | 46 +++++++++++++++ packages/py-libarchive/Containerfile | 43 ++++++++++++++ packages/py-magic/Containerfile | 43 ++++++++++++++ src/packages.mk | 83 ++++++++++++++++++++++++++++ 4 files changed, 215 insertions(+) create mode 100644 packages/diffoscope/Containerfile create mode 100644 packages/py-libarchive/Containerfile create mode 100644 packages/py-magic/Containerfile diff --git a/packages/diffoscope/Containerfile b/packages/diffoscope/Containerfile new file mode 100644 index 0000000..158fe94 --- /dev/null +++ b/packages/diffoscope/Containerfile @@ -0,0 +1,46 @@ +FROM scratch AS base +ENV VERSION=274 +ENV SRC_HASH=c5398be0f26cb13344f4e27cf5a53df2b7a246a7b08944d114eee140989e5bb5 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://salsa.debian.org/reproducible-builds/diffoscope/-/archive/${VERSION}/diffoscope-${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/file . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-distro . / +COPY --from=stagex/py-dateutil . / +COPY --from=stagex/py-urllib3 . / +COPY --from=stagex/py-cffi . / +COPY --from=stagex/py-magic . / +COPY --from=stagex/py-libarchive . / +RUN tar -xzf diffoscope-${SRC_FILE} +WORKDIR diffoscope-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 +# +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / + diff --git a/packages/py-libarchive/Containerfile b/packages/py-libarchive/Containerfile new file mode 100644 index 0000000..d2f9ac6 --- /dev/null +++ b/packages/py-libarchive/Containerfile @@ -0,0 +1,43 @@ +FROM scratch AS base +ENV VERSION=5.1 +ENV SRC_HASH=b8198dd259684f75622112eb3172800780fbedda0a83652d22d36db0d4c0433c +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/Changaco/python-libarchive-c/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/python . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/libarchive . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-distro . / +COPY --from=stagex/py-dateutil . / +COPY --from=stagex/py-urllib3 . / +COPY --from=stagex/py-cffi . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/libffi . / +COPY --from=stagex/cmake . / +COPY --from=stagex/gcc . / +RUN tar -xzf ${SRC_FILE} +WORKDIR python-libarchive-c-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 + +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/py-magic/Containerfile b/packages/py-magic/Containerfile new file mode 100644 index 0000000..fc21a37 --- /dev/null +++ b/packages/py-magic/Containerfile @@ -0,0 +1,43 @@ +FROM scratch AS base +ENV VERSION=0.4.27 +ENV SRC_HASH=3978a25d43d9a7b8a89ae9d726bd4962fc90dc4f69ae852e399f3c56d4b0bd63 +ENV SRC_FILE=${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/ahupp/python-magic/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/zlib . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/libffi . / +COPY --from=stagex/py-setuptools . / +COPY --from=stagex/py-installer . / +COPY --from=stagex/py-flit . / +COPY --from=stagex/py-gpep517 . / +COPY --from=stagex/py-wheel . / +COPY --from=stagex/py-distro . / +COPY --from=stagex/py-dateutil . / +COPY --from=stagex/py-urllib3 . / +COPY --from=stagex/py-cffi . / +COPY --from=stagex/file . / +RUN tar -xzf ${SRC_FILE} +WORKDIR python-magic-${VERSION} +RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 +# +FROM build AS install +RUN --network=none <<-EOF + set -eu + python -m installer -d /rootfs .dist/*.whl + find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 4d10fe5..087c1ce 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -465,6 +465,35 @@ out/cython/index.json: \ out/zlib/index.json $(call build,cython) +.PHONY: diffoscope +diffoscope: out/diffoscope/index.json +out/diffoscope/index.json: \ + packages/diffoscope/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/file/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-cffi/index.json \ + out/py-dateutil/index.json \ + out/py-distro/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-libarchive/index.json \ + out/py-magic/index.json \ + out/py-setuptools/index.json \ + out/py-urllib3/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,diffoscope) + .PHONY: diffutils diffutils: out/diffutils/index.json out/diffutils/index.json: \ @@ -2861,6 +2890,60 @@ out/py-jmespath/index.json: \ out/zlib/index.json $(call build,py-jmespath) +.PHONY: py-libarchive +py-libarchive: out/py-libarchive/index.json +out/py-libarchive/index.json: \ + packages/py-libarchive/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libarchive/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-cffi/index.json \ + out/py-dateutil/index.json \ + out/py-distro/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-urllib3/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-libarchive) + +.PHONY: py-magic +py-magic: out/py-magic/index.json +out/py-magic/index.json: \ + packages/py-magic/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/file/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libffi/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/py-cffi/index.json \ + out/py-dateutil/index.json \ + out/py-distro/index.json \ + out/py-flit/index.json \ + out/py-gpep517/index.json \ + out/py-installer/index.json \ + out/py-setuptools/index.json \ + out/py-urllib3/index.json \ + out/py-wheel/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,py-magic) + .PHONY: py-markupsafe py-markupsafe: out/py-markupsafe/index.json out/py-markupsafe/index.json: \ From 2a1e59f19475053be7650c37f1e3d3e137241702 Mon Sep 17 00:00:00 2001 From: ConYel Date: Tue, 20 Aug 2024 20:52:53 +0200 Subject: [PATCH 38/57] chore: add ncurses to python cause of diffoscope --- packages/python/Containerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/python/Containerfile b/packages/python/Containerfile index 428af9c..fe8c7ec 100644 --- a/packages/python/Containerfile +++ b/packages/python/Containerfile @@ -16,6 +16,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / COPY --from=stagex/bzip2 . / +COPY --from=stagex/ncurses . / COPY --from=stagex/sqlite3 . / COPY --from=stagex/libffi . / RUN tar -xf ${SRC_FILE} From 315332851ff4e498a13ce7d688798b46e309a48f Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Thu, 15 Aug 2024 01:06:55 +0200 Subject: [PATCH 39/57] build: add a docker lint check before building a package --- src/macros.mk | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/macros.mk b/src/macros.mk index a9989a8..8327148 100644 --- a/src/macros.mk +++ b/src/macros.mk @@ -20,7 +20,7 @@ # - actually output OCI files for each build (vs plain tar) # - output manifest.txt of all tar/digest hashes for an easy git diff # - support buildah and podman -define build +define build-pkg $(eval NAME := $(1)) $(eval VERSION := $(if $(2),$(2),latest)) $(eval TARGET := $(if $(3),$(3),package)) @@ -56,3 +56,29 @@ define build && $(BUILD_CMD) \ && echo $(TIMESTAMP) $(BUILD_CMD) end >> out/build.log; endef + +define check-pkg + $(eval NAME := $(1)) + $(eval BUILD_CMD := \ + DOCKER_BUILDKIT=1 \ + BUILDKIT_MULTI_PLATFORM=1 \ + SOURCE_DATE_EPOCH=1 \ + $(BUILDER) \ + build \ + --check \ + --progress=plain \ + -f packages/$(NAME)/Containerfile \ + packages/$(NAME) \ + ) + $(BUILD_CMD) +endef + +define build + $(eval NAME := $(1)) + $(eval VERSION := $(if $(2),$(2),)) + $(eval TARGET := $(if $(3),$(3),)) + $(eval EXTRA_ARGS := $(if $(4),$(4),)) + + $(call check-pkg,$(NAME)) + $(call build-pkg,$(NAME),$(VERSION),$(TARGET),$(EXTRA_ARGS)) +endef From d879eb12c40608e06819a76c3f4aa284a63e9309 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sun, 25 Aug 2024 20:56:43 -0700 Subject: [PATCH 40/57] feat: make 'check' target --- Makefile | 12 ++++++++++++ src/macros.mk | 29 ++--------------------------- 2 files changed, 14 insertions(+), 27 deletions(-) diff --git a/Makefile b/Makefile index 1740431..67051ec 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,7 @@ export PLATFORM := linux/amd64 export BUILDER := $(shell which docker) export REGISTRY_LOCAL := stagex-local export REGISTRY_REMOTE := stagex +export CHECK ?= 0 export NOCACHE ?= 0 export MIRRORS := \ git.distrust.co \ @@ -12,6 +13,13 @@ else NOCACHE_FLAG= endif export NOCACHE_FLAG +ifeq ($(CHECK), 1) +CHECK_FLAG=--check +else +CHECK_FLAG= +endif +export CHECK_FLAG + clean_logs := $(shell rm *.log 2>&1 >/dev/null || :) DEFAULT_GOAL := default @@ -28,6 +36,10 @@ all: \ $(shell find packages/* -type d -exec sh -c 'basename {} | tr "\n" " "' \; ) \ digests.txt +.PHONY: check +check: + $(MAKE) CHECK=1 all + .PHONY: compat compat: ./src/compat.sh diff --git a/src/macros.mk b/src/macros.mk index 8327148..1d30dec 100644 --- a/src/macros.mk +++ b/src/macros.mk @@ -20,7 +20,7 @@ # - actually output OCI files for each build (vs plain tar) # - output manifest.txt of all tar/digest hashes for an easy git diff # - support buildah and podman -define build-pkg +define build $(eval NAME := $(1)) $(eval VERSION := $(if $(2),$(2),latest)) $(eval TARGET := $(if $(3),$(3),package)) @@ -46,6 +46,7 @@ define build-pkg $(shell ./src/context.sh $(NAME)) \ $(EXTRA_ARGS) \ $(NOCACHE_FLAG) \ + $(CHECK_FLAG) \ -f packages/$(NAME)/Containerfile \ packages/$(NAME) \ ) @@ -56,29 +57,3 @@ define build-pkg && $(BUILD_CMD) \ && echo $(TIMESTAMP) $(BUILD_CMD) end >> out/build.log; endef - -define check-pkg - $(eval NAME := $(1)) - $(eval BUILD_CMD := \ - DOCKER_BUILDKIT=1 \ - BUILDKIT_MULTI_PLATFORM=1 \ - SOURCE_DATE_EPOCH=1 \ - $(BUILDER) \ - build \ - --check \ - --progress=plain \ - -f packages/$(NAME)/Containerfile \ - packages/$(NAME) \ - ) - $(BUILD_CMD) -endef - -define build - $(eval NAME := $(1)) - $(eval VERSION := $(if $(2),$(2),)) - $(eval TARGET := $(if $(3),$(3),)) - $(eval EXTRA_ARGS := $(if $(4),$(4),)) - - $(call check-pkg,$(NAME)) - $(call build-pkg,$(NAME),$(VERSION),$(TARGET),$(EXTRA_ARGS)) -endef From d6367513c3062742ae7d3b37a03628b510f8c012 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Sun, 25 Aug 2024 22:58:07 -0700 Subject: [PATCH 41/57] fix: no longer include digests.txt in default --- Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 67051ec..64d948d 100644 --- a/Makefile +++ b/Makefile @@ -33,8 +33,7 @@ include src/groups.mk .PHONY: all all: \ compat \ - $(shell find packages/* -type d -exec sh -c 'basename {} | tr "\n" " "' \; ) \ - digests.txt + $(shell find packages/* -type d -exec sh -c 'basename {} | tr "\n" " "' \; ) .PHONY: check check: From 9fcd530d77631e638554d5a6c07f462c2383a8ef Mon Sep 17 00:00:00 2001 From: Danny Grove Date: Sun, 25 Aug 2024 18:18:52 -0700 Subject: [PATCH 42/57] Ensure that all WORKDIRs are absolute --- packages/abseil-cpp/Containerfile | 2 +- packages/acl/Containerfile | 2 +- packages/alsa-lib/Containerfile | 2 +- packages/apr-util/Containerfile | 2 +- packages/apr/Containerfile | 2 +- packages/argon2/Containerfile | 2 +- packages/argp-standalone/Containerfile | 2 +- packages/aspell/Containerfile | 2 +- packages/attr/Containerfile | 2 +- packages/autoconf-archive/Containerfile | 2 +- packages/autoconf/Containerfile | 2 +- packages/automake/Containerfile | 2 +- packages/aws-cli/Containerfile | 2 +- packages/bash/Containerfile | 2 +- packages/bc/Containerfile | 2 +- packages/binutils/Containerfile | 2 +- packages/bison/Containerfile | 2 +- packages/brotli/Containerfile | 2 +- packages/buf/Containerfile | 2 +- packages/busybox/Containerfile | 2 +- packages/bzip2/Containerfile | 2 +- packages/ca-certificates/Containerfile | 2 +- packages/ccid/Containerfile | 2 +- packages/clang/Containerfile | 2 +- packages/clang16/Containerfile | 2 +- packages/cmake/Containerfile | 2 +- packages/coreutils/Containerfile | 2 +- packages/cpio/Containerfile | 2 +- packages/curl/Containerfile | 2 +- packages/cython/Containerfile | 2 +- packages/diffoscope/Containerfile | 2 +- packages/diffutils/Containerfile | 2 +- packages/docbook-xsl/Containerfile | 2 +- packages/dosfstools/Containerfile | 2 +- packages/doxygen/Containerfile | 2 +- packages/dtc/Containerfile | 2 +- packages/e2fsprogs/Containerfile | 2 +- packages/ed/Containerfile | 2 +- packages/eif_build/Containerfile | 4 ++-- packages/elfutils/Containerfile | 2 +- packages/eudev/Containerfile | 2 +- packages/expat/Containerfile | 2 +- packages/file/Containerfile | 2 +- packages/filesystem/Containerfile | 2 +- packages/findutils/Containerfile | 2 +- packages/flashtools/Containerfile | 2 +- packages/flex/Containerfile | 2 +- packages/fmt/Containerfile | 2 +- packages/freetds/Containerfile | 2 +- packages/gawk/Containerfile | 2 +- packages/gcc/Containerfile | 2 +- packages/gdbm/Containerfile | 2 +- packages/gen_initramfs/Containerfile | 2 +- packages/gettext/Containerfile | 2 +- packages/git/Containerfile | 2 +- packages/glib/Containerfile | 2 +- packages/gmp/Containerfile | 2 +- packages/go-md2man/Containerfile | 2 +- packages/go/Containerfile | 8 ++++---- packages/gperf/Containerfile | 2 +- packages/gpg/Containerfile | 2 +- packages/grep/Containerfile | 2 +- packages/groff/Containerfile | 2 +- packages/grpcurl/Containerfile | 2 +- packages/grub/Containerfile | 2 +- packages/gzip/Containerfile | 2 +- packages/helm/Containerfile | 2 +- packages/hunspell/Containerfile | 2 +- packages/icu/Containerfile | 2 +- packages/iputils/Containerfile | 2 +- packages/jq/Containerfile | 2 +- packages/json-c/Containerfile | 2 +- packages/k9s/Containerfile | 2 +- packages/keyfork/Containerfile | 2 +- packages/krb5/Containerfile | 2 +- packages/ksops-dry-run/Containerfile | 2 +- packages/kubeconform/Containerfile | 2 +- packages/kubectl/Containerfile | 2 +- packages/kustomize-sops/Containerfile | 2 +- packages/kustomize/Containerfile | 2 +- packages/libaio/Containerfile | 2 +- packages/libarchive/Containerfile | 2 +- packages/libassuan/Containerfile | 2 +- packages/libcap-ng/Containerfile | 2 +- packages/libcap/Containerfile | 2 +- packages/libedit/Containerfile | 2 +- packages/libevent/Containerfile | 2 +- packages/libffi/Containerfile | 2 +- packages/libgcrypt/Containerfile | 2 +- packages/libgpg-error/Containerfile | 2 +- packages/libical/Containerfile | 2 +- packages/libiconv/Containerfile | 2 +- packages/libksba/Containerfile | 2 +- packages/libqrencode/Containerfile | 2 +- packages/libseccomp/Containerfile | 2 +- packages/libsodium/Containerfile | 2 +- packages/libtool/Containerfile | 2 +- packages/libunwind/Containerfile | 2 +- packages/libusb/Containerfile | 2 +- packages/libverto/Containerfile | 2 +- packages/libxml2/Containerfile | 2 +- packages/libxslt/Containerfile | 2 +- packages/libzstd/Containerfile | 2 +- packages/linux-airgap/Containerfile | 2 +- packages/linux-generic/Containerfile | 2 +- packages/linux-headers/Containerfile | 2 +- packages/linux-nitro/Containerfile | 2 +- packages/linux-pam/Containerfile | 2 +- packages/lld/Containerfile | 2 +- packages/llvm/Containerfile | 2 +- packages/llvm13/Containerfile | 2 +- packages/llvm16/Containerfile | 2 +- packages/lmdb/Containerfile | 2 +- packages/lua/Containerfile | 2 +- packages/lzip/Containerfile | 2 +- packages/lzo/Containerfile | 2 +- packages/m4/Containerfile | 2 +- packages/make/Containerfile | 2 +- packages/mdbook/Containerfile | 2 +- packages/meson/Containerfile | 2 +- packages/mockgen/Containerfile | 2 +- packages/mtools/Containerfile | 2 +- packages/musl-fts/Containerfile | 2 +- packages/musl-obstack/Containerfile | 2 +- packages/musl/Containerfile | 2 +- packages/ncurses/Containerfile | 2 +- packages/nettle/Containerfile | 2 +- packages/ninja/Containerfile | 2 +- packages/npth/Containerfile | 2 +- packages/numactl/Containerfile | 2 +- packages/nuspell/Containerfile | 2 +- packages/ocaml/Containerfile | 2 +- packages/ocismack/Containerfile | 2 +- packages/openldap/Containerfile | 2 +- packages/openpgp-card-tools/Containerfile | 2 +- packages/opensc/Containerfile | 2 +- packages/openssh/Containerfile | 2 +- packages/openssl/Containerfile | 2 +- packages/pcre2/Containerfile | 2 +- packages/pcsc-lite/Containerfile | 2 +- packages/pcsc-tools/Containerfile | 2 +- packages/perl-dbi/Containerfile | 2 +- packages/perl-module-build/Containerfile | 2 +- packages/perl-pod-parser/Containerfile | 2 +- packages/perl-yaml-syck/Containerfile | 2 +- packages/perl/Containerfile | 2 +- packages/php/Containerfile | 2 +- packages/pkgconf/Containerfile | 2 +- packages/po4a/Containerfile | 2 +- packages/postgresql/Containerfile | 2 +- packages/protobuf/Containerfile | 2 +- packages/protoc-gen-go-grpc/Containerfile | 2 +- packages/protoc-gen-go/Containerfile | 2 +- .../protoc-gen-grpc-gateway/Containerfile | 2 +- packages/protoc-gen-openapiv2/Containerfile | 2 +- packages/protoc-go-inject-tag/Containerfile | 2 +- packages/py-alabaster/Containerfile | 2 +- packages/py-awscrt/Containerfile | 2 +- packages/py-babel/Containerfile | 2 +- packages/py-botocore/Containerfile | 2 +- packages/py-build/Containerfile | 2 +- packages/py-certifi/Containerfile | 2 +- packages/py-cffi/Containerfile | 2 +- packages/py-colorama/Containerfile | 2 +- packages/py-cparser/Containerfile | 2 +- packages/py-cryptography/Containerfile | 2 +- packages/py-dateutil/Containerfile | 2 +- packages/py-distro/Containerfile | 2 +- packages/py-docutils/Containerfile | 2 +- packages/py-flit/Containerfile | 2 +- packages/py-gpep517/Containerfile | 2 +- packages/py-hatchling/Containerfile | 2 +- packages/py-idna/Containerfile | 2 +- packages/py-imagesize/Containerfile | 2 +- packages/py-installer/Containerfile | 2 +- packages/py-jinja2/Containerfile | 2 +- packages/py-jmespath/Containerfile | 2 +- packages/py-libarchive/Containerfile | 2 +- packages/py-magic/Containerfile | 2 +- packages/py-markupsafe/Containerfile | 2 +- packages/py-packaging/Containerfile | 2 +- packages/py-pathspec/Containerfile | 2 +- packages/py-pep517/Containerfile | 2 +- packages/py-pluggy/Containerfile | 2 +- packages/py-prompt_toolkit/Containerfile | 2 +- packages/py-pygments/Containerfile | 2 +- packages/py-requests/Containerfile | 2 +- packages/py-ruamel.yaml/Containerfile | 2 +- packages/py-semantic-version/Containerfile | 2 +- packages/py-setuptools-rust/Containerfile | 2 +- packages/py-setuptools-scm/Containerfile | 2 +- packages/py-setuptools/Containerfile | 2 +- packages/py-six/Containerfile | 2 +- packages/py-snowballstemmer/Containerfile | 2 +- packages/py-sphinx/Containerfile | 2 +- packages/py-sphinx_rtd_theme/Containerfile | 2 +- .../py-sphinxcontrib-applehelp/Containerfile | 2 +- .../py-sphinxcontrib-devhelp/Containerfile | 2 +- .../py-sphinxcontrib-htmlhelp/Containerfile | 2 +- .../py-sphinxcontrib-jquery/Containerfile | 2 +- .../py-sphinxcontrib-qthelp/Containerfile | 2 +- .../Containerfile | 2 +- packages/py-toml/Containerfile | 2 +- packages/py-trove-classifiers/Containerfile | 2 +- packages/py-typing-extensions/Containerfile | 2 +- packages/py-urllib3/Containerfile | 2 +- packages/py-wcwidth/Containerfile | 2 +- packages/py-wheel/Containerfile | 2 +- packages/python/Containerfile | 2 +- packages/qemu/Containerfile | 2 +- packages/re2c/Containerfile | 2 +- packages/readline/Containerfile | 2 +- packages/redis/Containerfile | 2 +- packages/rhash/Containerfile | 2 +- packages/samurai/Containerfile | 2 +- packages/scdoc/Containerfile | 2 +- packages/sdtool/Containerfile | 2 +- packages/sed/Containerfile | 2 +- packages/skalibs/Containerfile | 2 +- packages/sops/Containerfile | 2 +- packages/sqlite3/Containerfile | 2 +- packages/stage0/Containerfile | 6 +++--- packages/stage1/Containerfile | 2 +- packages/stage2/Containerfile | 20 +++++++++---------- packages/stage3/Containerfile | 14 ++++++------- packages/strace/Containerfile | 2 +- packages/sxctl/Containerfile | 4 ++-- packages/syslinux/Containerfile | 2 +- packages/talosctl/Containerfile | 2 +- packages/tar/Containerfile | 2 +- packages/tcl/Containerfile | 2 +- packages/texinfo/Containerfile | 2 +- packages/tflint/Containerfile | 2 +- packages/tofu/Containerfile | 2 +- packages/tpm2-tools/Containerfile | 2 +- packages/tpm2-tss/Containerfile | 2 +- packages/unixodbc/Containerfile | 2 +- packages/util-linux/Containerfile | 2 +- packages/util-macros/Containerfile | 2 +- packages/utmps/Containerfile | 2 +- packages/xmlto/Containerfile | 2 +- packages/xorriso/Containerfile | 2 +- packages/xz/Containerfile | 2 +- packages/yq/Containerfile | 2 +- packages/zig/Containerfile | 2 +- packages/zip/Containerfile | 2 +- packages/zlib/Containerfile | 2 +- 247 files changed, 269 insertions(+), 269 deletions(-) diff --git a/packages/abseil-cpp/Containerfile b/packages/abseil-cpp/Containerfile index 278b1c1..88aa9ab 100644 --- a/packages/abseil-cpp/Containerfile +++ b/packages/abseil-cpp/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/zlib . / RUN tar -xf ${SRC_FILE} -WORKDIR abseil-cpp-${VERSION} +WORKDIR /abseil-cpp-${VERSION} RUN <<-EOF set -eux cmake \ diff --git a/packages/acl/Containerfile b/packages/acl/Containerfile index bf5ce1c..b20b623 100644 --- a/packages/acl/Containerfile +++ b/packages/acl/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/attr . / RUN tar -xf ${SRC_FILE} -WORKDIR acl-${VERSION} +WORKDIR /acl-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/alsa-lib/Containerfile b/packages/alsa-lib/Containerfile index 0b12325..0a19048 100644 --- a/packages/alsa-lib/Containerfile +++ b/packages/alsa-lib/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/linux-headers . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR alsa-lib-${VERSION} +WORKDIR /alsa-lib-${VERSION} RUN --network=none <<-EOF set -eux; \ ./configure \ diff --git a/packages/apr-util/Containerfile b/packages/apr-util/Containerfile index 49859f4..9174206 100644 --- a/packages/apr-util/Containerfile +++ b/packages/apr-util/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/libtool . / COPY --from=stagex/util-linux . / RUN tar -xf ${SRC_FILE} -WORKDIR apr-util-${VERSION} +WORKDIR /apr-util-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux diff --git a/packages/apr/Containerfile b/packages/apr/Containerfile index 3998660..468c066 100644 --- a/packages/apr/Containerfile +++ b/packages/apr/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/util-linux . / RUN tar -xf ${SRC_FILE} -WORKDIR apr-${VERSION} +WORKDIR /apr-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux \ diff --git a/packages/argon2/Containerfile b/packages/argon2/Containerfile index 1c8dc94..b060e58 100644 --- a/packages/argon2/Containerfile +++ b/packages/argon2/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / RUN tar -xf $SRC_FILE -WORKDIR phc-winner-argon2-${VERSION} +WORKDIR /phc-winner-argon2-${VERSION} RUN --network=none <<-EOF set -eux make -j "$(nproc)" OPTTARGET=none ARGON2_VERSION=${VERSION} diff --git a/packages/argp-standalone/Containerfile b/packages/argp-standalone/Containerfile index 2e95803..533601a 100644 --- a/packages/argp-standalone/Containerfile +++ b/packages/argp-standalone/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/autoconf . / COPY --from=stagex/automake . / COPY --from=stagex/m4 . / RUN tar -xf ${SRC_FILE} -WORKDIR argp-standalone-${VERSION} +WORKDIR /argp-standalone-${VERSION} RUN --network=none <<-EOF set -eux /usr/bin/autoreconf -vif diff --git a/packages/aspell/Containerfile b/packages/aspell/Containerfile index d56683e..bf0a81f 100644 --- a/packages/aspell/Containerfile +++ b/packages/aspell/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf ${SRC_FILE} -WORKDIR aspell-${VERSION} +WORKDIR /aspell-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -ex diff --git a/packages/attr/Containerfile b/packages/attr/Containerfile index a8d8dc8..e82e935 100644 --- a/packages/attr/Containerfile +++ b/packages/attr/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/make . / COPY --from=stagex/perl . / RUN tar -xf ${SRC_FILE} -WORKDIR attr-${VERSION} +WORKDIR /attr-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/autoconf-archive/Containerfile b/packages/autoconf-archive/Containerfile index a7b56cd..9ba90c2 100644 --- a/packages/autoconf-archive/Containerfile +++ b/packages/autoconf-archive/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR autoconf-archive-${VERSION} +WORKDIR /autoconf-archive-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/autoconf/Containerfile b/packages/autoconf/Containerfile index 43ee262..c827cfd 100644 --- a/packages/autoconf/Containerfile +++ b/packages/autoconf/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/m4 . / COPY --from=stagex/perl . / RUN tar -xf ${SRC_FILE} -WORKDIR autoconf-${VERSION} +WORKDIR /autoconf-${VERSION} ENV M4=/usr/bin/m4 RUN --network=none <<-EOF set -eux diff --git a/packages/automake/Containerfile b/packages/automake/Containerfile index 9b1ef31..05338a8 100644 --- a/packages/automake/Containerfile +++ b/packages/automake/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/perl . / COPY --from=stagex/m4 . / COPY --from=stagex/autoconf . / RUN tar -xf automake-${VERSION}.tar.xz -WORKDIR automake-${VERSION} +WORKDIR /automake-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux diff --git a/packages/aws-cli/Containerfile b/packages/aws-cli/Containerfile index f7b20a1..cb9590b 100644 --- a/packages/aws-cli/Containerfile +++ b/packages/aws-cli/Containerfile @@ -36,7 +36,7 @@ COPY --from=stagex/py-wcwidth . / COPY --from=stagex/py-prompt_toolkit . / COPY --from=stagex/py-ruamel.yaml . / RUN tar -xzf ${SRC_FILE} -WORKDIR aws-cli-${VERSION} +WORKDIR /aws-cli-${VERSION} RUN --network=none \ gpep517 build-wheel \ --wheel-dir .dist \ diff --git a/packages/bash/Containerfile b/packages/bash/Containerfile index c24def6..fdd7534 100644 --- a/packages/bash/Containerfile +++ b/packages/bash/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / RUN tar -xzf ${SRC_FILE} -WORKDIR bash-${VERSION} +WORKDIR /bash-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/bc/Containerfile b/packages/bc/Containerfile index dd2cef3..8ee91f0 100644 --- a/packages/bc/Containerfile +++ b/packages/bc/Containerfile @@ -29,7 +29,7 @@ COPY --from=stagex/texinfo . / COPY --from=stagex/findutils . / COPY --from=stagex/sed . / RUN tar -xf ${SRC_FILE} -WORKDIR bc-${VERSION} +WORKDIR /bc-${VERSION} RUN --network=none <<-EOF set -ex ./configure \ diff --git a/packages/binutils/Containerfile b/packages/binutils/Containerfile index c508583..b4688b4 100644 --- a/packages/binutils/Containerfile +++ b/packages/binutils/Containerfile @@ -11,7 +11,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf binutils-${VERSION}.tar.xz -WORKDIR binutils-${VERSION} +WORKDIR /binutils-${VERSION} RUN --network=none <<-EOF set -ex CFLAGS='-Os -Wformat -Werror=format-security -O2' \ diff --git a/packages/bison/Containerfile b/packages/bison/Containerfile index c1fa9f6..77f6ba9 100644 --- a/packages/bison/Containerfile +++ b/packages/bison/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/automake . / COPY --from=stagex/make . / COPY --from=stagex/m4 . / RUN tar -xf ${SRC_FILE} -WORKDIR bison-${VERSION} +WORKDIR /bison-${VERSION} ENV M4=/usr/bin/m4 RUN --network=none <<-EOF set -eux diff --git a/packages/brotli/Containerfile b/packages/brotli/Containerfile index be02f79..4f50c96 100644 --- a/packages/brotli/Containerfile +++ b/packages/brotli/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/samurai . / COPY --from=stagex/cmake . / COPY --from=stagex/openssl . / RUN tar -xf ${SRC_FILE} -WORKDIR brotli-${VERSION} +WORKDIR /brotli-${VERSION} RUN --network=none <<-EOF set -eux cmake -B build -G Ninja \ diff --git a/packages/buf/Containerfile b/packages/buf/Containerfile index 5fca118..7945101 100644 --- a/packages/buf/Containerfile +++ b/packages/buf/Containerfile @@ -12,7 +12,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz -WORKDIR buf-${VERSION} +WORKDIR /buf-${VERSION} ENV PWD=/home/user/buf-${VERSION} ENV GOPATH=${PWD}/cache/go ENV GOCACHE=${PWD}/cache/ diff --git a/packages/busybox/Containerfile b/packages/busybox/Containerfile index 7d1249b..db7d909 100644 --- a/packages/busybox/Containerfile +++ b/packages/busybox/Containerfile @@ -10,7 +10,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xjf ${SRC_FILE} -WORKDIR busybox-${VERSION} +WORKDIR /busybox-${VERSION} ENV KCONFIG_NOTIMESTAMP=1 RUN --network=none <<-EOF set -eux diff --git a/packages/bzip2/Containerfile b/packages/bzip2/Containerfile index 97b1aaf..3654a7e 100644 --- a/packages/bzip2/Containerfile +++ b/packages/bzip2/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf ${SRC_FILE} -WORKDIR bzip2-${VERSION} +WORKDIR /bzip2-${VERSION} RUN --network=none <<-EOF set -ex make -j "$(nproc)" -f Makefile-libbz2_so all diff --git a/packages/ca-certificates/Containerfile b/packages/ca-certificates/Containerfile index d58f003..0429e68 100644 --- a/packages/ca-certificates/Containerfile +++ b/packages/ca-certificates/Containerfile @@ -23,7 +23,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/openssl . / COPY --from=stagex/perl . / RUN tar -xf ca-certificates-${SRC_2_VERSION}.tar.gz -WORKDIR ca-certificates-${SRC_2_VERSION} +WORKDIR /ca-certificates-${SRC_2_VERSION} ADD *.patch . RUN --network=none <<-EOF set -eux diff --git a/packages/ccid/Containerfile b/packages/ccid/Containerfile index f863b1d..18b2acc 100644 --- a/packages/ccid/Containerfile +++ b/packages/ccid/Containerfile @@ -21,7 +21,7 @@ COPY --from=stagex/pkgconf . / COPY --from=stagex/libusb . / COPY --from=stagex/zlib . / RUN tar -xvf $SRC_FILE -WORKDIR ccid-${VERSION} +WORKDIR /ccid-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/clang/Containerfile b/packages/clang/Containerfile index 3587d66..9cd3476 100644 --- a/packages/clang/Containerfile +++ b/packages/clang/Containerfile @@ -26,7 +26,7 @@ COPY --from=stagex/libxml2 . / COPY --from=stagex/samurai . / RUN tar -xf ${SRC_FILE} -WORKDIR llvm-project-${VERSION}.src +WORKDIR /llvm-project-${VERSION}.src RUN --network=none <<-EOF set -eux cmake \ diff --git a/packages/clang16/Containerfile b/packages/clang16/Containerfile index 6689390..4891949 100644 --- a/packages/clang16/Containerfile +++ b/packages/clang16/Containerfile @@ -22,7 +22,7 @@ COPY --from=stagex/llvm16 . / COPY --from=stagex/zlib . / RUN tar -xf ${SRC_FILE} -WORKDIR llvm-project-${VERSION}.src +WORKDIR /llvm-project-${VERSION}.src RUN --network=none <<-EOF set -eux cmake \ diff --git a/packages/cmake/Containerfile b/packages/cmake/Containerfile index d0de56e..82cb56a 100644 --- a/packages/cmake/Containerfile +++ b/packages/cmake/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/zlib . / COPY --from=stagex/openssl . / RUN tar -xf ${SRC_FILE} -WORKDIR cmake-${VERSION} +WORKDIR /cmake-${VERSION} RUN --network=none <<-EOF set -eux ./bootstrap \ diff --git a/packages/coreutils/Containerfile b/packages/coreutils/Containerfile index a23f121..ea94a1b 100644 --- a/packages/coreutils/Containerfile +++ b/packages/coreutils/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf coreutils-${VERSION}.tar.xz -WORKDIR coreutils-${VERSION} +WORKDIR /coreutils-${VERSION} ENV FORCE_UNSAFE_CONFIGURE=1 RUN --network=none <<-EOF set -ex diff --git a/packages/cpio/Containerfile b/packages/cpio/Containerfile index e6efeb8..4322e27 100644 --- a/packages/cpio/Containerfile +++ b/packages/cpio/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xzf ${SRC_FILE} -WORKDIR cpio-${VERSION} +WORKDIR /cpio-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/curl/Containerfile b/packages/curl/Containerfile index e7637dc..8f01949 100644 --- a/packages/curl/Containerfile +++ b/packages/curl/Containerfile @@ -18,7 +18,7 @@ COPY --from=stagex/openssl . / COPY --from=stagex/perl . / COPY --from=stagex/ca-certificates . / RUN tar -xf curl-${VERSION}.tar.xz -WORKDIR curl-${VERSION} +WORKDIR /curl-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/cython/Containerfile b/packages/cython/Containerfile index aa6dc49..c2ec176 100644 --- a/packages/cython/Containerfile +++ b/packages/cython/Containerfile @@ -28,7 +28,7 @@ COPY --from=stagex/py-dateutil . / COPY --from=stagex/py-urllib3 . / COPY --from=stagex/py-cffi . / RUN tar -xzf ${SRC_FILE} -WORKDIR cython-${VERSION} +WORKDIR /cython-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 # FROM build AS install diff --git a/packages/diffoscope/Containerfile b/packages/diffoscope/Containerfile index 158fe94..7c6c050 100644 --- a/packages/diffoscope/Containerfile +++ b/packages/diffoscope/Containerfile @@ -31,7 +31,7 @@ COPY --from=stagex/py-cffi . / COPY --from=stagex/py-magic . / COPY --from=stagex/py-libarchive . / RUN tar -xzf diffoscope-${SRC_FILE} -WORKDIR diffoscope-${VERSION} +WORKDIR /diffoscope-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 # FROM build AS install diff --git a/packages/diffutils/Containerfile b/packages/diffutils/Containerfile index 6403813..d7f6592 100644 --- a/packages/diffutils/Containerfile +++ b/packages/diffutils/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf ${SRC_FILE} -WORKDIR diffutils-${VERSION} +WORKDIR /diffutils-${VERSION} RUN --network=none <<-EOF set -ex ./configure \ diff --git a/packages/docbook-xsl/Containerfile b/packages/docbook-xsl/Containerfile index 2664fc9..0286e03 100644 --- a/packages/docbook-xsl/Containerfile +++ b/packages/docbook-xsl/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/zlib . / COPY --from=stagex/libxml2 . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR docbook-xsl-${VERSION} +WORKDIR /docbook-xsl-${VERSION} RUN --network=none <<-EOF set -eux dest=out/usr/share/xml/docbook/xsl-stylesheets-${VERSION} diff --git a/packages/dosfstools/Containerfile b/packages/dosfstools/Containerfile index 365427e..db7b2de 100644 --- a/packages/dosfstools/Containerfile +++ b/packages/dosfstools/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/autoconf . / COPY --from=stagex/automake . / COPY --from=stagex/musl . / RUN tar -xzf ${SRC_FILE} -WORKDIR dosfstools-${VERSION} +WORKDIR /dosfstools-${VERSION} RUN --network=none <<-EOF set -eux ./autogen.sh diff --git a/packages/doxygen/Containerfile b/packages/doxygen/Containerfile index b260de6..89ed805 100644 --- a/packages/doxygen/Containerfile +++ b/packages/doxygen/Containerfile @@ -27,7 +27,7 @@ COPY --from=stagex/perl . / COPY --from=stagex/openssl . / COPY --from=stagex/m4 . / RUN tar -xf ${SRC_FILE} -WORKDIR doxygen-${VERSION} +WORKDIR /doxygen-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux \ diff --git a/packages/dtc/Containerfile b/packages/dtc/Containerfile index 1bbe8f8..24d88e1 100644 --- a/packages/dtc/Containerfile +++ b/packages/dtc/Containerfile @@ -26,7 +26,7 @@ COPY --from=stagex/coreutils . / COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / RUN tar -xf ${SRC_FILE} -WORKDIR dtc-${VERSION} +WORKDIR /dtc-${VERSION} RUN --network=none <<-EOF set -eux sed -i s:-Werror::g Makefile diff --git a/packages/e2fsprogs/Containerfile b/packages/e2fsprogs/Containerfile index 2aac137..b16930b 100644 --- a/packages/e2fsprogs/Containerfile +++ b/packages/e2fsprogs/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/util-linux . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / RUN tar -xzf ${SRC_FILE} -WORKDIR e2fsprogs-${VERSION} +WORKDIR /e2fsprogs-${VERSION} RUN --network=none <<-EOF ./configure \ --build=${ARCH}-linux-musl \ diff --git a/packages/ed/Containerfile b/packages/ed/Containerfile index 0ee2ffa..201e4a8 100644 --- a/packages/ed/Containerfile +++ b/packages/ed/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/tar . / COPY --from=stagex/lzip . / COPY --from=stagex/gcc . / RUN tar --lzip -xf ${SRC_FILE} -WORKDIR ed-${VERSION} +WORKDIR /ed-${VERSION} RUN --network=none <<-EOF set -ex ./configure \ diff --git a/packages/eif_build/Containerfile b/packages/eif_build/Containerfile index 4ec053c..824abad 100644 --- a/packages/eif_build/Containerfile +++ b/packages/eif_build/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/git . / COPY --from=stagex/rust . / RUN tar -xzf ${SRC_FILE} RUN mv tkhq-eif_build-* eif_build -WORKDIR eif_build +WORKDIR /eif_build RUN cargo fetch --locked FROM fetch AS build @@ -32,7 +32,7 @@ RUN --network=none \ --target x86_64-unknown-linux-musl FROM build AS install -WORKDIR /rootfs/usr/bin +WORKDIR //rootfs/usr/bin RUN cp /eif_build/target/x86_64-unknown-linux-musl/release/eif_build . FROM stagex/filesystem AS package diff --git a/packages/elfutils/Containerfile b/packages/elfutils/Containerfile index d97f761..70e72ab 100644 --- a/packages/elfutils/Containerfile +++ b/packages/elfutils/Containerfile @@ -29,7 +29,7 @@ COPY --from=stagex/musl-fts . / COPY --from=stagex/musl-obstack . / COPY --from=stagex/linux-headers . / RUN tar -xjf ${SRC_FILE} -WORKDIR elfutils-${VERSION} +WORKDIR /elfutils-${VERSION} ADD *.patch . RUN --network=none <<-EOF set -eux diff --git a/packages/eudev/Containerfile b/packages/eudev/Containerfile index dcff4e6..e507bbe 100644 --- a/packages/eudev/Containerfile +++ b/packages/eudev/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/gcc . / COPY --from=stagex/gperf . / RUN --network=none tar -xf ${SRC_FILE} -WORKDIR eudev-${VERSION} +WORKDIR /eudev-${VERSION} RUN --network=none <&1 >&2 FROM build AS install diff --git a/packages/py-awscrt/Containerfile b/packages/py-awscrt/Containerfile index 1428c76..c60fa47 100644 --- a/packages/py-awscrt/Containerfile +++ b/packages/py-awscrt/Containerfile @@ -24,7 +24,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR awscrt-${VERSION} +WORKDIR /awscrt-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-babel/Containerfile b/packages/py-babel/Containerfile index a788ee2..1b7024d 100644 --- a/packages/py-babel/Containerfile +++ b/packages/py-babel/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR Babel-${VERSION} +WORKDIR /Babel-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-botocore/Containerfile b/packages/py-botocore/Containerfile index 937d7e9..c14c5fb 100644 --- a/packages/py-botocore/Containerfile +++ b/packages/py-botocore/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR botocore-${VERSION} +WORKDIR /botocore-${VERSION} RUN <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-build/Containerfile b/packages/py-build/Containerfile index a43aa84..f18e990 100644 --- a/packages/py-build/Containerfile +++ b/packages/py-build/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR build-${VERSION} +WORKDIR /build-${VERSION} RUN --network=none <<-EOF set -eu python setup.py install --root=/rootfs diff --git a/packages/py-certifi/Containerfile b/packages/py-certifi/Containerfile index 0a059d2..7c1cba4 100644 --- a/packages/py-certifi/Containerfile +++ b/packages/py-certifi/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR certifi-${VERSION} +WORKDIR /certifi-${VERSION} RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-cffi/Containerfile b/packages/py-cffi/Containerfile index ffd5205..1b77728 100644 --- a/packages/py-cffi/Containerfile +++ b/packages/py-cffi/Containerfile @@ -21,7 +21,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR cffi-${VERSION} +WORKDIR /cffi-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-colorama/Containerfile b/packages/py-colorama/Containerfile index 618a5a7..6523bde 100644 --- a/packages/py-colorama/Containerfile +++ b/packages/py-colorama/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR colorama-${VERSION} +WORKDIR /colorama-${VERSION} RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-cparser/Containerfile b/packages/py-cparser/Containerfile index b84c512..9c184dd 100644 --- a/packages/py-cparser/Containerfile +++ b/packages/py-cparser/Containerfile @@ -24,7 +24,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR pycparser-${VERSION} +WORKDIR /pycparser-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-cryptography/Containerfile b/packages/py-cryptography/Containerfile index 9d7119e..c0c0330 100644 --- a/packages/py-cryptography/Containerfile +++ b/packages/py-cryptography/Containerfile @@ -32,7 +32,7 @@ COPY --from=stagex/py-typing-extensions . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR cryptography-${VERSION} +WORKDIR /cryptography-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-dateutil/Containerfile b/packages/py-dateutil/Containerfile index d043fe0..ffba89c 100644 --- a/packages/py-dateutil/Containerfile +++ b/packages/py-dateutil/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR python-dateutil-${VERSION}/src +WORKDIR /python-dateutil-${VERSION}/src RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-distro/Containerfile b/packages/py-distro/Containerfile index ef84236..54b4e3f 100644 --- a/packages/py-distro/Containerfile +++ b/packages/py-distro/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR distro-${VERSION}/src +WORKDIR /distro-${VERSION}/src RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-docutils/Containerfile b/packages/py-docutils/Containerfile index 908a281..3294e80 100644 --- a/packages/py-docutils/Containerfile +++ b/packages/py-docutils/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR docutils-${VERSION} +WORKDIR /docutils-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-flit/Containerfile b/packages/py-flit/Containerfile index 1e313b1..bafe997 100644 --- a/packages/py-flit/Containerfile +++ b/packages/py-flit/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR flit-${VERSION}/flit_core +WORKDIR /flit-${VERSION}/flit_core RUN --network=none <<-EOF set -eu rm -rf flit_core/vendor diff --git a/packages/py-gpep517/Containerfile b/packages/py-gpep517/Containerfile index 718895f..d39d31f 100644 --- a/packages/py-gpep517/Containerfile +++ b/packages/py-gpep517/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/python . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR gpep517-${VERSION} +WORKDIR /gpep517-${VERSION} COPY <<-'EOF' gpep517-cli #!/usr/bin/python3 # -*- coding: utf-8 -*- diff --git a/packages/py-hatchling/Containerfile b/packages/py-hatchling/Containerfile index 08980aa..60e278f 100644 --- a/packages/py-hatchling/Containerfile +++ b/packages/py-hatchling/Containerfile @@ -27,7 +27,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR hatchling-${VERSION} +WORKDIR /hatchling-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-idna/Containerfile b/packages/py-idna/Containerfile index d836cf3..f328044 100644 --- a/packages/py-idna/Containerfile +++ b/packages/py-idna/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR idna-${VERSION} +WORKDIR /idna-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-imagesize/Containerfile b/packages/py-imagesize/Containerfile index 2ac7bdb..3e43846 100644 --- a/packages/py-imagesize/Containerfile +++ b/packages/py-imagesize/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR imagesize-${VERSION} +WORKDIR /imagesize-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-installer/Containerfile b/packages/py-installer/Containerfile index a3812dc..3c03db0 100644 --- a/packages/py-installer/Containerfile +++ b/packages/py-installer/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-packaging . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR installer-${VERSION} +WORKDIR /installer-${VERSION} RUN python -m build -wn --skip-dependency-check FROM build AS install diff --git a/packages/py-jinja2/Containerfile b/packages/py-jinja2/Containerfile index c8f15a9..a0fbf4f 100644 --- a/packages/py-jinja2/Containerfile +++ b/packages/py-jinja2/Containerfile @@ -24,7 +24,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR jinja2-${VERSION} +WORKDIR /jinja2-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-jmespath/Containerfile b/packages/py-jmespath/Containerfile index 994d6c6..dc0af6f 100644 --- a/packages/py-jmespath/Containerfile +++ b/packages/py-jmespath/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR jmespath-${VERSION} +WORKDIR /jmespath-${VERSION} RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-libarchive/Containerfile b/packages/py-libarchive/Containerfile index d2f9ac6..5282f2d 100644 --- a/packages/py-libarchive/Containerfile +++ b/packages/py-libarchive/Containerfile @@ -29,7 +29,7 @@ COPY --from=stagex/libffi . / COPY --from=stagex/cmake . / COPY --from=stagex/gcc . / RUN tar -xzf ${SRC_FILE} -WORKDIR python-libarchive-c-${VERSION} +WORKDIR /python-libarchive-c-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-magic/Containerfile b/packages/py-magic/Containerfile index fc21a37..3d37c30 100644 --- a/packages/py-magic/Containerfile +++ b/packages/py-magic/Containerfile @@ -29,7 +29,7 @@ COPY --from=stagex/py-urllib3 . / COPY --from=stagex/py-cffi . / COPY --from=stagex/file . / RUN tar -xzf ${SRC_FILE} -WORKDIR python-magic-${VERSION} +WORKDIR /python-magic-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 # FROM build AS install diff --git a/packages/py-markupsafe/Containerfile b/packages/py-markupsafe/Containerfile index c803b2a..420afb8 100644 --- a/packages/py-markupsafe/Containerfile +++ b/packages/py-markupsafe/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR MarkupSafe-${VERSION} +WORKDIR /MarkupSafe-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-packaging/Containerfile b/packages/py-packaging/Containerfile index 55bc54a..88dc8b9 100644 --- a/packages/py-packaging/Containerfile +++ b/packages/py-packaging/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR packaging-${VERSION}/src +WORKDIR /packaging-${VERSION}/src RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-pathspec/Containerfile b/packages/py-pathspec/Containerfile index ea60fa2..2b2ada4 100644 --- a/packages/py-pathspec/Containerfile +++ b/packages/py-pathspec/Containerfile @@ -23,7 +23,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR pathspec-${VERSION} +WORKDIR /pathspec-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-pep517/Containerfile b/packages/py-pep517/Containerfile index b10022b..75f8046 100644 --- a/packages/py-pep517/Containerfile +++ b/packages/py-pep517/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR pep517-${VERSION} +WORKDIR /pep517-${VERSION} RUN --network=none <<-EOF set -eu python setup.py install --root=/rootfs diff --git a/packages/py-pluggy/Containerfile b/packages/py-pluggy/Containerfile index 2870d14..b46a43a 100644 --- a/packages/py-pluggy/Containerfile +++ b/packages/py-pluggy/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR pluggy-${VERSION} +WORKDIR /pluggy-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-prompt_toolkit/Containerfile b/packages/py-prompt_toolkit/Containerfile index 63dc42e..1542b5a 100644 --- a/packages/py-prompt_toolkit/Containerfile +++ b/packages/py-prompt_toolkit/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR prompt_toolkit-${VERSION}/src +WORKDIR /prompt_toolkit-${VERSION}/src RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-pygments/Containerfile b/packages/py-pygments/Containerfile index fc53586..ebc9bba 100644 --- a/packages/py-pygments/Containerfile +++ b/packages/py-pygments/Containerfile @@ -28,7 +28,7 @@ COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-hatchling . / RUN tar -xzf ${SRC_FILE} -WORKDIR pygments-${VERSION} +WORKDIR /pygments-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-requests/Containerfile b/packages/py-requests/Containerfile index 9c87d7d..603e425 100644 --- a/packages/py-requests/Containerfile +++ b/packages/py-requests/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR requests-${VERSION} +WORKDIR /requests-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-ruamel.yaml/Containerfile b/packages/py-ruamel.yaml/Containerfile index 977662e..d97ac95 100644 --- a/packages/py-ruamel.yaml/Containerfile +++ b/packages/py-ruamel.yaml/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-installer . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR ruamel.yaml-${VERSION} +WORKDIR /ruamel.yaml-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-semantic-version/Containerfile b/packages/py-semantic-version/Containerfile index 8e624e9..510df3e 100644 --- a/packages/py-semantic-version/Containerfile +++ b/packages/py-semantic-version/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR semantic_version-${VERSION} +WORKDIR /semantic_version-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-setuptools-rust/Containerfile b/packages/py-setuptools-rust/Containerfile index c2ef278..2223717 100644 --- a/packages/py-setuptools-rust/Containerfile +++ b/packages/py-setuptools-rust/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/py-setuptools-scm . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR setuptools-rust-${VERSION} +WORKDIR /setuptools-rust-${VERSION} ENV SETUPTOOLS_SCM_PRETEND_VERSION=${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 diff --git a/packages/py-setuptools-scm/Containerfile b/packages/py-setuptools-scm/Containerfile index 09c5f9e..bed69f0 100644 --- a/packages/py-setuptools-scm/Containerfile +++ b/packages/py-setuptools-scm/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR setuptools-scm-${VERSION}/src +WORKDIR /setuptools-scm-${VERSION}/src ENV SETUPTOOLS_SCM_PRETEND_VERSION=${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 diff --git a/packages/py-setuptools/Containerfile b/packages/py-setuptools/Containerfile index 049cc20..6afb07e 100644 --- a/packages/py-setuptools/Containerfile +++ b/packages/py-setuptools/Containerfile @@ -13,7 +13,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/python . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR setuptools-${VERSION} +WORKDIR /setuptools-${VERSION} RUN python setup.py build FROM build AS install diff --git a/packages/py-six/Containerfile b/packages/py-six/Containerfile index aea1c44..58db8b3 100644 --- a/packages/py-six/Containerfile +++ b/packages/py-six/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR six-${VERSION} +WORKDIR /six-${VERSION} RUN --network=none <<-EOF set -eu sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')" diff --git a/packages/py-snowballstemmer/Containerfile b/packages/py-snowballstemmer/Containerfile index d106ede..33cdb4c 100644 --- a/packages/py-snowballstemmer/Containerfile +++ b/packages/py-snowballstemmer/Containerfile @@ -25,7 +25,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR snowballstemmer-${VERSION} +WORKDIR /snowballstemmer-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinx/Containerfile b/packages/py-sphinx/Containerfile index 109d204..c9ea236 100644 --- a/packages/py-sphinx/Containerfile +++ b/packages/py-sphinx/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinx-${VERSION} +WORKDIR /sphinx-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinx_rtd_theme/Containerfile b/packages/py-sphinx_rtd_theme/Containerfile index 97a1fab..ba78929 100644 --- a/packages/py-sphinx_rtd_theme/Containerfile +++ b/packages/py-sphinx_rtd_theme/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinx_rtd_theme-${VERSION} +WORKDIR /sphinx_rtd_theme-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-applehelp/Containerfile b/packages/py-sphinxcontrib-applehelp/Containerfile index 5bc227e..f101837 100644 --- a/packages/py-sphinxcontrib-applehelp/Containerfile +++ b/packages/py-sphinxcontrib-applehelp/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinxcontrib-applehelp-${VERSION} +WORKDIR /sphinxcontrib-applehelp-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-devhelp/Containerfile b/packages/py-sphinxcontrib-devhelp/Containerfile index 5faaa4d..eddd384 100644 --- a/packages/py-sphinxcontrib-devhelp/Containerfile +++ b/packages/py-sphinxcontrib-devhelp/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinxcontrib-devhelp-${VERSION} +WORKDIR /sphinxcontrib-devhelp-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-htmlhelp/Containerfile b/packages/py-sphinxcontrib-htmlhelp/Containerfile index f757ac5..082776b 100644 --- a/packages/py-sphinxcontrib-htmlhelp/Containerfile +++ b/packages/py-sphinxcontrib-htmlhelp/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinxcontrib-htmlhelp-${VERSION} +WORKDIR /sphinxcontrib-htmlhelp-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-jquery/Containerfile b/packages/py-sphinxcontrib-jquery/Containerfile index 057b847..8aedbf1 100644 --- a/packages/py-sphinxcontrib-jquery/Containerfile +++ b/packages/py-sphinxcontrib-jquery/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR jquery-${VERSION} +WORKDIR /jquery-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-qthelp/Containerfile b/packages/py-sphinxcontrib-qthelp/Containerfile index 53f6929..69561ee 100644 --- a/packages/py-sphinxcontrib-qthelp/Containerfile +++ b/packages/py-sphinxcontrib-qthelp/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinxcontrib-qthelp-${VERSION} +WORKDIR /sphinxcontrib-qthelp-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-sphinxcontrib-serializinghtml/Containerfile b/packages/py-sphinxcontrib-serializinghtml/Containerfile index 2b9b637..aa7a6ea 100644 --- a/packages/py-sphinxcontrib-serializinghtml/Containerfile +++ b/packages/py-sphinxcontrib-serializinghtml/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-wheel . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR sphinxcontrib-serializinghtml-${VERSION} +WORKDIR /sphinxcontrib-serializinghtml-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-toml/Containerfile b/packages/py-toml/Containerfile index 9c8d6ce..84f5a57 100644 --- a/packages/py-toml/Containerfile +++ b/packages/py-toml/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR toml-${VERSION} +WORKDIR /toml-${VERSION} RUN --network=none <<-EOF set -eu python setup.py install --root=/rootfs diff --git a/packages/py-trove-classifiers/Containerfile b/packages/py-trove-classifiers/Containerfile index 2502d28..ae7e6d3 100644 --- a/packages/py-trove-classifiers/Containerfile +++ b/packages/py-trove-classifiers/Containerfile @@ -24,7 +24,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR trove-classifiers-${VERSION} +WORKDIR /trove-classifiers-${VERSION} RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-typing-extensions/Containerfile b/packages/py-typing-extensions/Containerfile index 9f52182..d28022d 100644 --- a/packages/py-typing-extensions/Containerfile +++ b/packages/py-typing-extensions/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/py-setuptools . / COPY --from=stagex/py-gpep517 . / COPY --from=stagex/py-installer . / RUN tar -xzf ${SRC_FILE} -WORKDIR typing_extensions-${VERSION} +WORKDIR /typing_extensions-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-urllib3/Containerfile b/packages/py-urllib3/Containerfile index 908c048..d52f98d 100644 --- a/packages/py-urllib3/Containerfile +++ b/packages/py-urllib3/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR urllib3-${VERSION} +WORKDIR /urllib3-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-wcwidth/Containerfile b/packages/py-wcwidth/Containerfile index 2e43ee5..470ecb3 100644 --- a/packages/py-wcwidth/Containerfile +++ b/packages/py-wcwidth/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/py-flit . / COPY --from=stagex/py-wheel . / COPY --from=stagex/py-gpep517 . / RUN tar -xzf ${SRC_FILE} -WORKDIR wcwidth-${VERSION} +WORKDIR /wcwidth-${VERSION} RUN --network=none gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 FROM build AS install diff --git a/packages/py-wheel/Containerfile b/packages/py-wheel/Containerfile index 5f5fa4c..c09bfbe 100644 --- a/packages/py-wheel/Containerfile +++ b/packages/py-wheel/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/python . / COPY --from=stagex/py-setuptools . / COPY --from=stagex/zlib . / RUN tar -xzf ${SRC_FILE} -WORKDIR wheel-${VERSION} +WORKDIR /wheel-${VERSION} RUN --network=none <<-EOF set -eu python setup.py install --root=/rootfs diff --git a/packages/python/Containerfile b/packages/python/Containerfile index fe8c7ec..4098099 100644 --- a/packages/python/Containerfile +++ b/packages/python/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/ncurses . / COPY --from=stagex/sqlite3 . / COPY --from=stagex/libffi . / RUN tar -xf ${SRC_FILE} -WORKDIR Python-${VERSION} +WORKDIR //Python-${VERSION} ENV SOURCE_DATE_EPOCH=1 ENV PYTHONHASHSEED=0 ENV PYTHONDONTWRITEBYTECODE=1 diff --git a/packages/qemu/Containerfile b/packages/qemu/Containerfile index b3ea659..f386e1f 100644 --- a/packages/qemu/Containerfile +++ b/packages/qemu/Containerfile @@ -70,7 +70,7 @@ COPY --from=stagex/musl-fts . / COPY --from=stagex/musl-obstack . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} -WORKDIR qemu-${VERSION} +WORKDIR /qemu-${VERSION} ADD *.patch . ENV SOURCE_DATE_EPOCH=1 ENV LDFLAGS=" \ diff --git a/packages/re2c/Containerfile b/packages/re2c/Containerfile index 452ab52..1126f3d 100644 --- a/packages/re2c/Containerfile +++ b/packages/re2c/Containerfile @@ -20,7 +20,7 @@ COPY --from=stagex/make . / COPY --from=stagex/m4 . / COPY --from=stagex/musl . / RUN tar -xvf $SRC_FILE -WORKDIR re2c-${VERSION} +WORKDIR /re2c-${VERSION} RUN --network=none <<-EOF set -eux autoreconf -i -W all diff --git a/packages/readline/Containerfile b/packages/readline/Containerfile index cf9e93e..26af61b 100644 --- a/packages/readline/Containerfile +++ b/packages/readline/Containerfile @@ -39,7 +39,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN --network=none tar -xf ${SRC_FILE} -WORKDIR readline-${VERSION} +WORKDIR /readline-${VERSION} ADD *.patch . RUN --network=none <<-EOF set -eu diff --git a/packages/redis/Containerfile b/packages/redis/Containerfile index 4e91255..78738d2 100644 --- a/packages/redis/Containerfile +++ b/packages/redis/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/pkgconf . / COPY --from=stagex/make . / COPY --from=stagex/openssl . / RUN tar -xf ${SRC_FILE} -WORKDIR redis-${VERSION} +WORKDIR /redis-${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN make BUILD_TLS=yes all diff --git a/packages/rhash/Containerfile b/packages/rhash/Containerfile index 2f5d2d3..fd84e75 100644 --- a/packages/rhash/Containerfile +++ b/packages/rhash/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/openssl . / RUN tar -xf ${SRC_FILE} -WORKDIR RHash-${VERSION} +WORKDIR /RHash-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/samurai/Containerfile b/packages/samurai/Containerfile index 8e7d6b4..7523b96 100644 --- a/packages/samurai/Containerfile +++ b/packages/samurai/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/pkgconf . / RUN tar -xf ${SRC_FILE} -WORKDIR samurai-${VERSION} +WORKDIR /samurai-${VERSION} COPY *.patch . RUN --network=none <<-EOF set -eux diff --git a/packages/scdoc/Containerfile b/packages/scdoc/Containerfile index 75577e5..c9fce09 100644 --- a/packages/scdoc/Containerfile +++ b/packages/scdoc/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / RUN tar -xf ${SRC_FILE} -WORKDIR scdoc-${VERSION} +WORKDIR /scdoc-${VERSION} RUN --network=none <<-EOF set -eux make PREFIX="/usr" -j "$(nproc)" diff --git a/packages/sdtool/Containerfile b/packages/sdtool/Containerfile index e994fbc..354d713 100644 --- a/packages/sdtool/Containerfile +++ b/packages/sdtool/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/linux-headers . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR sdtool-${VERSION} +WORKDIR /sdtool-${VERSION} RUN --network=none make all FROM build AS install diff --git a/packages/sed/Containerfile b/packages/sed/Containerfile index bf05422..fea6a4e 100644 --- a/packages/sed/Containerfile +++ b/packages/sed/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf sed-${VERSION}.tar.xz -WORKDIR sed-${VERSION} +WORKDIR /sed-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/skalibs/Containerfile b/packages/skalibs/Containerfile index eade0b5..4ce39b2 100644 --- a/packages/skalibs/Containerfile +++ b/packages/skalibs/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/binutils . / COPY --from=stagex/make . / RUN tar -xf ${SRC_FILE} -WORKDIR skalibs-${VERSION} +WORKDIR /skalibs-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/sops/Containerfile b/packages/sops/Containerfile index eef98cd..983a3d8 100644 --- a/packages/sops/Containerfile +++ b/packages/sops/Containerfile @@ -12,7 +12,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz -WORKDIR sops-${VERSION} +WORKDIR /sops-${VERSION} ENV PWD=/home/user/sops-${VERSION} ENV GOPATH=${PWD}/cache/go ENV GOCACHE=${PWD}/cache/ diff --git a/packages/sqlite3/Containerfile b/packages/sqlite3/Containerfile index af48d1a..508300e 100644 --- a/packages/sqlite3/Containerfile +++ b/packages/sqlite3/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/tcl . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR sqlite-vesion-${VERSION} +WORKDIR /sqlite-vesion-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/stage0/Containerfile b/packages/stage0/Containerfile index 3f4056b..a957ba8 100644 --- a/packages/stage0/Containerfile +++ b/packages/stage0/Containerfile @@ -43,19 +43,19 @@ COPY --from=build2 /rootfs/ /b COPY --from=build3 /rootfs/ /c FROM compare AS test1 -WORKDIR /a +WORKDIR //a RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] FROM compare AS test2 -WORKDIR /b +WORKDIR //b RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] FROM compare AS test3 -WORKDIR /c +WORKDIR //c RUN ["x86/bin/sha256sum","-c","/a/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/b/hashes.txt"] RUN ["x86/bin/sha256sum","-c","/c/hashes.txt"] diff --git a/packages/stage1/Containerfile b/packages/stage1/Containerfile index 13ef7cd..7290c56 100644 --- a/packages/stage1/Containerfile +++ b/packages/stage1/Containerfile @@ -5,7 +5,7 @@ ENV SRC_HASH=0c268b19cf9f4eefdaf45dab64ac393ccf8ee43de58f0721624cab358044bf78 ARG CORES=1 FROM base AS fetch -WORKDIR distfiles +WORKDIR /distfiles ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE}/${VERSION} live-bootstrap.tgz # Generate with: cat live-bootstrap/steps/*/sources | awk -F" " '{ printf("ADD --checksum=sha256:%s %s ./%s\n",$2,$1,$3) }' ADD --checksum=sha256:4681bcbb9c9298c506f6405a7deb62c54fc3b339d3239a8f36a5df83daaec94f https://mirrors.kernel.org/gnu/autoconf/autoconf-2.52.tar.bz2 ./ diff --git a/packages/stage2/Containerfile b/packages/stage2/Containerfile index fb2748a..6aaaeee 100644 --- a/packages/stage2/Containerfile +++ b/packages/stage2/Containerfile @@ -50,7 +50,7 @@ ENV BINUTILS_DIR ${HOME}/build-binutils ENV MUSL_DIR=${HOME}/build-musl FROM base AS fetch -WORKDIR ${HOME} +WORKDIR /${HOME} ADD --checksum=sha256:${LINUX_HASH} ${LINUX_SITE} . ADD --checksum=sha256:${MUSL_HASH} ${MUSL_SITE} . ADD --checksum=sha256:${BINUTILS_HASH} ${BINUTILS_SITE} . @@ -74,7 +74,7 @@ RUN --network=none <<-EOF EOF # Phase 1: Build cross binutils in build-binutils -WORKDIR ${BINUTILS_DIR} +WORKDIR /${BINUTILS_DIR} RUN --network=none <<-EOF set -eux ../binutils-${BINUTILS_VERSION}/configure \ @@ -96,7 +96,7 @@ RUN --network=none <<-EOF EOF # Phase 2: Prepare build sysroot -WORKDIR ${SYSROOT_DIR} +WORKDIR /${SYSROOT_DIR} RUN <<-EOF set -eux mkdir -p include @@ -106,7 +106,7 @@ RUN <<-EOF EOF # Phase 3: Build gcc (without libgcc) in build-gcc -WORKDIR ${GCC_DIR} +WORKDIR /${GCC_DIR} RUN --network=none <<-EOF set -eux ../gcc-${GCC_VERSION}/configure \ @@ -143,7 +143,7 @@ RUN --network=none <<-EOF EOF # Phase 4: Install musl libc headers to build-sysroot for use by libgcc -WORKDIR ${MUSL_DIR} +WORKDIR /${MUSL_DIR} RUN --network=none <<-EOF set -eux ../musl-${MUSL_VERSION}/configure \ @@ -155,11 +155,11 @@ RUN --network=none <<-EOF EOF # Phase 5: Compile libgcc -WORKDIR ${GCC_DIR} +WORKDIR /${GCC_DIR} RUN --network=none make MAKE="make enable_shared=no" all-target-libgcc # Phase 5: Compile musl libc and install to sysroot -WORKDIR ${MUSL_DIR} +WORKDIR /${MUSL_DIR} RUN --network=none <<-EOF set -eux make \ @@ -169,11 +169,11 @@ RUN --network=none <<-EOF EOF # Phase 6: Compile remaining gcc targets -WORKDIR ${GCC_DIR} +WORKDIR /${GCC_DIR} RUN make all # Phase 7: Generate linux headers -WORKDIR ${HOME}/linux-${LINUX_VERSION} +WORKDIR /${HOME}/linux-${LINUX_VERSION} RUN --network=none <<-EOF set -eux make ARCH=${TARGET_ARCH} headers @@ -184,7 +184,7 @@ RUN --network=none <<-EOF EOF FROM build AS install -WORKDIR ${HOME} +WORKDIR /${HOME} COPY --from=stagex/stage1 . /rootfs/ RUN <<-EOF set -eux diff --git a/packages/stage3/Containerfile b/packages/stage3/Containerfile index 762245d..6b85d19 100644 --- a/packages/stage3/Containerfile +++ b/packages/stage3/Containerfile @@ -58,7 +58,7 @@ ENV MAKE_DIR ${HOME}/build-make ENV GCC_DIR ${HOME}/build-gcc FROM base AS fetch -WORKDIR ${HOME} +WORKDIR /${HOME} ADD --checksum=sha256:${LINUX_HASH} ${LINUX_SITE} . ADD --checksum=sha256:${MUSL_HASH} ${MUSL_SITE} . ADD --checksum=sha256:${BUSYBOX_HASH} ${BUSYBOX_SITE} . @@ -81,7 +81,7 @@ RUN --network=none <<-EOF tar -kxzf ${MUSL_FILE} tar -kxzf ${MAKE_FILE} EOF -WORKDIR ${MUSL_DIR} +WORKDIR /${MUSL_DIR} RUN --network=none <<-EOF set -eux ../musl-${MUSL_VERSION}/configure \ @@ -90,7 +90,7 @@ RUN --network=none <<-EOF --host=${TARGET} make EOF -WORKDIR ${BINUTILS_DIR} +WORKDIR /${BINUTILS_DIR} RUN --network=none <<-EOF set -eux ../binutils-${BINUTILS_VERSION}/configure \ @@ -111,7 +111,7 @@ RUN --network=none <<-EOF --enable-deterministic-archives make -j$(nproc) EOF -WORKDIR ${MAKE_DIR} +WORKDIR /${MAKE_DIR} RUN --network=none <<-EOF set -eux ../make-${MAKE_VERSION}/configure \ @@ -123,7 +123,7 @@ RUN --network=none <<-EOF --disable-nls make -j$(nproc) EOF -WORKDIR ${GCC_DIR} +WORKDIR /${GCC_DIR} RUN --network=none <<-EOF set -eux cp ../*.tar.* ../gcc-${GCC_VERSION} @@ -151,7 +151,7 @@ RUN --network=none <<-EOF --enable-linker-build-id make -j$(nproc) EOF -WORKDIR ${BUSYBOX_DIR} +WORKDIR /${BUSYBOX_DIR} RUN --network=none <<-EOF set -eux setConfs=' @@ -194,7 +194,7 @@ RUN --network=none <<-EOF done make CROSS_COMPILE=${TARGET}- EOF -WORKDIR ${HOME}/linux-${LINUX_VERSION} +WORKDIR /${HOME}/linux-${LINUX_VERSION} RUN --network=none <<-EOF set -eux make ARCH=${ARCH} headers diff --git a/packages/strace/Containerfile b/packages/strace/Containerfile index bdfd6cb..cbf2d42 100644 --- a/packages/strace/Containerfile +++ b/packages/strace/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/linux-headers . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf ${SRC_FILE} -WORKDIR strace-${VERSION} +WORKDIR /strace-${VERSION} RUN --network=none <<-EOF set -ex ./configure \ diff --git a/packages/sxctl/Containerfile b/packages/sxctl/Containerfile index dab0084..95d59d1 100644 --- a/packages/sxctl/Containerfile +++ b/packages/sxctl/Containerfile @@ -11,11 +11,11 @@ FROM fetch AS build COPY --from=stagex/busybox . / COPY --from=stagex/go . / RUN tar -xf ${SRC_FILE} -WORKDIR sxctl/cmd/sxctl +WORKDIR /sxctl/cmd/sxctl RUN go build -o sxctl FROM build AS install -WORKDIR /rootfs +WORKDIR //rootfs RUN cp /sxctl/cmd/sxctl/sxctl . FROM stagex/filesystem AS package diff --git a/packages/syslinux/Containerfile b/packages/syslinux/Containerfile index 7ec684a..c11c9a4 100644 --- a/packages/syslinux/Containerfile +++ b/packages/syslinux/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/util-linux . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} -WORKDIR syslinux-${VERSION} +WORKDIR /syslinux-${VERSION} COPY *.patch . RUN --network=none <<-EOF patch -p1 < fix-sysmacros.patch diff --git a/packages/talosctl/Containerfile b/packages/talosctl/Containerfile index 1ddd4f1..fde1246 100644 --- a/packages/talosctl/Containerfile +++ b/packages/talosctl/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . RUN tar -xvf ${SRC_FILE} -WORKDIR talos-${VERSION} +WORKDIR /talos-${VERSION} RUN go get ./... FROM fetch AS build diff --git a/packages/tar/Containerfile b/packages/tar/Containerfile index c5f1a54..6be7815 100644 --- a/packages/tar/Containerfile +++ b/packages/tar/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/musl . / COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN tar -xf tar-${VERSION}.tar.xz -WORKDIR tar-${VERSION} +WORKDIR /tar-${VERSION} ENV FORCE_UNSAFE_CONFIGURE=1 RUN --network=none <<-EOF set -ex diff --git a/packages/tcl/Containerfile b/packages/tcl/Containerfile index d3c3446..7d71cd2 100644 --- a/packages/tcl/Containerfile +++ b/packages/tcl/Containerfile @@ -17,7 +17,7 @@ COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/gcc . / RUN tar -xzf ${SRC_FILE} -WORKDIR tcl${VERSION}/unix +WORKDIR /tcl${VERSION}/unix RUN --network=none <<-EOF ./configure \ --build=${ARCH}-linux-musl \ diff --git a/packages/texinfo/Containerfile b/packages/texinfo/Containerfile index e43c6ae..2432777 100644 --- a/packages/texinfo/Containerfile +++ b/packages/texinfo/Containerfile @@ -27,7 +27,7 @@ COPY --from=stagex/bash . / COPY --from=stagex/bash . / COPY --from=stagex/bash /bin/bash /bin/sh RUN tar -xf ${SRC_FILE} -WORKDIR texinfo-${VERSION} +WORKDIR /texinfo-${VERSION} RUN --network=none <<-EOF set -ex ./configure \ diff --git a/packages/tflint/Containerfile b/packages/tflint/Containerfile index b225336..5edf5ae 100644 --- a/packages/tflint/Containerfile +++ b/packages/tflint/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . RUN tar -xvf ${SRC_FILE} -WORKDIR tflint-${VERSION} +WORKDIR /tflint-${VERSION} RUN go get ./... FROM fetch AS build diff --git a/packages/tofu/Containerfile b/packages/tofu/Containerfile index aecf520..bab1612 100644 --- a/packages/tofu/Containerfile +++ b/packages/tofu/Containerfile @@ -12,7 +12,7 @@ COPY --from=stagex/busybox . / COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz -WORKDIR opentofu-${VERSION} +WORKDIR /opentofu-${VERSION} ENV PWD=/home/user/opentofu-${VERSION} ENV GOPATH=${PWD}/cache/go ENV GOCACHE=${PWD}/cache/ diff --git a/packages/tpm2-tools/Containerfile b/packages/tpm2-tools/Containerfile index 60cd01c..88d0ddc 100644 --- a/packages/tpm2-tools/Containerfile +++ b/packages/tpm2-tools/Containerfile @@ -26,7 +26,7 @@ COPY --from=stagex/m4 . / COPY --from=stagex/curl . / COPY --from=stagex/tpm2-tss . / RUN tar -xf ${SRC_FILE} -WORKDIR tpm2-tools-${VERSION} +WORKDIR /tpm2-tools-${VERSION} RUN --network=none <<-EOF set -eux printf "${VERSION}" > VERSION diff --git a/packages/tpm2-tss/Containerfile b/packages/tpm2-tss/Containerfile index 333576e..0c4295b 100644 --- a/packages/tpm2-tss/Containerfile +++ b/packages/tpm2-tss/Containerfile @@ -26,7 +26,7 @@ COPY --from=stagex/m4 . / COPY --from=stagex/curl . / COPY --from=stagex/json-c . / RUN tar -xf ${SRC_FILE} -WORKDIR tpm2-tss-${VERSION} +WORKDIR /tpm2-tss-${VERSION} RUN --network=none <<-EOF set -eux printf "${VERSION}" > VERSION diff --git a/packages/unixodbc/Containerfile b/packages/unixodbc/Containerfile index aee4f2c..0ee902c 100644 --- a/packages/unixodbc/Containerfile +++ b/packages/unixodbc/Containerfile @@ -22,7 +22,7 @@ COPY --from=stagex/make . / COPY --from=stagex/libtool . / COPY --from=stagex/postgresql . / RUN tar -xf $SRC_FILE -WORKDIR unixODBC-${VERSION} +WORKDIR /unixODBC-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/util-linux/Containerfile b/packages/util-linux/Containerfile index 3ce056a..2be44c3 100644 --- a/packages/util-linux/Containerfile +++ b/packages/util-linux/Containerfile @@ -24,7 +24,7 @@ COPY --from=stagex/m4 . / COPY --from=stagex/make . / RUN mkdir util-linux RUN tar -xvf $SRC_FILE --strip-components=1 -C util-linux -WORKDIR util-linux +WORKDIR /util-linux RUN --network=none <<-EOF set -eux ./autogen.sh diff --git a/packages/util-macros/Containerfile b/packages/util-macros/Containerfile index cb17b97..378281f 100644 --- a/packages/util-macros/Containerfile +++ b/packages/util-macros/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/pkgconf . / COPY --from=stagex/m4 . / COPY --from=stagex/gawk . / RUN tar -xf ${SRC_FILE} -WORKDIR util-macros-${VERSION} +WORKDIR /util-macros-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/utmps/Containerfile b/packages/utmps/Containerfile index d11bc25..8e9e26e 100644 --- a/packages/utmps/Containerfile +++ b/packages/utmps/Containerfile @@ -16,7 +16,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/skalibs . / RUN tar -xf ${SRC_FILE} -WORKDIR utmps-${VERSION} +WORKDIR /utmps-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/xmlto/Containerfile b/packages/xmlto/Containerfile index 82cabbe..ff0d094 100644 --- a/packages/xmlto/Containerfile +++ b/packages/xmlto/Containerfile @@ -29,7 +29,7 @@ COPY --from=stagex/m4 . / COPY --from=stagex/libxml2 . / COPY --from=stagex/make . / RUN tar -xf ${SRC_FILE} -WORKDIR xmlto-${VERSION} +WORKDIR /xmlto-${VERSION} RUN --network=none <<-EOF set -eux autoreconf -vfi diff --git a/packages/xorriso/Containerfile b/packages/xorriso/Containerfile index 03a4e91..3533192 100644 --- a/packages/xorriso/Containerfile +++ b/packages/xorriso/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/make . / COPY --from=stagex/musl . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} -WORKDIR xorriso-${VERSION} +WORKDIR /xorriso-${VERSION} RUN --network=none <<-EOF set -eux ./configure \ diff --git a/packages/xz/Containerfile b/packages/xz/Containerfile index 130adda..7274f3d 100644 --- a/packages/xz/Containerfile +++ b/packages/xz/Containerfile @@ -22,7 +22,7 @@ COPY --from=stagex/libtool . / COPY --from=stagex/gettext . / COPY --from=stagex/po4a . / RUN tar -xf ${SRC_FILE} -WORKDIR xz-${VERSION} +WORKDIR /xz-${VERSION} RUN --network=none <<-EOF set -ex ./autogen.sh diff --git a/packages/yq/Containerfile b/packages/yq/Containerfile index fa2895d..a5246e0 100644 --- a/packages/yq/Containerfile +++ b/packages/yq/Containerfile @@ -19,7 +19,7 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . RUN tar -xvf ${SRC_FILE} -WORKDIR yq-${VERSION} +WORKDIR /yq-${VERSION} RUN go get ./... FROM fetch AS build diff --git a/packages/zig/Containerfile b/packages/zig/Containerfile index 19a17e7..0164515 100644 --- a/packages/zig/Containerfile +++ b/packages/zig/Containerfile @@ -23,7 +23,7 @@ COPY --from=stagex/openssl . / COPY --from=stagex/zlib . / RUN --network=none tar -xf ${SRC_FILE} -WORKDIR zig-${VERSION} +WORKDIR /zig-${VERSION} RUN --network=none patch -p1 -i ../static-glibc.patch RUN --network=none <<-EOF set -eux diff --git a/packages/zip/Containerfile b/packages/zip/Containerfile index 32c0596..3d49998 100644 --- a/packages/zip/Containerfile +++ b/packages/zip/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/cmake . / COPY --from=stagex/musl . / COPY --from=stagex/make . / RUN --network=none tar -xf ${SRC_FILE} -WORKDIR zip${VERSION} +WORKDIR /zip${VERSION} ENV SOURCE_DATE_EPOCH=1 RUN --network=none <<-EOF set -eux diff --git a/packages/zlib/Containerfile b/packages/zlib/Containerfile index 78f1910..17bd695 100644 --- a/packages/zlib/Containerfile +++ b/packages/zlib/Containerfile @@ -14,7 +14,7 @@ COPY --from=stagex/binutils . / COPY --from=stagex/make . / COPY --from=stagex/musl . / RUN tar -xf ${SRC_FILE} -WORKDIR zlib-${VERSION} +WORKDIR /zlib-${VERSION} RUN --network=none <<-EOF set -eux; \ ./configure \ From 41a529e0a33aff3db3ed988d5356d620ff78787c Mon Sep 17 00:00:00 2001 From: Danny Grove Date: Mon, 26 Aug 2024 23:51:27 -0700 Subject: [PATCH 43/57] Fix ENV instantiation --- packages/gcc/Containerfile | 26 +++--- packages/mockgen/Containerfile | 4 +- packages/protoc-gen-go-grpc/Containerfile | 4 +- packages/protoc-gen-go/Containerfile | 4 +- .../protoc-gen-grpc-gateway/Containerfile | 4 +- packages/protoc-gen-openapiv2/Containerfile | 4 +- packages/protoc-go-inject-tag/Containerfile | 4 +- packages/sops/Containerfile | 2 +- packages/stage2/Containerfile | 72 ++++++++-------- packages/stage3/Containerfile | 84 +++++++++---------- 10 files changed, 104 insertions(+), 104 deletions(-) diff --git a/packages/gcc/Containerfile b/packages/gcc/Containerfile index 00d8299..faca70e 100644 --- a/packages/gcc/Containerfile +++ b/packages/gcc/Containerfile @@ -1,17 +1,17 @@ FROM scratch AS base -ENV VERSION 13.1.0 -ENV SRC_FILE gcc-$VERSION.tar.xz -ENV SRC_SITE https://mirrors.kernel.org/gnu/gcc/gcc-${VERSION}/${SRC_FILE} -ENV SRC_HASH 61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 -ENV DEP_SITE https://gcc.gnu.org/pub/gcc/infrastructure/ -ENV GMP_FILE gmp-6.2.1.tar.bz2 -ENV GMP_HASH eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c -ENV MPFR_FILE mpfr-4.1.0.tar.bz2 -ENV MPFR_HASH feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 -ENV MPC_FILE mpc-1.2.1.tar.gz -ENV MPC_HASH 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 -ENV ISL_FILE isl-0.24.tar.bz2 -ENV ISL_HASH fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 +ENV VERSION=13.1.0 +ENV SRC_FILE=gcc-$VERSION.tar.xz +ENV SRC_SITE=https://mirrors.kernel.org/gnu/gcc/gcc-${VERSION}/${SRC_FILE} +ENV SRC_HASH=61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 +ENV DEP_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/ +ENV GMP_FILE=gmp-6.2.1.tar.bz2 +ENV GMP_HASH=eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c +ENV MPFR_FILE=mpfr-4.1.0.tar.bz2 +ENV MPFR_HASH=feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 +ENV MPC_FILE=mpc-1.2.1.tar.gz +ENV MPC_HASH=17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 +ENV ISL_FILE=isl-0.24.tar.bz2 +ENV ISL_HASH=fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 FROM base AS fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . diff --git a/packages/mockgen/Containerfile b/packages/mockgen/Containerfile index 3672739..6c02e66 100644 --- a/packages/mockgen/Containerfile +++ b/packages/mockgen/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /mock-${VERSION} -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/protoc-gen-go-grpc/Containerfile b/packages/protoc-gen-go-grpc/Containerfile index db01314..f44bc3b 100644 --- a/packages/protoc-gen-go-grpc/Containerfile +++ b/packages/protoc-gen-go-grpc/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /grpc-go-${VERSION}/cmd/protoc-gen-go-grpc -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/protoc-gen-go/Containerfile b/packages/protoc-gen-go/Containerfile index 9ae72ea..197a377 100644 --- a/packages/protoc-gen-go/Containerfile +++ b/packages/protoc-gen-go/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /protobuf-${VERSION} -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/protoc-gen-grpc-gateway/Containerfile b/packages/protoc-gen-grpc-gateway/Containerfile index d901774..711d69e 100644 --- a/packages/protoc-gen-grpc-gateway/Containerfile +++ b/packages/protoc-gen-grpc-gateway/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /grpc-gateway-${VERSION} -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/protoc-gen-openapiv2/Containerfile b/packages/protoc-gen-openapiv2/Containerfile index 6814db9..a7c37e0 100644 --- a/packages/protoc-gen-openapiv2/Containerfile +++ b/packages/protoc-gen-openapiv2/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /grpc-gateway-${VERSION} -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/protoc-go-inject-tag/Containerfile b/packages/protoc-go-inject-tag/Containerfile index 1ea2f2e..6923836 100644 --- a/packages/protoc-go-inject-tag/Containerfile +++ b/packages/protoc-go-inject-tag/Containerfile @@ -13,8 +13,8 @@ COPY --from=stagex/go . / COPY --from=stagex/ca-certificates . / RUN tar -xvf v${VERSION}.tar.gz WORKDIR /protoc-go-inject-tag-${VERSION} -ENV GOPATH=${PWD}/cache/go -ENV GOCACHE=${PWD}/cache/ +ENV GOPATH=/cache/go +ENV GOCACHE=/cache/ ENV GOWORK=off ENV GOPROXY=https://proxy.golang.org,direct ENV GOSUMDB=sum.golang.org diff --git a/packages/sops/Containerfile b/packages/sops/Containerfile index 983a3d8..80f23a0 100644 --- a/packages/sops/Containerfile +++ b/packages/sops/Containerfile @@ -1,7 +1,7 @@ FROM scratch AS base ENV VERSION=3.8.1 ENV SRC_HASH=5ca70fb4f96797d09012c705a5bb935835896de7bcd063b98d498912b0e645a0 -ENV SRC_FILE=${SRC_SITE}/v${VERSION}.tar.gz +ENV SRC_FILE=v${VERSION}.tar.gz ENV SRC_SITE=https://github.com/getsops/sops/archive/refs/tags/${SRC_FILE} FROM base AS fetch diff --git a/packages/stage2/Containerfile b/packages/stage2/Containerfile index 6aaaeee..8c67cf6 100644 --- a/packages/stage2/Containerfile +++ b/packages/stage2/Containerfile @@ -1,36 +1,36 @@ FROM scratch AS base -ENV GCC_VERSION 13.1.0 -ENV GCC_HASH 61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 -ENV GCC_FILE gcc-$GCC_VERSION.tar.xz -ENV GCC_SITE https://mirrors.kernel.org/gnu/gcc/gcc-${GCC_VERSION}/${GCC_FILE} -ENV GMP_VERSION 6.2.1 -ENV GMP_HASH eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c -ENV GMP_FILE gmp-${GMP_VERSION}.tar.bz2 -ENV GMP_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${GMP_FILE} -ENV MPFR_VERSION 4.1.0 -ENV MPFR_HASH feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 -ENV MPFR_FILE mpfr-${MPFR_VERSION}.tar.bz2 -ENV MPFR_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${MPFR_FILE} -ENV MPC_VERSION 1.2.1 -ENV MPC_HASH 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 -ENV MPC_FILE mpc-${MPC_VERSION}.tar.gz -ENV MPC_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${MPC_FILE} -ENV ISL_VERSION 0.24 -ENV ISL_HASH fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 -ENV ISL_FILE isl-${ISL_VERSION}.tar.bz2 -ENV ISL_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${ISL_FILE} -ENV MUSL_VERSION 1.2.4 -ENV MUSL_FILE musl-${MUSL_VERSION}.tar.gz -ENV MUSL_SITE http://musl.libc.org/releases/${MUSL_FILE} -ENV MUSL_HASH 7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039 -ENV LINUX_VERSION 6.6 -ENV LINUX_HASH d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 -ENV LINUX_FILE linux-${LINUX_VERSION}.tar.xz -ENV LINUX_SITE https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${LINUX_FILE} -ENV BINUTILS_VERSION 2.35 -ENV BINUTILS_HASH 1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 -ENV BINUTILS_FILE binutils-${BINUTILS_VERSION}.tar.xz -ENV BINUTILS_SITE https://ftp.gnu.org/gnu/binutils/${BINUTILS_FILE} +ENV GCC_VERSION=13.1.0 +ENV GCC_HASH=61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 +ENV GCC_FILE=gcc-$GCC_VERSION.tar.xz +ENV GCC_SITE=https://mirrors.kernel.org/gnu/gcc/gcc-${GCC_VERSION}/${GCC_FILE} +ENV GMP_VERSION=6.2.1 +ENV GMP_HASH=eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c +ENV GMP_FILE=gmp-${GMP_VERSION}.tar.bz2 +ENV GMP_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${GMP_FILE} +ENV MPFR_VERSION=4.1.0 +ENV MPFR_HASH=feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 +ENV MPFR_FILE=mpfr-${MPFR_VERSION}.tar.bz2 +ENV MPFR_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${MPFR_FILE} +ENV MPC_VERSION=1.2.1 +ENV MPC_HASH=17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 +ENV MPC_FILE=mpc-${MPC_VERSION}.tar.gz +ENV MPC_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${MPC_FILE} +ENV ISL_VERSION=0.24 +ENV ISL_HASH=fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 +ENV ISL_FILE=isl-${ISL_VERSION}.tar.bz2 +ENV ISL_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${ISL_FILE} +ENV MUSL_VERSION=1.2.4 +ENV MUSL_FILE=musl-${MUSL_VERSION}.tar.gz +ENV MUSL_SITE=http://musl.libc.org/releases/${MUSL_FILE} +ENV MUSL_HASH=7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039 +ENV LINUX_VERSION=6.6 +ENV LINUX_HASH=d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 +ENV LINUX_FILE=linux-${LINUX_VERSION}.tar.xz +ENV LINUX_SITE=https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${LINUX_FILE} +ENV BINUTILS_VERSION=2.35 +ENV BINUTILS_HASH=1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 +ENV BINUTILS_FILE=binutils-${BINUTILS_VERSION}.tar.xz +ENV BINUTILS_SITE=https://ftp.gnu.org/gnu/binutils/${BINUTILS_FILE} ENV TARGET_ARCH=x86_64 ENV HOST_ARCH=i386 ENV BUILD=${HOST_ARCH}-unknown-linux-musl @@ -43,10 +43,10 @@ ENV TZ=UTC ENV LANG=C.UTF-8 ENV SOURCE_DATE_EPOCH=1 ENV KCONFIG_NOTIMESTAMP=1 -ENV SYSROOT_DIR ${HOME}/build-sysroot -ENV GCC_DIR ${HOME}/build-gcc -ENV LINUX_DIR ${HOME}/build-linux -ENV BINUTILS_DIR ${HOME}/build-binutils +ENV SYSROOT_DIR=${HOME}/build-sysroot +ENV GCC_DIR=${HOME}/build-gcc +ENV LINUX_DIR=${HOME}/build-linux +ENV BINUTILS_DIR=${HOME}/build-binutils ENV MUSL_DIR=${HOME}/build-musl FROM base AS fetch diff --git a/packages/stage3/Containerfile b/packages/stage3/Containerfile index 6b85d19..ba8c0b3 100644 --- a/packages/stage3/Containerfile +++ b/packages/stage3/Containerfile @@ -1,48 +1,48 @@ FROM scratch AS base -ENV GCC_VERSION 13.1.0 -ENV GCC_HASH 61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 -ENV GCC_FILE gcc-$GCC_VERSION.tar.xz -ENV GCC_SITE https://mirrors.kernel.org/gnu/gcc/gcc-${GCC_VERSION}/${GCC_FILE} -ENV GMP_VERSION 6.2.1 -ENV GMP_HASH eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c -ENV GMP_FILE gmp-${GMP_VERSION}.tar.bz2 -ENV GMP_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${GMP_FILE} -ENV MPFR_VERSION 4.1.0 -ENV MPFR_HASH feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 -ENV MPFR_FILE mpfr-${MPFR_VERSION}.tar.bz2 -ENV MPFR_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${MPFR_FILE} -ENV MPC_VERSION 1.2.1 -ENV MPC_HASH 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 -ENV MPC_FILE mpc-${MPC_VERSION}.tar.gz -ENV MPC_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${MPC_FILE} -ENV ISL_VERSION 0.24 -ENV ISL_HASH fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 -ENV ISL_FILE isl-${ISL_VERSION}.tar.bz2 -ENV ISL_SITE https://gcc.gnu.org/pub/gcc/infrastructure/${ISL_FILE} -ENV MUSL_VERSION 1.2.4 -ENV MUSL_FILE musl-${MUSL_VERSION}.tar.gz -ENV MUSL_SITE http://musl.libc.org/releases/${MUSL_FILE} -ENV MUSL_HASH 7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039 -ENV LINUX_VERSION 6.6 -ENV LINUX_HASH d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 -ENV LINUX_FILE linux-${LINUX_VERSION}.tar.xz -ENV LINUX_SITE https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${LINUX_FILE} -ENV BINUTILS_VERSION 2.35 -ENV BINUTILS_HASH 1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 -ENV BINUTILS_FILE binutils-${BINUTILS_VERSION}.tar.xz -ENV BINUTILS_SITE https://ftp.gnu.org/gnu/binutils/${BINUTILS_FILE} +ENV GCC_VERSION=13.1.0 +ENV GCC_HASH=61d684f0aa5e76ac6585ad8898a2427aade8979ed5e7f85492286c4dfc13ee86 +ENV GCC_FILE=gcc-$GCC_VERSION.tar.xz +ENV GCC_SITE=https://mirrors.kernel.org/gnu/gcc/gcc-${GCC_VERSION}/${GCC_FILE} +ENV GMP_VERSION=6.2.1 +ENV GMP_HASH=eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c +ENV GMP_FILE=gmp-${GMP_VERSION}.tar.bz2 +ENV GMP_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${GMP_FILE} +ENV MPFR_VERSION=4.1.0 +ENV MPFR_HASH=feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926 +ENV MPFR_FILE=mpfr-${MPFR_VERSION}.tar.bz2 +ENV MPFR_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${MPFR_FILE} +ENV MPC_VERSION=1.2.1 +ENV MPC_HASH=17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 +ENV MPC_FILE=mpc-${MPC_VERSION}.tar.gz +ENV MPC_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${MPC_FILE} +ENV ISL_VERSION=0.24 +ENV ISL_HASH=fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0 +ENV ISL_FILE=isl-${ISL_VERSION}.tar.bz2 +ENV ISL_SITE=https://gcc.gnu.org/pub/gcc/infrastructure/${ISL_FILE} +ENV MUSL_VERSION=1.2.4 +ENV MUSL_FILE=musl-${MUSL_VERSION}.tar.gz +ENV MUSL_SITE=http://musl.libc.org/releases/${MUSL_FILE} +ENV MUSL_HASH=7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039 +ENV LINUX_VERSION=6.6 +ENV LINUX_HASH=d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0 +ENV LINUX_FILE=linux-${LINUX_VERSION}.tar.xz +ENV LINUX_SITE=https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${LINUX_FILE} +ENV BINUTILS_VERSION=2.35 +ENV BINUTILS_HASH=1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 +ENV BINUTILS_FILE=binutils-${BINUTILS_VERSION}.tar.xz +ENV BINUTILS_SITE=https://ftp.gnu.org/gnu/binutils/${BINUTILS_FILE} ENV BUSYBOX_VERSION=1.35.0 ENV BUSYBOX_HASH=faeeb244c35a348a334f4a59e44626ee870fb07b6884d68c10ae8bc19f83a694 ENV BUSYBOX_FILE=busybox-${BUSYBOX_VERSION}.tar.bz2 ENV BUSYBOX_SITE=https://busybox.net/downloads/${BUSYBOX_FILE} -ENV MAKE_VERSION 4.4 -ENV MAKE_HASH 581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18 -ENV MAKE_FILE make-${MAKE_VERSION}.tar.gz -ENV MAKE_SITE https://ftp.gnu.org/gnu/make/${MAKE_FILE} +ENV MAKE_VERSION=4.4 +ENV MAKE_HASH=581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18 +ENV MAKE_FILE=make-${MAKE_VERSION}.tar.gz +ENV MAKE_SITE=https://ftp.gnu.org/gnu/make/${MAKE_FILE} ENV ARCH=x86_64 ENV BUILD=i386-unknown-linux-musl -ENV HOST=${TARGET} ENV TARGET=${ARCH}-linux-musl +ENV HOST=${TARGET} ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ENV USER=user ENV HOME=/home/${USER} @@ -51,11 +51,11 @@ ENV LANG=C.UTF-8 ENV SOURCE_DATE_EPOCH=1 ENV KCONFIG_NOTIMESTAMP=1 ENV MUSL_DIR=${HOME}/build-musl -ENV LINUX_DIR ${HOME}/build-linux -ENV BINUTILS_DIR ${HOME}/build-binutils -ENV BUSYBOX_DIR ${HOME}/build-busybox -ENV MAKE_DIR ${HOME}/build-make -ENV GCC_DIR ${HOME}/build-gcc +ENV LINUX_DIR=${HOME}/build-linux +ENV BINUTILS_DIR=${HOME}/build-binutils +ENV BUSYBOX_DIR=${HOME}/build-busybox +ENV MAKE_DIR=${HOME}/build-make +ENV GCC_DIR=${HOME}/build-gcc FROM base AS fetch WORKDIR /${HOME} From 305ea6b52c692f8f8c0bba26c888843cb28760f4 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Thu, 29 Aug 2024 12:02:30 -0700 Subject: [PATCH 44/57] feat: docker & dependencies --- packages/buildkit/Containerfile | 48 + packages/containerd/Containerfile | 55 + packages/dhcpcd/Containerfile | 49 + packages/docker-cli-buildx/Containerfile | 46 + packages/docker/Containerfile | 88 + packages/fuse-overlayfs/Containerfile | 43 + packages/fuse3/Containerfile | 58 + packages/iptables/Containerfile | 51 + packages/libmnl/Containerfile | 41 + packages/libnftnl/Containerfile | 42 + packages/linux-guest/Containerfile | 57 + packages/linux-guest/linux.config | 4266 ++++++++++++++++++++++ packages/runc/Containerfile | 40 + packages/tini/Containerfile | 37 + src/packages.mk | 252 ++ 15 files changed, 5173 insertions(+) create mode 100644 packages/buildkit/Containerfile create mode 100644 packages/containerd/Containerfile create mode 100644 packages/dhcpcd/Containerfile create mode 100644 packages/docker-cli-buildx/Containerfile create mode 100644 packages/docker/Containerfile create mode 100644 packages/fuse-overlayfs/Containerfile create mode 100644 packages/fuse3/Containerfile create mode 100644 packages/iptables/Containerfile create mode 100644 packages/libmnl/Containerfile create mode 100644 packages/libnftnl/Containerfile create mode 100644 packages/linux-guest/Containerfile create mode 100644 packages/linux-guest/linux.config create mode 100644 packages/runc/Containerfile create mode 100644 packages/tini/Containerfile diff --git a/packages/buildkit/Containerfile b/packages/buildkit/Containerfile new file mode 100644 index 0000000..44253e2 --- /dev/null +++ b/packages/buildkit/Containerfile @@ -0,0 +1,48 @@ +FROM scratch AS base +ENV VERSION=0.15.0 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/moby/buildkit/archive/${SRC_FILE} +ENV SRC_HASH=ebf4b82f7379818d8fcfe5c54034e7f93c062c95f663bfd3c2a622583f62a8a4 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/go . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +RUN tar -xf ${SRC_FILE} +ENV GOPROXY=https://proxy.golang.org,direct +ENV GOSUMDB=sum.golang.org +ENV GOPATH=/cache/go +ENV GOBIN=${GOPATH}/bin +ENV PATH=${GOBIN}:${PATH} +WORKDIR /buildkit-${VERSION} +RUN <<-EOF + set -eux + mkdir -p out + go build -v \ + --ldflags=" \ + -w -s -buildid= \ + -X github.com/moby/buildkit/version.Version=${VERSION} \ + -X github.com/moby/buildkit/version.Revision=stagex \ + " \ + -o out/ \ + ./cmd/... + rm -r docs/reference +EOF + +FROM build AS install +RUN <<-EOF + set -eux + mkdir -p /rootfs + install -Dm755 ./out/* -t /rootfs/usr/bin/ +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/containerd/Containerfile b/packages/containerd/Containerfile new file mode 100644 index 0000000..80f5346 --- /dev/null +++ b/packages/containerd/Containerfile @@ -0,0 +1,55 @@ +FROM scratch AS base +ENV VERSION=1.7.20 +ENV COMMIT=8fc6bcff51318944179630522a095cc9dbf9f353 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/containerd/containerd/archive/${SRC_FILE} +ENV SRC_HASH=c4268561e514a2e8322bc8cdd39113d5e164fb31c2cef76f479d683395ea9bd6 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/go . / +COPY --from=stagex/go-md2man . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libseccomp . / +RUN tar -xf ${SRC_FILE} +WORKDIR /containerd-${VERSION} +ENV GO11MODULE=on +RUN <<-EOF + set -eux + make \ + SHIM_CGO_ENABLED=1 \ + VERSION=${VERSION} \ + REVISION=${COMMIT} \ + BUILDMODE=pie \ + EXTRA_LDFLAGS="-s -w -buildid=" \ + -j "$(nproc)" + make man +EOF + +FROM build AS install +RUN <<-EOF + set -eux + rm ./bin/gen-manpages + install -d /rootfs/usr/bin/ + install -Dsm755 ./bin/* /rootfs/usr/bin/ + install -d /rootfs/usr/share/man/man5/ + install -Dm644 ./man/*.5 /rootfs/usr/share/man/man5/ + install -d /rootfs/usr/share/man/man8/ + install -Dm644 ./man/*.8 /rootfs/usr/share/man/man8/ + install -d /rootfs/etc/containerd/ + /rootfs/usr/bin/containerd config default \ + | sed "s|/opt/cni/bin|/usr/libexec/cni|g" \ + > /rootfs/etc/containerd/config.toml +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/dhcpcd/Containerfile b/packages/dhcpcd/Containerfile new file mode 100644 index 0000000..79036b4 --- /dev/null +++ b/packages/dhcpcd/Containerfile @@ -0,0 +1,49 @@ +FROM scratch AS base +ENV VERSION=10.0.10 +ENV SRC_FILE=dhcpcd-${VERSION}.tar.xz +ENV SRC_SITE=https://github.com/NetworkConfiguration/dhcpcd/releases/download/v${VERSION}/${SRC_FILE} +ENV SRC_HASH=d582012992efddd2442bb1213c518a37d90febbcf8b11f8e76448c710dacad27 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/m4 . / +COPY --from=stagex/libmnl . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR /dhcpcd-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --libexecdir=/usr/lib/dhcpcd \ + --dbdir=/var/lib/dhcpcd \ + --rundir=/run/dhcpcd \ + --enable-ipv6 \ + --enable-privsep \ + --enable-seccomp \ + --without-dev \ + --without-udev + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make DESTDIR=/rootfs install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/docker-cli-buildx/Containerfile b/packages/docker-cli-buildx/Containerfile new file mode 100644 index 0000000..a989e3e --- /dev/null +++ b/packages/docker-cli-buildx/Containerfile @@ -0,0 +1,46 @@ +FROM scratch AS base +ENV VERSION=0.16.2 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/docker/buildx/archive/${SRC_FILE} +ENV SRC_HASH=f314635765f3dc5efe089244280cd24a577e83d339fec1970fed16977bf28382 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/go . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/pkgconf . / +RUN tar -xf ${SRC_FILE} +ENV GOPROXY=https://proxy.golang.org,direct +ENV GOSUMDB=sum.golang.org +ENV GOPATH=/cache/go +ENV GOBIN=${GOPATH}/bin +ENV PATH=${GOBIN}:${PATH} +WORKDIR /buildx-${VERSION} +RUN <<-EOF + set -eux + mkdir -p out + go build \ + -v \ + -modcacherw \ + --ldflags=" \ + -w -s -buildid= \ + -X github.com/moby/buildkit/version.Version=${VERSION} \ + -X github.com/moby/buildkit/version.Revision=stagex \ + -X github.com/moby/buildkit/version.PKG=github.com/docker/buildx \ + " \ + -o docker-buildx \ + ./cmd/buildx +EOF + +FROM build AS install +RUN install -Dm755 docker-buildx -t /rootfs/usr/libexec/docker/cli-plugins/ + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/docker/Containerfile b/packages/docker/Containerfile new file mode 100644 index 0000000..4f1571c --- /dev/null +++ b/packages/docker/Containerfile @@ -0,0 +1,88 @@ +FROM scratch AS base +ENV VERSION=27.1.2 +ENV MOBY_COMMIT=f9522e5e96c3ab5a6b8a643d15a92700ca864da6 +ENV CLI_COMMIT=d01f264bccd8bed2e3c038054a04b99533478ab8 +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE_CLI=https://github.com/docker/cli/archive/${SRC_FILE} +ENV SRC_HASH_CLI=e60fddb2bd2b4e19790d26b786c930e70fa935168373ef08055f74bbc450bce8 +ENV SRC_SITE_MOBY=https://github.com/moby/moby/archive/${SRC_FILE} +ENV SRC_HASH_MOBY=8c9b5fa44f0272726484c925d4d05f0aa189053ed8be9b27447bc116df1e99c9 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH_MOBY} ${SRC_SITE_MOBY} moby-${SRC_FILE} +ADD --checksum=sha256:${SRC_HASH_CLI} ${SRC_SITE_CLI} cli-${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/go . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libseccomp . / +COPY --from=stagex/ca-certificates . / +RUN tar -xf moby-${SRC_FILE} +RUN tar -xf cli-${SRC_FILE} +ENV GO11MODULE=off +ENV CGO_ENABLED=1 +ENV AUTO_GOPATH=1 +ENV GITCOMMIT=${CLI_COMMIT} +ENV DOCKER_GITCOMMIT=${MOBY_COMMIT} +ENV DOCKER_BUILDTAGS=seccomp +ENV DISABLE_WARN_OUTSIDE_CONTAINER=1 +ENV GOPROXY=https://proxy.golang.org,direct +ENV GOSUMDB=sum.golang.org +ENV GOPATH=/cache/go +ENV GOBIN=${GOPATH}/bin +ENV PATH=${GOBIN}:${PATH} +ENV SOURCE_DATE_EPOCH=1 +ENV LDFLAGS="-w -s -buildid=" +ENV GO_LDFLAGS=${LDFLAGS} +WORKDIR /moby-${VERSION} +RUN <<-EOF + set -eux + sed -i '98iLDFLAGS=${GO_LDFLAGS}' hack/make.sh + hack/make.sh dynbinary +EOF +WORKDIR /cli-${VERSION} +RUN <<-EOF + set -eux + mkdir -p "$GOPATH"/src/github.com/docker/ + ln -sf /cli-${VERSION} "$GOPATH"/src/github.com/docker/cli + make -j "$(nproc)" VERSION=${VERSION} dynbinary + make manpages +EOF + +FROM build AS install +WORKDIR / +RUN <<-EOF + set -eux + install -Dm644 cli-${VERSION}/contrib/completion/fish/docker.fish \ + /rootfs/usr/share/fish/vendor_completions.d/docker.fish + + install -Dm644 cli-${VERSION}/contrib/completion/zsh/_docker \ + /rootfs/usr/share/zsh/site-functions/_docker + + install -Dm644 cli-${VERSION}/contrib/completion/bash/docker \ + /rootfs/usr/share/bash-completion/completions/docker + + install -Dm644 cli-${VERSION}/man/man1/* \ + -t /rootfs/usr/share/man/man1/ + + # 'build/docker' is a symlink to 'docker-linux-$arch' e.g. 'docker-linux-amd64' + install -Dm755 cli-${VERSION}/build/docker \ + /rootfs/usr/bin/docker + + install -Dm755 -t /rootfs/usr/bin \ + moby-${VERSION}/bundles/dynbinary-daemon/dockerd \ + moby-${VERSION}/bundles/dynbinary-daemon/docker-proxy + + # symlink externally provided tini-static binary + ln -sf /sbin/tini-static /rootfs/usr/bin/docker-init +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/fuse-overlayfs/Containerfile b/packages/fuse-overlayfs/Containerfile new file mode 100644 index 0000000..350021c --- /dev/null +++ b/packages/fuse-overlayfs/Containerfile @@ -0,0 +1,43 @@ +FROM scratch AS base +ENV VERSION=1.13 +ENV SRC_FILE=fuse-overlayfs-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/containers/fuse-overlayfs/archive/v${VERSION}/${SRC_FILE} +ENV SRC_HASH=96d10344921d5796bcba7a38580ae14a53c4e60399bb90b238ac5a10b3bb65b2 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/perl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/m4 . / +COPY --from=stagex/fuse3 . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR /fuse-overlayfs-${VERSION} +RUN --network=none <<-EOF + set -eux + /usr/bin/autoreconf -fis + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --mandir=/usr/share/man + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make DESTDIR=/rootfs install +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/fuse3/Containerfile b/packages/fuse3/Containerfile new file mode 100644 index 0000000..4853e47 --- /dev/null +++ b/packages/fuse3/Containerfile @@ -0,0 +1,58 @@ +FROM scratch AS base +ARG ARCH=x86_64 +ENV VERSION=3.16.2 +ENV SRC_HASH=f797055d9296b275e981f5f62d4e32e089614fc253d1ef2985851025b8a0ce87 +ENV SRC_FILE=fuse-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/libfuse/libfuse/releases/download/fuse-${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} ${SRC_FILE} + +FROM fetch AS build +COPY --from=stagex/python . / +COPY --from=stagex/zlib . / +COPY --from=stagex/bzip2 . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/ncurses . / +COPY --from=stagex/meson . / +COPY --from=stagex/busybox . / +COPY --from=stagex/musl . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/cmake . / +COPY --from=stagex/pcre2 . / +COPY --from=stagex/python . / +COPY --from=stagex/bison . / +COPY --from=stagex/flex . / +COPY --from=stagex/py-packaging . / +COPY --from=stagex/libxslt . / +COPY --from=stagex/libffi . / +COPY --from=stagex/xz . / +COPY --from=stagex/expat . / +COPY --from=stagex/rhash . / +COPY --from=stagex/libxml2 . / +COPY --from=stagex/util-linux . / +COPY --from=stagex/libxslt . / +COPY --from=stagex/gettext . / +COPY --from=stagex/ninja . / +RUN tar -xf ${SRC_FILE} +WORKDIR /fuse-${VERSION} +COPY *.patch . +RUN --network=none <<-EOF + set -eux + meson setup \ + --default-library=shared \ + --prefix=/usr \ + -Dinitscriptdir="" \ + . output + meson compile -C output +EOF + +FROM build AS install +RUN DESTDIR=/rootfs meson install --no-rebuild -C output +RUN find /rootfs -exec touch -hcd "@0" "{}" + + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/iptables/Containerfile b/packages/iptables/Containerfile new file mode 100644 index 0000000..4a85a72 --- /dev/null +++ b/packages/iptables/Containerfile @@ -0,0 +1,51 @@ +FROM scratch AS base +ENV VERSION=1.8.10 +ENV SRC_FILE=iptables-${VERSION}.tar.xz +ENV SRC_SITE=https://netfilter.org/projects/iptables/files/${SRC_FILE} +ENV SRC_HASH=5cc255c189356e317d070755ce9371eb63a1b783c34498fb8c30264f3cc59c9c + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/perl . / +COPY --from=stagex/libtool . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/autoconf . / +COPY --from=stagex/automake . / +COPY --from=stagex/m4 . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/libnftnl . / +COPY --from=stagex/libmnl . / +RUN tar -xf ${SRC_FILE} +WORKDIR /iptables-${VERSION} +RUN --network=none <<-EOF + set -eux + /usr/bin/autoreconf -vif + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --sysconfdir=/etc \ + --sbindir=/usr/sbin \ + --without-kernel \ + --enable-devel \ + --enable-libipq \ + --enable-shared + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make install DESTDIR=/rootfs +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libmnl/Containerfile b/packages/libmnl/Containerfile new file mode 100644 index 0000000..c96927c --- /dev/null +++ b/packages/libmnl/Containerfile @@ -0,0 +1,41 @@ +FROM scratch AS base +ENV VERSION=1.0.5 +ENV SRC_FILE=libmnl-${VERSION}.tar.bz2 +ENV SRC_SITE=https://netfilter.org/projects/libmnl/files/${SRC_FILE} +ENV SRC_HASH=274b9b919ef3152bfb3da3a13c950dd60d6e2bcd54230ffeca298d03b40d0525 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/m4 . / +RUN tar -xf ${SRC_FILE} +WORKDIR /libmnl-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make install DESTDIR=/rootfs +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/libnftnl/Containerfile b/packages/libnftnl/Containerfile new file mode 100644 index 0000000..1a1c2d0 --- /dev/null +++ b/packages/libnftnl/Containerfile @@ -0,0 +1,42 @@ +FROM scratch AS base +ENV VERSION=1.2.7 +ENV SRC_FILE=libnftnl-${VERSION}.tar.xz +ENV SRC_SITE=https://netfilter.org/projects/libnftnl/files/${SRC_FILE} +ENV SRC_HASH=9122774f968093d5c0bacddd67de480f31fa4073405a7fc058a34b0f387aecb3 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/m4 . / +COPY --from=stagex/libmnl . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR /libnftnl-${VERSION} +RUN --network=none <<-EOF + set -eux + ./configure \ + --build=x86_64-linux-musl \ + --host=x86_64-linux-musl \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --enable-static + make -j "$(nproc)" +EOF + +FROM build AS install +RUN <<-EOF + set -eux + make install DESTDIR=/rootfs +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/linux-guest/Containerfile b/packages/linux-guest/Containerfile new file mode 100644 index 0000000..7842ea3 --- /dev/null +++ b/packages/linux-guest/Containerfile @@ -0,0 +1,57 @@ +FROM scratch AS base +ENV VERSION=6.7 +ENV SRC_HASH=ef31144a2576d080d8c31698e83ec9f66bf97c677fa2aaf0d5bbb9f3345b1069 +ENV SRC_FILE=linux-${VERSION}.tar.xz +ENV SRC_SITE=http://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/elfutils . / +COPY --from=stagex/openssl . / +COPY --from=stagex/perl . / +COPY --from=stagex/m4 . / +COPY --from=stagex/gcc . / +COPY --from=stagex/bison . / +COPY --from=stagex/libzstd . / +COPY --from=stagex/zlib . / +COPY --from=stagex/flex . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/coreutils . / +COPY --from=stagex/findutils . / +COPY --from=stagex/diffutils . / +COPY --from=stagex/tar . / +COPY --from=stagex/gzip . / +COPY --from=stagex/xz . / +COPY --from=stagex/sed . / +COPY --from=stagex/grep . / +COPY --from=stagex/gawk . / +COPY --from=stagex/bc . / +COPY --from=stagex/bash . / +COPY --from=stagex/bash /bin/bash /bin/sh +RUN tar -xf ${SRC_FILE} +WORKDIR /linux-${VERSION} +ADD linux.config .config +ENV KBUILD_BUILD_HOST=stagex +ENV KBUILD_BUILD_USER=user +ENV KBUILD_BUILD_TIMESTAMP=1 +RUN <<-EOF + set -eux + make -j "$(nproc)" bzImage +EOF + +FROM build AS install +RUN <<-EOF + set -eux + mkdir /rootfs + cp .config /rootfs/linux.config + cp arch/x86_64/boot/bzImage /rootfs +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/linux-guest/linux.config b/packages/linux-guest/linux.config new file mode 100644 index 0000000..3a5c159 --- /dev/null +++ b/packages/linux-guest/linux.config @@ -0,0 +1,4266 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/x86 6.7.0 Kernel Configuration +# +CONFIG_CC_VERSION_TEXT="gcc (Debian 12.2.0-14) 12.2.0" +CONFIG_CC_IS_GCC=y +CONFIG_GCC_VERSION=120200 +CONFIG_CLANG_VERSION=0 +CONFIG_AS_IS_GNU=y +CONFIG_AS_VERSION=24000 +CONFIG_LD_IS_BFD=y +CONFIG_LD_VERSION=24000 +CONFIG_LLD_VERSION=0 +CONFIG_CC_CAN_LINK=y +CONFIG_CC_CAN_LINK_STATIC=y +CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y +CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y +CONFIG_TOOLS_SUPPORT_RELR=y +CONFIG_CC_HAS_ASM_INLINE=y +CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y +CONFIG_PAHOLE_VERSION=0 +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_TABLE_SORT=y +CONFIG_THREAD_INFO_IN_TASK=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +# CONFIG_COMPILE_TEST is not set +# CONFIG_WERROR is not set +CONFIG_LOCALVERSION="guest" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_HAVE_KERNEL_ZSTD=y +# CONFIG_KERNEL_GZIP is not set +# CONFIG_KERNEL_BZIP2 is not set +# CONFIG_KERNEL_LZMA is not set +CONFIG_KERNEL_XZ=y +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_LZ4 is not set +# CONFIG_KERNEL_ZSTD is not set +CONFIG_DEFAULT_INIT="/init" +CONFIG_DEFAULT_HOSTNAME="repros-guest" +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +# CONFIG_WATCH_QUEUE is not set +CONFIG_CROSS_MEMORY_ATTACH=y +# CONFIG_USELIB is not set +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_AUDITSYSCALL=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y +CONFIG_GENERIC_IRQ_RESERVATION_MODE=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +# end of IRQ subsystem + +CONFIG_CLOCKSOURCE_WATCHDOG=y +CONFIG_ARCH_CLOCKSOURCE_INIT=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y +CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y +CONFIG_CONTEXT_TRACKING=y +CONFIG_CONTEXT_TRACKING_IDLE=y + +# +# Timers subsystem +# +CONFIG_HZ_PERIODIC=y +# CONFIG_NO_HZ_IDLE is not set +# CONFIG_NO_HZ_FULL is not set +# CONFIG_NO_HZ is not set +# CONFIG_HIGH_RES_TIMERS is not set +CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=125 +# end of Timers subsystem + +CONFIG_BPF=y +CONFIG_HAVE_EBPF_JIT=y +CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y + +# +# BPF subsystem +# +CONFIG_BPF_SYSCALL=y +CONFIG_BPF_UNPRIV_DEFAULT_OFF=y +# CONFIG_BPF_PRELOAD is not set +# end of BPF subsystem + +CONFIG_PREEMPT_BUILD=y +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +CONFIG_PREEMPT_COUNT=y +CONFIG_PREEMPTION=y +CONFIG_PREEMPT_DYNAMIC=y +# CONFIG_SCHED_CORE is not set + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +# CONFIG_PSI is not set +# end of CPU/Task time and stats accounting + +CONFIG_CPU_ISOLATION=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +CONFIG_PREEMPT_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_TREE_SRCU=y +CONFIG_TASKS_RCU_GENERIC=y +CONFIG_TASKS_RCU=y +CONFIG_TASKS_TRACE_RCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y +# end of RCU Subsystem + +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +# CONFIG_IKHEADERS is not set +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y + +# +# Scheduler features +# +# CONFIG_UCLAMP_TASK is not set +# end of Scheduler features + +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y +CONFIG_CC_HAS_INT128=y +CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" +CONFIG_GCC11_NO_ARRAY_BOUNDS=y +CONFIG_CC_NO_ARRAY_BOUNDS=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_CGROUPS=y +CONFIG_PAGE_COUNTER=y +# CONFIG_CGROUP_FAVOR_DYNMODS is not set +CONFIG_MEMCG=y +CONFIG_MEMCG_KMEM=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_SCHED_MM_CID=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_BPF=y +CONFIG_CGROUP_MISC=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_TIME_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +# CONFIG_RD_BZIP2 is not set +# CONFIG_RD_LZMA is not set +# CONFIG_RD_XZ is not set +# CONFIG_RD_LZO is not set +# CONFIG_RD_LZ4 is not set +# CONFIG_RD_ZSTD is not set +# CONFIG_BOOT_CONFIG is not set +# CONFIG_INITRAMFS_PRESERVE_MTIME is not set +# CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE is not set +CONFIG_CC_OPTIMIZE_FOR_SIZE=y +CONFIG_LD_ORPHAN_WARN=y +CONFIG_LD_ORPHAN_WARN_LEVEL="warn" +CONFIG_SYSCTL=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_EXPERT=y +CONFIG_UID16=y +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +# CONFIG_SYSFS_SYSCALL is not set +# CONFIG_FHANDLE is not set +# CONFIG_POSIX_TIMERS is not set +CONFIG_PRINTK=y +# CONFIG_BUG is not set +CONFIG_ELF_CORE=y +# CONFIG_PCSPKR_PLATFORM is not set +# CONFIG_BASE_FULL is not set +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +# CONFIG_AIO is not set +# CONFIG_IO_URING is not set +# CONFIG_ADVISE_SYSCALLS is not set +CONFIG_MEMBARRIER=y +# CONFIG_KALLSYMS is not set +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_KCMP=y +CONFIG_RSEQ=y +CONFIG_CACHESTAT_SYSCALL=y +# CONFIG_DEBUG_RSEQ is not set +CONFIG_HAVE_PERF_EVENTS=y +# CONFIG_PC104 is not set + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +# end of Kernel Performance Events And Counters + +CONFIG_PROFILING=y + +# +# Kexec and crash features +# +CONFIG_CRASH_CORE=y +# CONFIG_KEXEC is not set +# CONFIG_KEXEC_FILE is not set +# CONFIG_CRASH_DUMP is not set +# end of Kexec and crash features +# end of General setup + +CONFIG_64BIT=y +CONFIG_X86_64=y +CONFIG_X86=y +CONFIG_INSTRUCTION_DECODER=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=32 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_GENERIC_ISA_DMA=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_AUDIT_ARCH=y +CONFIG_X86_64_SMP=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=5 +CONFIG_CC_HAS_SANE_STACKPROTECTOR=y + +# +# Processor type and features +# +CONFIG_SMP=y +CONFIG_X86_X2APIC=y +CONFIG_X86_MPPARSE=y +# CONFIG_GOLDFISH is not set +# CONFIG_X86_CPU_RESCTRL is not set +# CONFIG_X86_EXTENDED_PLATFORM is not set +# CONFIG_X86_INTEL_LPSS is not set +# CONFIG_X86_AMD_PLATFORM_DEVICE is not set +CONFIG_IOSF_MBI=y +# CONFIG_SCHED_OMIT_FRAME_POINTER is not set +CONFIG_HYPERVISOR_GUEST=y +# CONFIG_PARAVIRT is not set +# CONFIG_ARCH_CPUIDLE_HALTPOLL is not set +# CONFIG_PVH is not set +# CONFIG_JAILHOUSE_GUEST is not set +# CONFIG_ACRN_GUEST is not set +# CONFIG_INTEL_TDX_GUEST is not set +# CONFIG_MK8 is not set +# CONFIG_MPSC is not set +# CONFIG_MCORE2 is not set +# CONFIG_MATOM is not set +CONFIG_GENERIC_CPU=y +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_TSC=y +CONFIG_X86_CMPXCHG64=y +CONFIG_X86_CMOV=y +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_IA32_FEAT_CTL=y +CONFIG_X86_VMX_FEATURE_NAMES=y +CONFIG_PROCESSOR_SELECT=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_AMD=y +# CONFIG_CPU_SUP_HYGON is not set +# CONFIG_CPU_SUP_CENTAUR is not set +# CONFIG_CPU_SUP_ZHAOXIN is not set +CONFIG_HPET_TIMER=y +CONFIG_DMI=y +# CONFIG_GART_IOMMU is not set +CONFIG_BOOT_VESA_SUPPORT=y +# CONFIG_MAXSMP is not set +CONFIG_NR_CPUS_RANGE_BEGIN=2 +CONFIG_NR_CPUS_RANGE_END=512 +CONFIG_NR_CPUS_DEFAULT=64 +CONFIG_NR_CPUS=64 +CONFIG_SCHED_CLUSTER=y +CONFIG_SCHED_SMT=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_MC_PRIO=y +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_IO_APIC=y +# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set +# CONFIG_X86_MCE is not set + +# +# Performance monitoring +# +CONFIG_PERF_EVENTS_INTEL_UNCORE=y +CONFIG_PERF_EVENTS_INTEL_RAPL=y +CONFIG_PERF_EVENTS_INTEL_CSTATE=y +# CONFIG_PERF_EVENTS_AMD_POWER is not set +# CONFIG_PERF_EVENTS_AMD_UNCORE is not set +# CONFIG_PERF_EVENTS_AMD_BRS is not set +# end of Performance monitoring + +CONFIG_X86_VSYSCALL_EMULATION=y +# CONFIG_X86_IOPL_IOPERM is not set +CONFIG_MICROCODE=y +# CONFIG_MICROCODE_LATE_LOADING is not set +# CONFIG_X86_MSR is not set +# CONFIG_X86_CPUID is not set +CONFIG_X86_5LEVEL=y +CONFIG_X86_DIRECT_GBPAGES=y +# CONFIG_AMD_MEM_ENCRYPT is not set +# CONFIG_NUMA is not set +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +# CONFIG_ARCH_MEMORY_PROBE is not set +CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +# CONFIG_X86_PMEM_LEGACY is not set +# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_X86_PAT=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_X86_UMIP=y +CONFIG_CC_HAS_IBT=y +CONFIG_X86_CET=y +CONFIG_X86_KERNEL_IBT=y +CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y +CONFIG_X86_INTEL_TSX_MODE_OFF=y +# CONFIG_X86_INTEL_TSX_MODE_ON is not set +# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set +# CONFIG_X86_SGX is not set +# CONFIG_X86_USER_SHADOW_STACK is not set +CONFIG_EFI=y +CONFIG_EFI_STUB=y +CONFIG_EFI_HANDOVER_PROTOCOL=y +# CONFIG_EFI_MIXED is not set +# CONFIG_EFI_FAKE_MEMMAP is not set +# CONFIG_EFI_RUNTIME_MAP is not set +# CONFIG_HZ_100 is not set +CONFIG_HZ_250=y +# CONFIG_HZ_300 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ=250 +CONFIG_ARCH_SUPPORTS_KEXEC=y +CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y +CONFIG_ARCH_SUPPORTS_KEXEC_PURGATORY=y +CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y +CONFIG_ARCH_SUPPORTS_KEXEC_SIG_FORCE=y +CONFIG_ARCH_SUPPORTS_KEXEC_BZIMAGE_VERIFY_SIG=y +CONFIG_ARCH_SUPPORTS_KEXEC_JUMP=y +CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y +CONFIG_ARCH_SUPPORTS_CRASH_HOTPLUG=y +CONFIG_ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION=y +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_RELOCATABLE=y +CONFIG_RANDOMIZE_BASE=y +CONFIG_X86_NEED_RELOCS=y +CONFIG_PHYSICAL_ALIGN=0x200000 +CONFIG_DYNAMIC_MEMORY_LAYOUT=y +CONFIG_RANDOMIZE_MEMORY=y +CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0x1 +# CONFIG_ADDRESS_MASKING is not set +CONFIG_HOTPLUG_CPU=y +# CONFIG_COMPAT_VDSO is not set +CONFIG_LEGACY_VSYSCALL_XONLY=y +# CONFIG_LEGACY_VSYSCALL_NONE is not set +# CONFIG_CMDLINE_BOOL is not set +# CONFIG_MODIFY_LDT_SYSCALL is not set +# CONFIG_STRICT_SIGALTSTACK_SIZE is not set +CONFIG_HAVE_LIVEPATCH=y +# end of Processor type and features + +CONFIG_CC_HAS_SLS=y +CONFIG_CC_HAS_RETURN_THUNK=y +CONFIG_CC_HAS_ENTRY_PADDING=y +CONFIG_FUNCTION_PADDING_CFI=11 +CONFIG_FUNCTION_PADDING_BYTES=16 +CONFIG_CALL_PADDING=y +CONFIG_HAVE_CALL_THUNKS=y +CONFIG_CALL_THUNKS=y +CONFIG_PREFIX_SYMBOLS=y +CONFIG_SPECULATION_MITIGATIONS=y +CONFIG_PAGE_TABLE_ISOLATION=y +CONFIG_RETPOLINE=y +CONFIG_RETHUNK=y +CONFIG_CPU_UNRET_ENTRY=y +CONFIG_CALL_DEPTH_TRACKING=y +# CONFIG_CALL_THUNKS_DEBUG is not set +CONFIG_CPU_IBPB_ENTRY=y +CONFIG_CPU_IBRS_ENTRY=y +CONFIG_CPU_SRSO=y +# CONFIG_SLS is not set +# CONFIG_GDS_FORCE_MITIGATION is not set +CONFIG_ARCH_HAS_ADD_PAGES=y + +# +# Power management and ACPI options +# +# CONFIG_SUSPEND is not set +# CONFIG_HIBERNATION is not set +# CONFIG_PM is not set +# CONFIG_ENERGY_MODEL is not set +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ACPI=y +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y +CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y +# CONFIG_ACPI_DEBUGGER is not set +CONFIG_ACPI_SPCR_TABLE=y +# CONFIG_ACPI_FPDT is not set +CONFIG_ACPI_LPIT=y +CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y +# CONFIG_ACPI_EC_DEBUGFS is not set +CONFIG_ACPI_AC=y +CONFIG_ACPI_BATTERY=y +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_FAN=y +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_CPU_FREQ_PSS=y +CONFIG_ACPI_PROCESSOR_CSTATE=y +CONFIG_ACPI_PROCESSOR_IDLE=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_HOTPLUG_CPU=y +# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_CUSTOM_DSDT_FILE="" +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ACPI_TABLE_UPGRADE=y +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_PCI_SLOT is not set +CONFIG_ACPI_CONTAINER=y +# CONFIG_ACPI_HOTPLUG_MEMORY is not set +CONFIG_ACPI_HOTPLUG_IOAPIC=y +# CONFIG_ACPI_SBS is not set +# CONFIG_ACPI_HED is not set +# CONFIG_ACPI_BGRT is not set +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +# CONFIG_ACPI_NFIT is not set +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y +# CONFIG_ACPI_APEI is not set +# CONFIG_ACPI_DPTF is not set +# CONFIG_ACPI_CONFIGFS is not set +# CONFIG_ACPI_PFRUT is not set +CONFIG_ACPI_PCC=y +# CONFIG_ACPI_FFH is not set +# CONFIG_PMIC_OPREGION is not set +CONFIG_ACPI_PRMT=y +# CONFIG_X86_PM_TIMER is not set + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y + +# +# CPU frequency scaling drivers +# +CONFIG_X86_INTEL_PSTATE=y +# CONFIG_X86_PCC_CPUFREQ is not set +# CONFIG_X86_AMD_PSTATE is not set +# CONFIG_X86_AMD_PSTATE_UT is not set +# CONFIG_X86_ACPI_CPUFREQ is not set +# CONFIG_X86_SPEEDSTEP_CENTRINO is not set +# CONFIG_X86_P4_CLOCKMOD is not set + +# +# shared options +# +# end of CPU Frequency scaling + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_LADDER=y +# CONFIG_CPU_IDLE_GOV_MENU is not set +# CONFIG_CPU_IDLE_GOV_TEO is not set +# end of CPU Idle + +# CONFIG_INTEL_IDLE is not set +# end of Power management and ACPI options + +# +# Bus options (PCI etc.) +# +CONFIG_PCI_DIRECT=y +CONFIG_PCI_MMCONFIG=y +CONFIG_MMCONF_FAM10H=y +# CONFIG_PCI_CNB20LE_QUIRK is not set +# CONFIG_ISA_BUS is not set +CONFIG_ISA_DMA_API=y +CONFIG_AMD_NB=y +# end of Bus options (PCI etc.) + +# +# Binary Emulations +# +CONFIG_IA32_EMULATION=y +# CONFIG_IA32_EMULATION_DEFAULT_DISABLED is not set +# CONFIG_X86_X32_ABI is not set +CONFIG_COMPAT_32=y +CONFIG_COMPAT=y +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +# end of Binary Emulations + +CONFIG_HAVE_KVM=y +CONFIG_VIRTUALIZATION=y +CONFIG_AS_AVX512=y +CONFIG_AS_SHA1_NI=y +CONFIG_AS_SHA256_NI=y +CONFIG_AS_TPAUSE=y +CONFIG_AS_GFNI=y +CONFIG_AS_WRUSS=y + +# +# General architecture-dependent options +# +CONFIG_HOTPLUG_SMT=y +CONFIG_HOTPLUG_CORE_SYNC=y +CONFIG_HOTPLUG_CORE_SYNC_DEAD=y +CONFIG_HOTPLUG_CORE_SYNC_FULL=y +CONFIG_HOTPLUG_SPLIT_STARTUP=y +CONFIG_HOTPLUG_PARALLEL=y +CONFIG_GENERIC_ENTRY=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_CALL_SELFTEST is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_NMI=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_ARCH_HAS_SET_DIRECT_MAP=y +CONFIG_ARCH_HAS_CPU_FINALIZE_INIT=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_ARCH_WANTS_NO_INSTR=y +CONFIG_HAVE_ASM_MODVERSIONS=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_RUST=y +CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y +CONFIG_MMU_GATHER_MERGE_VMAS=y +CONFIG_MMU_LAZY_TLB_REFCOUNT=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_HAVE_ARCH_SECCOMP=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +# CONFIG_SECCOMP_CACHE_DEBUG is not set +CONFIG_HAVE_ARCH_STACKLEAK=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_ARCH_SUPPORTS_LTO_CLANG=y +CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y +CONFIG_LTO_NONE=y +CONFIG_ARCH_SUPPORTS_CFI_CLANG=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_CONTEXT_TRACKING_USER=y +CONFIG_HAVE_CONTEXT_TRACKING_USER_OFFSTACK=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_MOVE_PUD=y +CONFIG_HAVE_MOVE_PMD=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_HUGE_VMALLOC=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_PMD_MKWRITE=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y +CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y +CONFIG_SOFTIRQ_ON_OWN_STACK=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_PAGE_SIZE_LESS_THAN_64KB=y +CONFIG_PAGE_SIZE_LESS_THAN_256KB=y +CONFIG_HAVE_OBJTOOL=y +CONFIG_HAVE_JUMP_LABEL_HACK=y +CONFIG_HAVE_NOINSTR_HACK=y +CONFIG_HAVE_NOINSTR_VALIDATION=y +CONFIG_HAVE_UACCESS_VALIDATION=y +CONFIG_HAVE_STACK_VALIDATION=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_COMPAT_32BIT_TIME is not set +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_VMAP_STACK=y +CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y +CONFIG_RANDOMIZE_KSTACK_OFFSET=y +CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y +CONFIG_ARCH_HAS_MEM_ENCRYPT=y +CONFIG_HAVE_STATIC_CALL=y +CONFIG_HAVE_STATIC_CALL_INLINE=y +CONFIG_HAVE_PREEMPT_DYNAMIC=y +CONFIG_HAVE_PREEMPT_DYNAMIC_CALL=y +CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y +CONFIG_ARCH_HAS_ELFCORE_COMPAT=y +CONFIG_ARCH_HAS_PARANOID_L1D_FLUSH=y +CONFIG_DYNAMIC_SIGFRAME=y +CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG=y + +# +# GCOV-based kernel profiling +# +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +# end of GCOV-based kernel profiling + +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_FUNCTION_ALIGNMENT_4B=y +CONFIG_FUNCTION_ALIGNMENT_16B=y +CONFIG_FUNCTION_ALIGNMENT=16 +# end of General architecture-dependent options + +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=1 +# CONFIG_MODULES is not set +CONFIG_BLOCK=y +CONFIG_BLOCK_LEGACY_AUTOLOAD=y +CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CGROUP_PUNT_BIO=y +CONFIG_BLK_DEV_BSG_COMMON=y +CONFIG_BLK_ICQ=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_INTEGRITY_T10=y +# CONFIG_BLK_DEV_ZONED is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_WBT is not set +CONFIG_BLK_CGROUP_IOLATENCY=y +# CONFIG_BLK_CGROUP_IOCOST is not set +# CONFIG_BLK_CGROUP_IOPRIO is not set +# CONFIG_BLK_SED_OPAL is not set +# CONFIG_BLK_INLINE_ENCRYPTION is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_MSDOS_PARTITION=y +CONFIG_EFI_PARTITION=y +# end of Partition Types + +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y + +# +# IO Schedulers +# +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=y +CONFIG_IOSCHED_BFQ=y +CONFIG_BFQ_GROUP_IOSCHED=y +# CONFIG_BFQ_CGROUP_DEBUG is not set +# end of IO Schedulers + +CONFIG_ASN1=y +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_FREEZER=y + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_MISC=y +CONFIG_COREDUMP=y +# end of Executable file formats + +# +# Memory Management options +# +CONFIG_SWAP=y +# CONFIG_ZSWAP is not set + +# +# SLAB allocator options +# +# CONFIG_SLAB_DEPRECATED is not set +CONFIG_SLUB=y +CONFIG_SLUB_TINY=y +CONFIG_SLAB_MERGE_DEFAULT=y +# end of SLAB allocator options + +# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set +# CONFIG_COMPAT_BRK is not set +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_ARCH_WANT_OPTIMIZE_DAX_VMEMMAP=y +CONFIG_ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP=y +CONFIG_HAVE_FAST_GUP=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_EXCLUSIVE_SYSTEM_RAM=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_MEMORY_HOTPLUG=y +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_MHP_MEMMAP_ON_MEMORY=y +CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_COMPACTION=y +CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1 +CONFIG_PAGE_REPORTING=y +CONFIG_MIGRATION=y +CONFIG_DEVICE_MIGRATION=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y +CONFIG_CONTIG_ALLOC=y +CONFIG_PCP_BATCH_SCALE_MAX=5 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_THP_SWAP=y +# CONFIG_READ_ONLY_THP_FOR_FS is not set +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +# CONFIG_CMA is not set +# CONFIG_MEM_SOFT_DIRTY is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y +CONFIG_ARCH_HAS_PTE_DEVMAP=y +CONFIG_ARCH_HAS_ZONE_DMA_SET=y +CONFIG_ZONE_DMA=y +CONFIG_ZONE_DMA32=y +CONFIG_ZONE_DEVICE=y +# CONFIG_DEVICE_PRIVATE is not set +CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_HAS_PKEYS=y +CONFIG_VM_EVENT_COUNTERS=y +# CONFIG_PERCPU_STATS is not set + +# +# GUP_TEST needs to have DEBUG_FS enabled +# +# CONFIG_DMAPOOL_TEST is not set +CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_MEMFD_CREATE=y +CONFIG_SECRETMEM=y +# CONFIG_USERFAULTFD is not set +# CONFIG_LRU_GEN is not set +CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y +CONFIG_PER_VMA_LOCK=y +CONFIG_LOCK_MM_AND_FIND_VMA=y + +# +# Data Access Monitoring +# +# CONFIG_DAMON is not set +# end of Data Access Monitoring +# end of Memory Management options + +CONFIG_NET=y +CONFIG_NET_INGRESS=y +CONFIG_NET_EGRESS=y +CONFIG_NET_XGRESS=y +CONFIG_SKB_EXTENSIONS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=y +CONFIG_UNIX=y +CONFIG_UNIX_SCM=y +CONFIG_AF_UNIX_OOB=y +CONFIG_UNIX_DIAG=y +# CONFIG_TLS is not set +# CONFIG_XFRM_USER is not set +# CONFIG_NET_KEY is not set +CONFIG_XDP_SOCKETS=y +# CONFIG_XDP_SOCKETS_DIAG is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +# CONFIG_IP_PNP_BOOTP is not set +# CONFIG_IP_PNP_RARP is not set +CONFIG_NET_IPIP=y +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_NET_IP_TUNNEL=y +CONFIG_IP_MROUTE_COMMON=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_MULTIPLE_TABLES=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +# CONFIG_NET_IPVTI is not set +CONFIG_NET_UDP_TUNNEL=y +CONFIG_NET_FOU=y +CONFIG_NET_FOU_IP_TUNNELS=y +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +CONFIG_INET_TABLE_PERTURB_ORDER=16 +CONFIG_INET_TUNNEL=y +CONFIG_INET_DIAG=y +CONFIG_INET_TCP_DIAG=y +# CONFIG_INET_UDP_DIAG is not set +# CONFIG_INET_RAW_DIAG is not set +# CONFIG_INET_DIAG_DESTROY is not set +# CONFIG_TCP_CONG_ADVANCED is not set +CONFIG_TCP_CONG_CUBIC=y +CONFIG_DEFAULT_TCP_CONG="cubic" +CONFIG_TCP_SIGPOOL=y +# CONFIG_TCP_AO is not set +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +# CONFIG_IPV6_ROUTE_INFO is not set +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +# CONFIG_INET6_AH is not set +# CONFIG_INET6_ESP is not set +# CONFIG_INET6_IPCOMP is not set +# CONFIG_IPV6_MIP6 is not set +# CONFIG_IPV6_ILA is not set +CONFIG_INET6_TUNNEL=y +# CONFIG_IPV6_VTI is not set +CONFIG_IPV6_SIT=y +# CONFIG_IPV6_SIT_6RD is not set +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=y +CONFIG_IPV6_FOU=y +CONFIG_IPV6_FOU_TUNNEL=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +# CONFIG_IPV6_MROUTE is not set +# CONFIG_IPV6_SEG6_LWTUNNEL is not set +# CONFIG_IPV6_SEG6_HMAC is not set +# CONFIG_IPV6_RPL_LWTUNNEL is not set +# CONFIG_IPV6_IOAM6_LWTUNNEL is not set +# CONFIG_NETLABEL is not set +# CONFIG_MPTCP is not set +CONFIG_NETWORK_SECMARK=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=y + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_EGRESS=y +CONFIG_NETFILTER_NETLINK=y +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_BPF_LINK=y +# CONFIG_NETFILTER_NETLINK_HOOK is not set +CONFIG_NETFILTER_NETLINK_ACCT=y +CONFIG_NETFILTER_NETLINK_QUEUE=y +CONFIG_NETFILTER_NETLINK_LOG=y +CONFIG_NETFILTER_NETLINK_OSF=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_LOG_SYSLOG=y +CONFIG_NETFILTER_CONNCOUNT=y +CONFIG_NF_CONNTRACK_MARK=y +# CONFIG_NF_CONNTRACK_SECMARK is not set +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +# CONFIG_NF_CONNTRACK_AMANDA is not set +# CONFIG_NF_CONNTRACK_FTP is not set +# CONFIG_NF_CONNTRACK_H323 is not set +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set +# CONFIG_NF_CONNTRACK_SNMP is not set +# CONFIG_NF_CONNTRACK_PPTP is not set +# CONFIG_NF_CONNTRACK_SANE is not set +# CONFIG_NF_CONNTRACK_SIP is not set +# CONFIG_NF_CONNTRACK_TFTP is not set +CONFIG_NF_CT_NETLINK=y +CONFIG_NF_CT_NETLINK_TIMEOUT=y +CONFIG_NF_CT_NETLINK_HELPER=y +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NF_NAT=y +CONFIG_NF_NAT_REDIRECT=y +CONFIG_NF_NAT_MASQUERADE=y +CONFIG_NETFILTER_SYNPROXY=y +CONFIG_NF_TABLES=y +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_NETDEV=y +# CONFIG_NFT_NUMGEN is not set +CONFIG_NFT_CT=y +CONFIG_NFT_CONNLIMIT=y +CONFIG_NFT_LOG=y +CONFIG_NFT_LIMIT=y +CONFIG_NFT_MASQ=y +CONFIG_NFT_REDIR=y +CONFIG_NFT_NAT=y +CONFIG_NFT_TUNNEL=y +CONFIG_NFT_QUEUE=y +# CONFIG_NFT_QUOTA is not set +CONFIG_NFT_REJECT=y +CONFIG_NFT_REJECT_INET=y +# CONFIG_NFT_COMPAT is not set +CONFIG_NFT_HASH=y +CONFIG_NFT_FIB=y +# CONFIG_NFT_SOCKET is not set +CONFIG_NFT_OSF=y +CONFIG_NFT_TPROXY=y +# CONFIG_NFT_SYNPROXY is not set +CONFIG_NF_DUP_NETDEV=y +CONFIG_NFT_DUP_NETDEV=y +CONFIG_NFT_FWD_NETDEV=y +# CONFIG_NFT_REJECT_NETDEV is not set +# CONFIG_NF_FLOW_TABLE is not set +CONFIG_NETFILTER_XTABLES=y +# CONFIG_NETFILTER_XTABLES_COMPAT is not set + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=y +CONFIG_NETFILTER_XT_CONNMARK=y +CONFIG_NETFILTER_XT_SET=y + +# +# Xtables targets +# +# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_CT=y +CONFIG_NETFILTER_XT_TARGET_DSCP=y +CONFIG_NETFILTER_XT_TARGET_HL=y +CONFIG_NETFILTER_XT_TARGET_HMARK=y +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y +CONFIG_NETFILTER_XT_TARGET_LOG=y +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_NAT=y +CONFIG_NETFILTER_XT_TARGET_NETMAP=y +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y +CONFIG_NETFILTER_XT_TARGET_NOTRACK=y +CONFIG_NETFILTER_XT_TARGET_RATEEST=y +CONFIG_NETFILTER_XT_TARGET_REDIRECT=y +CONFIG_NETFILTER_XT_TARGET_MASQUERADE=y +CONFIG_NETFILTER_XT_TARGET_TEE=y +CONFIG_NETFILTER_XT_TARGET_TPROXY=y +CONFIG_NETFILTER_XT_TARGET_TRACE=y +# CONFIG_NETFILTER_XT_TARGET_SECMARK is not set +CONFIG_NETFILTER_XT_TARGET_TCPMSS=y +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=y + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y +CONFIG_NETFILTER_XT_MATCH_BPF=y +CONFIG_NETFILTER_XT_MATCH_CGROUP=y +CONFIG_NETFILTER_XT_MATCH_CLUSTER=y +CONFIG_NETFILTER_XT_MATCH_COMMENT=y +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=y +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +CONFIG_NETFILTER_XT_MATCH_CPU=y +CONFIG_NETFILTER_XT_MATCH_DCCP=y +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=y +CONFIG_NETFILTER_XT_MATCH_DSCP=y +CONFIG_NETFILTER_XT_MATCH_ECN=y +CONFIG_NETFILTER_XT_MATCH_ESP=y +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y +CONFIG_NETFILTER_XT_MATCH_HELPER=y +CONFIG_NETFILTER_XT_MATCH_HL=y +CONFIG_NETFILTER_XT_MATCH_IPCOMP=y +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_IPVS=y +CONFIG_NETFILTER_XT_MATCH_L2TP=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=y +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +CONFIG_NETFILTER_XT_MATCH_NFACCT=y +CONFIG_NETFILTER_XT_MATCH_OSF=y +CONFIG_NETFILTER_XT_MATCH_OWNER=y +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y +CONFIG_NETFILTER_XT_MATCH_QUOTA=y +CONFIG_NETFILTER_XT_MATCH_RATEEST=y +CONFIG_NETFILTER_XT_MATCH_REALM=y +CONFIG_NETFILTER_XT_MATCH_RECENT=y +CONFIG_NETFILTER_XT_MATCH_SCTP=y +CONFIG_NETFILTER_XT_MATCH_SOCKET=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_STATISTIC=y +CONFIG_NETFILTER_XT_MATCH_STRING=y +CONFIG_NETFILTER_XT_MATCH_TCPMSS=y +CONFIG_NETFILTER_XT_MATCH_TIME=y +CONFIG_NETFILTER_XT_MATCH_U32=y +# end of Core Netfilter Configuration + +CONFIG_IP_SET=y +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=y +CONFIG_IP_SET_BITMAP_IPMAC=y +CONFIG_IP_SET_BITMAP_PORT=y +CONFIG_IP_SET_HASH_IP=y +CONFIG_IP_SET_HASH_IPMARK=y +CONFIG_IP_SET_HASH_IPPORT=y +CONFIG_IP_SET_HASH_IPPORTIP=y +CONFIG_IP_SET_HASH_IPPORTNET=y +# CONFIG_IP_SET_HASH_IPMAC is not set +# CONFIG_IP_SET_HASH_MAC is not set +# CONFIG_IP_SET_HASH_NETPORTNET is not set +CONFIG_IP_SET_HASH_NET=y +# CONFIG_IP_SET_HASH_NETNET is not set +CONFIG_IP_SET_HASH_NETPORT=y +CONFIG_IP_SET_HASH_NETIFACE=y +CONFIG_IP_SET_LIST_SET=y +CONFIG_IP_VS=y +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=y +CONFIG_IP_VS_WRR=y +CONFIG_IP_VS_LC=y +CONFIG_IP_VS_WLC=y +CONFIG_IP_VS_FO=y +CONFIG_IP_VS_OVF=y +CONFIG_IP_VS_LBLC=y +CONFIG_IP_VS_LBLCR=y +CONFIG_IP_VS_DH=y +CONFIG_IP_VS_SH=y +CONFIG_IP_VS_MH=y +CONFIG_IP_VS_SED=y +CONFIG_IP_VS_NQ=y +CONFIG_IP_VS_TWOS=y + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS MH scheduler +# +CONFIG_IP_VS_MH_TAB_INDEX=12 + +# +# IPVS application helper +# +CONFIG_IP_VS_NFCT=y + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=y +CONFIG_NF_SOCKET_IPV4=y +CONFIG_NF_TPROXY_IPV4=y +CONFIG_NF_TABLES_IPV4=y +CONFIG_NFT_REJECT_IPV4=y +CONFIG_NFT_DUP_IPV4=y +CONFIG_NFT_FIB_IPV4=y +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_DUP_IPV4=y +CONFIG_NF_LOG_ARP=y +CONFIG_NF_LOG_IPV4=y +CONFIG_NF_REJECT_IPV4=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_AH=y +CONFIG_IP_NF_MATCH_ECN=y +CONFIG_IP_NF_MATCH_RPFILTER=y +CONFIG_IP_NF_MATCH_TTL=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_SYNPROXY=y +CONFIG_IP_NF_NAT=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_NETMAP=y +CONFIG_IP_NF_TARGET_REDIRECT=y +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_TARGET_ECN=y +CONFIG_IP_NF_TARGET_TTL=y +CONFIG_IP_NF_RAW=y +CONFIG_IP_NF_SECURITY=y +CONFIG_IP_NF_ARPTABLES=y +CONFIG_IP_NF_ARPFILTER=y +CONFIG_IP_NF_ARP_MANGLE=y +# end of IP: Netfilter Configuration + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_SOCKET_IPV6=y +CONFIG_NF_TPROXY_IPV6=y +CONFIG_NF_TABLES_IPV6=y +CONFIG_NFT_REJECT_IPV6=y +CONFIG_NFT_DUP_IPV6=y +# CONFIG_NFT_FIB_IPV6 is not set +CONFIG_NF_DUP_IPV6=y +CONFIG_NF_REJECT_IPV6=y +CONFIG_NF_LOG_IPV6=y +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_AH=y +CONFIG_IP6_NF_MATCH_EUI64=y +CONFIG_IP6_NF_MATCH_FRAG=y +CONFIG_IP6_NF_MATCH_OPTS=y +CONFIG_IP6_NF_MATCH_HL=y +CONFIG_IP6_NF_MATCH_IPV6HEADER=y +CONFIG_IP6_NF_MATCH_MH=y +CONFIG_IP6_NF_MATCH_RPFILTER=y +CONFIG_IP6_NF_MATCH_RT=y +# CONFIG_IP6_NF_MATCH_SRH is not set +CONFIG_IP6_NF_TARGET_HL=y +CONFIG_IP6_NF_FILTER=y +CONFIG_IP6_NF_TARGET_REJECT=y +CONFIG_IP6_NF_TARGET_SYNPROXY=y +CONFIG_IP6_NF_MANGLE=y +CONFIG_IP6_NF_RAW=y +CONFIG_IP6_NF_SECURITY=y +CONFIG_IP6_NF_NAT=y +CONFIG_IP6_NF_TARGET_MASQUERADE=y +CONFIG_IP6_NF_TARGET_NPT=y +# end of IPv6: Netfilter Configuration + +CONFIG_NF_DEFRAG_IPV6=y +CONFIG_NF_TABLES_BRIDGE=y +# CONFIG_NFT_BRIDGE_META is not set +CONFIG_NFT_BRIDGE_REJECT=y +CONFIG_NF_CONNTRACK_BRIDGE=y +CONFIG_BRIDGE_NF_EBTABLES=y +CONFIG_BRIDGE_EBT_BROUTE=y +CONFIG_BRIDGE_EBT_T_FILTER=y +CONFIG_BRIDGE_EBT_T_NAT=y +CONFIG_BRIDGE_EBT_802_3=y +CONFIG_BRIDGE_EBT_AMONG=y +CONFIG_BRIDGE_EBT_ARP=y +CONFIG_BRIDGE_EBT_IP=y +CONFIG_BRIDGE_EBT_IP6=y +CONFIG_BRIDGE_EBT_LIMIT=y +CONFIG_BRIDGE_EBT_MARK=y +CONFIG_BRIDGE_EBT_PKTTYPE=y +CONFIG_BRIDGE_EBT_STP=y +CONFIG_BRIDGE_EBT_VLAN=y +CONFIG_BRIDGE_EBT_ARPREPLY=y +CONFIG_BRIDGE_EBT_DNAT=y +CONFIG_BRIDGE_EBT_MARK_T=y +CONFIG_BRIDGE_EBT_REDIRECT=y +CONFIG_BRIDGE_EBT_SNAT=y +CONFIG_BRIDGE_EBT_LOG=y +CONFIG_BRIDGE_EBT_NFLOG=y +# CONFIG_BPFILTER is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +# CONFIG_L2TP is not set +CONFIG_STP=y +CONFIG_BRIDGE=y +CONFIG_BRIDGE_IGMP_SNOOPING=y +# CONFIG_BRIDGE_MRP is not set +# CONFIG_BRIDGE_CFM is not set +# CONFIG_NET_DSA is not set +# CONFIG_VLAN_8021Q is not set +CONFIG_LLC=y +# CONFIG_LLC2 is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_PHONET is not set +# CONFIG_6LOWPAN is not set +# CONFIG_IEEE802154 is not set +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +# CONFIG_NET_SCH_HTB is not set +# CONFIG_NET_SCH_HFSC is not set +# CONFIG_NET_SCH_PRIO is not set +# CONFIG_NET_SCH_MULTIQ is not set +# CONFIG_NET_SCH_RED is not set +# CONFIG_NET_SCH_SFB is not set +# CONFIG_NET_SCH_SFQ is not set +# CONFIG_NET_SCH_TEQL is not set +# CONFIG_NET_SCH_TBF is not set +# CONFIG_NET_SCH_CBS is not set +# CONFIG_NET_SCH_ETF is not set +# CONFIG_NET_SCH_TAPRIO is not set +# CONFIG_NET_SCH_GRED is not set +# CONFIG_NET_SCH_NETEM is not set +# CONFIG_NET_SCH_DRR is not set +# CONFIG_NET_SCH_MQPRIO is not set +# CONFIG_NET_SCH_SKBPRIO is not set +# CONFIG_NET_SCH_CHOKE is not set +# CONFIG_NET_SCH_QFQ is not set +# CONFIG_NET_SCH_CODEL is not set +# CONFIG_NET_SCH_FQ_CODEL is not set +# CONFIG_NET_SCH_CAKE is not set +# CONFIG_NET_SCH_FQ is not set +# CONFIG_NET_SCH_HHF is not set +# CONFIG_NET_SCH_PIE is not set +# CONFIG_NET_SCH_PLUG is not set +# CONFIG_NET_SCH_ETS is not set +# CONFIG_NET_SCH_DEFAULT is not set + +# +# Classification +# +# CONFIG_NET_CLS_BASIC is not set +# CONFIG_NET_CLS_ROUTE4 is not set +# CONFIG_NET_CLS_FW is not set +# CONFIG_NET_CLS_U32 is not set +# CONFIG_NET_CLS_FLOW is not set +# CONFIG_NET_CLS_CGROUP is not set +# CONFIG_NET_CLS_BPF is not set +# CONFIG_NET_CLS_FLOWER is not set +# CONFIG_NET_CLS_MATCHALL is not set +# CONFIG_NET_EMATCH is not set +# CONFIG_NET_CLS_ACT is not set +CONFIG_NET_SCH_FIFO=y +# CONFIG_DCB is not set +CONFIG_DNS_RESOLVER=y +# CONFIG_BATMAN_ADV is not set +# CONFIG_OPENVSWITCH is not set +CONFIG_VSOCKETS=y +CONFIG_VSOCKETS_DIAG=y +CONFIG_VSOCKETS_LOOPBACK=y +CONFIG_VIRTIO_VSOCKETS=y +CONFIG_VIRTIO_VSOCKETS_COMMON=y +CONFIG_NETLINK_DIAG=y +CONFIG_MPLS=y +# CONFIG_NET_MPLS_GSO is not set +# CONFIG_MPLS_ROUTING is not set +# CONFIG_NET_NSH is not set +# CONFIG_HSR is not set +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_L3_MASTER_DEV=y +# CONFIG_QRTR is not set +# CONFIG_NET_NCSI is not set +CONFIG_PCPU_DEV_REFCNT=y +CONFIG_MAX_SKB_FRAGS=17 +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_SOCK_RX_QUEUE_MAPPING=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +# CONFIG_BPF_STREAM_PARSER is not set +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# end of Network testing +# end of Networking options + +# CONFIG_HAMRADIO is not set +# CONFIG_CAN is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +# CONFIG_AF_KCM is not set +# CONFIG_MCTP is not set +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +# CONFIG_CFG80211 is not set + +# +# CFG80211 needs to be enabled for MAC80211 +# +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +# CONFIG_RFKILL is not set +# CONFIG_NET_9P is not set +# CONFIG_CAIF is not set +# CONFIG_CEPH_LIB is not set +# CONFIG_NFC is not set +# CONFIG_PSAMPLE is not set +# CONFIG_NET_IFE is not set +# CONFIG_LWTUNNEL is not set +CONFIG_DST_CACHE=y +CONFIG_GRO_CELLS=y +CONFIG_NET_SOCK_MSG=y +CONFIG_PAGE_POOL=y +# CONFIG_PAGE_POOL_STATS is not set +CONFIG_FAILOVER=y +# CONFIG_ETHTOOL_NETLINK is not set + +# +# Device Drivers +# +CONFIG_HAVE_EISA=y +# CONFIG_EISA is not set +CONFIG_HAVE_PCI=y +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +# CONFIG_PCIEPORTBUS is not set +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +# CONFIG_PCIEASPM_PERFORMANCE is not set +# CONFIG_PCIE_PTM is not set +# CONFIG_PCI_MSI is not set +CONFIG_PCI_QUIRKS=y +# CONFIG_PCI_DEBUG is not set +# CONFIG_PCI_STUB is not set +CONFIG_PCI_LOCKLESS_CONFIG=y +# CONFIG_PCI_IOV is not set +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set +# CONFIG_PCI_P2PDMA is not set +CONFIG_PCI_LABEL=y +# CONFIG_PCIE_BUS_TUNE_OFF is not set +CONFIG_PCIE_BUS_DEFAULT=y +# CONFIG_PCIE_BUS_SAFE is not set +# CONFIG_PCIE_BUS_PERFORMANCE is not set +# CONFIG_PCIE_BUS_PEER2PEER is not set +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +# CONFIG_HOTPLUG_PCI is not set + +# +# PCI controller drivers +# + +# +# Cadence-based PCIe controllers +# +# end of Cadence-based PCIe controllers + +# +# DesignWare-based PCIe controllers +# +# end of DesignWare-based PCIe controllers + +# +# Mobiveil-based PCIe controllers +# +# end of Mobiveil-based PCIe controllers +# end of PCI controller drivers + +# +# PCI Endpoint +# +# CONFIG_PCI_ENDPOINT is not set +# end of PCI Endpoint + +# +# PCI switch controller drivers +# +# CONFIG_PCI_SW_SWITCHTEC is not set +# end of PCI switch controller drivers + +# CONFIG_CXL_BUS is not set +# CONFIG_PCCARD is not set +# CONFIG_RAPIDIO is not set + +# +# Generic Driver Options +# +# CONFIG_UEVENT_HELPER is not set +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +# CONFIG_DEVTMPFS_SAFE is not set +# CONFIG_STANDALONE is not set +# CONFIG_PREVENT_FIRMWARE_BUILD is not set + +# +# Firmware loader +# +# CONFIG_FW_LOADER is not set +# end of Firmware loader + +# CONFIG_ALLOW_DEV_COREDUMP is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_DMA_FENCE_TRACE is not set +# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set +# end of Generic Driver Options + +# +# Bus devices +# +# CONFIG_MHI_BUS is not set +# CONFIG_MHI_BUS_EP is not set +# end of Bus devices + +# +# Cache Drivers +# +# end of Cache Drivers + +# CONFIG_CONNECTOR is not set + +# +# Firmware Drivers +# + +# +# ARM System Control and Management Interface Protocol +# +# end of ARM System Control and Management Interface Protocol + +# CONFIG_EDD is not set +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +# CONFIG_DMI_SYSFS is not set +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +# CONFIG_ISCSI_IBFT is not set +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_SYSFB=y +# CONFIG_SYSFB_SIMPLEFB is not set +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_ESRT=y +CONFIG_EFI_DXE_MEM_ATTRIBUTES=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +# CONFIG_EFI_BOOTLOADER_CONTROL is not set +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +# CONFIG_APPLE_PROPERTIES is not set +# CONFIG_RESET_ATTACK_MITIGATION is not set +# CONFIG_EFI_RCI2_TABLE is not set +# CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +# CONFIG_EFI_DISABLE_RUNTIME is not set +# CONFIG_EFI_COCO_SECRET is not set +# end of EFI (Extensible Firmware Interface) Support + +# +# Qualcomm firmware drivers +# +# end of Qualcomm firmware drivers + +# +# Tegra firmware driver +# +# end of Tegra firmware driver +# end of Firmware Drivers + +# CONFIG_GNSS is not set +# CONFIG_MTD is not set +# CONFIG_OF is not set +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +# CONFIG_PARPORT is not set +CONFIG_PNP=y +CONFIG_PNP_DEBUG_MESSAGES=y + +# +# Protocols +# +CONFIG_PNPACPI=y +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +# CONFIG_BLK_DEV_FD is not set +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +# CONFIG_BLK_DEV_DRBD is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set +CONFIG_VIRTIO_BLK=y +# CONFIG_BLK_DEV_RBD is not set +# CONFIG_BLK_DEV_UBLK is not set + +# +# NVME Support +# +# CONFIG_BLK_DEV_NVME is not set +# CONFIG_NVME_FC is not set +# CONFIG_NVME_TCP is not set +# end of NVME Support + +# +# Misc devices +# +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_IBM_ASM is not set +# CONFIG_PHANTOM is not set +CONFIG_TIFM_CORE=y +CONFIG_TIFM_7XX1=y +# CONFIG_ICS932S401 is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_HP_ILO is not set +# CONFIG_APDS9802ALS is not set +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set +# CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_BH1770 is not set +# CONFIG_SENSORS_APDS990X is not set +# CONFIG_HMC6352 is not set +# CONFIG_DS1682 is not set +# CONFIG_SRAM is not set +# CONFIG_DW_XDATA_PCIE is not set +# CONFIG_PCI_ENDPOINT_TEST is not set +# CONFIG_XILINX_SDFEC is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +# CONFIG_EEPROM_AT24 is not set +# CONFIG_EEPROM_MAX6875 is not set +# CONFIG_EEPROM_93CX6 is not set +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_EEPROM_EE1004 is not set +# end of EEPROM support + +CONFIG_CB710_CORE=y +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y + +# +# Texas Instruments shared transport line discipline +# +# end of Texas Instruments shared transport line discipline + +# CONFIG_SENSORS_LIS3_I2C is not set +# CONFIG_ALTERA_STAPL is not set +# CONFIG_INTEL_MEI is not set +# CONFIG_INTEL_MEI_ME is not set +# CONFIG_INTEL_MEI_TXE is not set +# CONFIG_VMWARE_VMCI is not set +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +# CONFIG_MISC_ALCOR_PCI is not set +# CONFIG_MISC_RTSX_PCI is not set +# CONFIG_MISC_RTSX_USB is not set +# CONFIG_PVPANIC is not set +# end of Misc devices + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI_COMMON=y +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +# CONFIG_CHR_DEV_ST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_CHR_DEV_SG is not set +CONFIG_BLK_DEV_BSG=y +# CONFIG_CHR_DEV_SCH is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +# CONFIG_SCSI_SPI_ATTRS is not set +# CONFIG_SCSI_FC_ATTRS is not set +# CONFIG_SCSI_ISCSI_ATTRS is not set +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set +# CONFIG_SCSI_SRP_ATTRS is not set +# end of SCSI Transports + +CONFIG_SCSI_LOWLEVEL=y +# CONFIG_ISCSI_TCP is not set +# CONFIG_ISCSI_BOOT_SYSFS is not set +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_BE2ISCSI is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_MPT3SAS is not set +# CONFIG_SCSI_MPT2SAS is not set +# CONFIG_SCSI_MPI3MR is not set +# CONFIG_SCSI_SMARTPQI is not set +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_BUSLOGIC is not set +# CONFIG_SCSI_MYRB is not set +# CONFIG_SCSI_MYRS is not set +# CONFIG_VMWARE_PVSCSI is not set +# CONFIG_SCSI_SNIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FDOMAIN_PCI is not set +# CONFIG_SCSI_ISCI is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_WD719X is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_VIRTIO is not set +# CONFIG_SCSI_DH is not set +# end of SCSI device support + +CONFIG_ATA=y +CONFIG_PATA_TIMINGS=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATA_FORCE=y +CONFIG_ATA_ACPI=y + +# +# Controllers with non-SFF native interface +# +# CONFIG_SATA_AHCI is not set +# CONFIG_SATA_AHCI_PLATFORM is not set +# CONFIG_AHCI_DWC is not set +# CONFIG_SATA_INIC162X is not set +# CONFIG_SATA_ACARD_AHCI is not set +# CONFIG_SATA_SIL24 is not set +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +# CONFIG_PDC_ADMA is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SX4 is not set +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +# CONFIG_ATA_PIIX is not set +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set + +# +# PATA SFF controllers with BMDMA +# +# CONFIG_PATA_ALI is not set +# CONFIG_PATA_AMD is not set +# CONFIG_PATA_ARTOP is not set +# CONFIG_PATA_ATIIXP is not set +# CONFIG_PATA_ATP867X is not set +# CONFIG_PATA_CMD64X is not set +# CONFIG_PATA_CYPRESS is not set +# CONFIG_PATA_EFAR is not set +# CONFIG_PATA_HPT366 is not set +# CONFIG_PATA_HPT37X is not set +# CONFIG_PATA_HPT3X2N is not set +# CONFIG_PATA_HPT3X3 is not set +# CONFIG_PATA_IT8213 is not set +# CONFIG_PATA_IT821X is not set +# CONFIG_PATA_JMICRON is not set +# CONFIG_PATA_MARVELL is not set +# CONFIG_PATA_NETCELL is not set +# CONFIG_PATA_NINJA32 is not set +# CONFIG_PATA_NS87415 is not set +# CONFIG_PATA_OLDPIIX is not set +# CONFIG_PATA_OPTIDMA is not set +# CONFIG_PATA_PDC2027X is not set +# CONFIG_PATA_PDC_OLD is not set +# CONFIG_PATA_RADISYS is not set +# CONFIG_PATA_RDC is not set +# CONFIG_PATA_SCH is not set +# CONFIG_PATA_SERVERWORKS is not set +# CONFIG_PATA_SIL680 is not set +# CONFIG_PATA_SIS is not set +# CONFIG_PATA_TOSHIBA is not set +# CONFIG_PATA_TRIFLEX is not set +# CONFIG_PATA_VIA is not set +# CONFIG_PATA_WINBOND is not set + +# +# PIO-only SFF controllers +# +# CONFIG_PATA_CMD640_PCI is not set +# CONFIG_PATA_MPIIX is not set +# CONFIG_PATA_NS87410 is not set +# CONFIG_PATA_OPTI is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +# CONFIG_PATA_ACPI is not set +# CONFIG_ATA_GENERIC is not set +# CONFIG_PATA_LEGACY is not set +# CONFIG_MD is not set +# CONFIG_TARGET_CORE is not set +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +# end of IEEE 1394 (FireWire) support + +# CONFIG_MACINTOSH_DRIVERS is not set +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_NET_CORE=y +# CONFIG_BONDING is not set +# CONFIG_DUMMY is not set +# CONFIG_WIREGUARD is not set +# CONFIG_EQUALIZER is not set +# CONFIG_NET_FC is not set +# CONFIG_IFB is not set +# CONFIG_NET_TEAM is not set +# CONFIG_MACVLAN is not set +# CONFIG_IPVLAN is not set +# CONFIG_VXLAN is not set +# CONFIG_GENEVE is not set +# CONFIG_BAREUDP is not set +# CONFIG_GTP is not set +# CONFIG_AMT is not set +# CONFIG_MACSEC is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_TUN is not set +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=y +CONFIG_VIRTIO_NET=y +# CONFIG_NLMON is not set +# CONFIG_NETKIT is not set +# CONFIG_NET_VRF is not set +# CONFIG_ARCNET is not set +CONFIG_ETHERNET=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +# CONFIG_NET_VENDOR_ALACRITECH is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_ALTERA_TSE is not set +# CONFIG_NET_VENDOR_AMAZON is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_AQUANTIA is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ASIX is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_CX_ECAT is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_CADENCE is not set +# CONFIG_NET_VENDOR_CAVIUM is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set +# CONFIG_NET_VENDOR_DAVICOM is not set +# CONFIG_DNET is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_ENGLEDER is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_FUNGIBLE is not set +# CONFIG_NET_VENDOR_GOOGLE is not set +# CONFIG_NET_VENDOR_HUAWEI is not set +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_E100=y +CONFIG_E1000=y +CONFIG_E1000E=y +CONFIG_E1000E_HWTS=y +# CONFIG_IGB is not set +# CONFIG_IGBVF is not set +# CONFIG_IXGBE is not set +# CONFIG_I40E is not set +# CONFIG_IGC is not set +# CONFIG_JME is not set +# CONFIG_NET_VENDOR_LITEX is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MELLANOX is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MICROSEMI is not set +# CONFIG_NET_VENDOR_MICROSOFT is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_FEALNX is not set +# CONFIG_NET_VENDOR_NI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NETERION is not set +# CONFIG_NET_VENDOR_NETRONOME is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_ETHOC is not set +# CONFIG_NET_VENDOR_PACKET_ENGINES is not set +# CONFIG_NET_VENDOR_PENSANDO is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_REALTEK is not set +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SOLARFLARE is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_SYNOPSYS is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VERTEXCOM is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WANGXUN is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XILINX is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +# CONFIG_NET_SB1000 is not set +# CONFIG_PHYLIB is not set +# CONFIG_PSE_CONTROLLER is not set +# CONFIG_MDIO_DEVICE is not set + +# +# PCS device drivers +# +# end of PCS device drivers + +# CONFIG_PPP is not set +# CONFIG_SLIP is not set +CONFIG_USB_NET_DRIVERS=y +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_RTL8152 is not set +# CONFIG_USB_LAN78XX is not set +# CONFIG_USB_USBNET is not set +# CONFIG_USB_IPHETH is not set +CONFIG_WLAN=y +CONFIG_WLAN_VENDOR_ADMTEK=y +CONFIG_WLAN_VENDOR_ATH=y +# CONFIG_ATH_DEBUG is not set +# CONFIG_ATH5K_PCI is not set +CONFIG_WLAN_VENDOR_ATMEL=y +CONFIG_WLAN_VENDOR_BROADCOM=y +CONFIG_WLAN_VENDOR_CISCO=y +CONFIG_WLAN_VENDOR_INTEL=y +CONFIG_WLAN_VENDOR_INTERSIL=y +# CONFIG_HOSTAP is not set +CONFIG_WLAN_VENDOR_MARVELL=y +CONFIG_WLAN_VENDOR_MEDIATEK=y +CONFIG_WLAN_VENDOR_MICROCHIP=y +CONFIG_WLAN_VENDOR_PURELIFI=y +CONFIG_WLAN_VENDOR_RALINK=y +CONFIG_WLAN_VENDOR_REALTEK=y +CONFIG_WLAN_VENDOR_RSI=y +CONFIG_WLAN_VENDOR_SILABS=y +CONFIG_WLAN_VENDOR_ST=y +CONFIG_WLAN_VENDOR_TI=y +CONFIG_WLAN_VENDOR_ZYDAS=y +CONFIG_WLAN_VENDOR_QUANTENNA=y +# CONFIG_WAN is not set + +# +# Wireless WAN +# +# CONFIG_WWAN is not set +# end of Wireless WAN + +# CONFIG_VMXNET3 is not set +# CONFIG_FUJITSU_ES is not set +CONFIG_NET_FAILOVER=y +# CONFIG_ISDN is not set + +# +# Input device support +# +CONFIG_INPUT=y +# CONFIG_INPUT_FF_MEMLESS is not set +# CONFIG_INPUT_SPARSEKMAP is not set +# CONFIG_INPUT_MATRIXKMAP is not set +CONFIG_INPUT_VIVALDIFMAP=y + +# +# Userland interfaces +# +# CONFIG_INPUT_MOUSEDEV is not set +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_EVDEV is not set +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_QT1050 is not set +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_DLINK_DIR685 is not set +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_CYPRESS_SF is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_BYD=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_LIFEBOOK=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +# CONFIG_MOUSE_PS2_ELANTECH is not set +# CONFIG_MOUSE_PS2_SENTELIC is not set +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +CONFIG_MOUSE_PS2_FOCALTECH=y +# CONFIG_MOUSE_PS2_VMMOUSE is not set +CONFIG_MOUSE_PS2_SMBUS=y +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_APPLETOUCH is not set +# CONFIG_MOUSE_BCM5974 is not set +# CONFIG_MOUSE_CYAPA is not set +# CONFIG_MOUSE_ELAN_I2C is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_SYNAPTICS_I2C is not set +# CONFIG_MOUSE_SYNAPTICS_USB is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set +# CONFIG_RMI4_CORE is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y +CONFIG_SERIO_I8042=y +CONFIG_SERIO_SERPORT=y +# CONFIG_SERIO_CT82C710 is not set +# CONFIG_SERIO_PCIPS2 is not set +CONFIG_SERIO_LIBPS2=y +# CONFIG_SERIO_RAW is not set +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_USERIO is not set +# CONFIG_GAMEPORT is not set +# end of Hardware I/O ports +# end of Input device support + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=256 +CONFIG_LEGACY_TIOCSTI=y +CONFIG_LDISC_AUTOLOAD=y + +# +# Serial drivers +# +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y +CONFIG_SERIAL_8250_PNP=y +# CONFIG_SERIAL_8250_16550A_VARIANTS is not set +# CONFIG_SERIAL_8250_FINTEK is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_PCILIB=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_EXAR=y +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +# CONFIG_SERIAL_8250_EXTENDED is not set +# CONFIG_SERIAL_8250_PCI1XXXX is not set +CONFIG_SERIAL_8250_DWLIB=y +# CONFIG_SERIAL_8250_DW is not set +# CONFIG_SERIAL_8250_RT288X is not set +CONFIG_SERIAL_8250_LPSS=y +CONFIG_SERIAL_8250_MID=y +CONFIG_SERIAL_8250_PERICOM=y + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +# CONFIG_SERIAL_LANTIQ is not set +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_FSL_LINFLEXUART is not set +# end of Serial drivers + +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_N_GSM is not set +# CONFIG_NOZOMI is not set +# CONFIG_NULL_TTY is not set +CONFIG_HVC_DRIVER=y +# CONFIG_SERIAL_DEV_BUS is not set +# CONFIG_TTY_PRINTK is not set +CONFIG_VIRTIO_CONSOLE=y +# CONFIG_IPMI_HANDLER is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HW_RANDOM_INTEL=y +CONFIG_HW_RANDOM_AMD=y +# CONFIG_HW_RANDOM_BA431 is not set +CONFIG_HW_RANDOM_VIA=y +CONFIG_HW_RANDOM_VIRTIO=y +# CONFIG_HW_RANDOM_XIPHERA is not set +# CONFIG_APPLICOM is not set +# CONFIG_MWAVE is not set +# CONFIG_DEVMEM is not set +# CONFIG_NVRAM is not set +# CONFIG_DEVPORT is not set +# CONFIG_HPET is not set +# CONFIG_HANGCHECK_TIMER is not set +CONFIG_TCG_TPM=y +CONFIG_HW_RANDOM_TPM=y +CONFIG_TCG_TIS_CORE=y +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_I2C=y +CONFIG_TCG_TIS_I2C_CR50=y +CONFIG_TCG_TIS_I2C_ATMEL=y +CONFIG_TCG_TIS_I2C_INFINEON=y +CONFIG_TCG_TIS_I2C_NUVOTON=y +CONFIG_TCG_NSC=y +CONFIG_TCG_ATMEL=y +CONFIG_TCG_INFINEON=y +CONFIG_TCG_CRB=y +# CONFIG_TCG_VTPM_PROXY is not set +CONFIG_TCG_TIS_ST33ZP24=y +CONFIG_TCG_TIS_ST33ZP24_I2C=y +# CONFIG_TELCLOCK is not set +# CONFIG_XILLYBUS is not set +# CONFIG_XILLYUSB is not set +# end of Character devices + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_ACPI_I2C_OPREGION=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +# CONFIG_I2C_CHARDEV is not set +CONFIG_I2C_MUX=y + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_MUX_LTC4306 is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_REG is not set +# CONFIG_I2C_MUX_MLXCPLD is not set +# end of Multiplexer I2C Chip support + +CONFIG_I2C_HELPER_AUTO=y + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_AMD_MP2 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_ISMT is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_NVIDIA_GPU is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set + +# +# ACPI drivers +# +# CONFIG_I2C_SCMI is not set + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_SIMTEC is not set +# CONFIG_I2C_XILINX is not set + +# +# External I2C/SMBus adapter drivers +# +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_CP2615 is not set +# CONFIG_I2C_PCI1XXXX is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +# CONFIG_I2C_TAOS_EVM is not set +# CONFIG_I2C_TINY_USB is not set + +# +# Other I2C/SMBus bus drivers +# +# CONFIG_I2C_MLXCPLD is not set +# CONFIG_I2C_VIRTIO is not set +# end of I2C Hardware Bus support + +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# end of I2C support + +# CONFIG_I3C is not set +# CONFIG_SPI is not set +# CONFIG_SPMI is not set +# CONFIG_HSI is not set +# CONFIG_PPS is not set + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK_OPTIONAL=y + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +# end of PTP clock support + +# CONFIG_PINCTRL is not set +# CONFIG_GPIOLIB is not set +# CONFIG_W1 is not set +# CONFIG_POWER_RESET is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_IP5XXX_POWER is not set +# CONFIG_TEST_POWER is not set +# CONFIG_CHARGER_ADP5061 is not set +# CONFIG_BATTERY_CW2015 is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_SAMSUNG_SDI is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_CHARGER_SBS is not set +# CONFIG_BATTERY_BQ27XXX is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_LTC4162L is not set +# CONFIG_CHARGER_MAX77976 is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_GOLDFISH is not set +# CONFIG_BATTERY_RT5033 is not set +# CONFIG_CHARGER_BD99954 is not set +# CONFIG_BATTERY_UG3105 is not set +# CONFIG_FUEL_GAUGE_MM8013 is not set +# CONFIG_HWMON is not set +CONFIG_THERMAL=y +# CONFIG_THERMAL_NETLINK is not set +# CONFIG_THERMAL_STATISTICS is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +# CONFIG_THERMAL_GOV_FAIR_SHARE is not set +CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set +CONFIG_THERMAL_GOV_USER_SPACE=y +# CONFIG_THERMAL_EMULATION is not set + +# +# Intel thermal drivers +# +# CONFIG_INTEL_POWERCLAMP is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_INTEL_TCC=y +CONFIG_X86_PKG_TEMP_THERMAL=y +# CONFIG_INTEL_SOC_DTS_THERMAL is not set + +# +# ACPI INT340X thermal drivers +# +# CONFIG_INT340X_THERMAL is not set +# end of ACPI INT340X thermal drivers + +# CONFIG_INTEL_PCH_THERMAL is not set +# CONFIG_INTEL_TCC_COOLING is not set +# CONFIG_INTEL_HFI_THERMAL is not set +# end of Intel thermal drivers + +# CONFIG_WATCHDOG is not set +CONFIG_SSB_POSSIBLE=y +# CONFIG_SSB is not set +CONFIG_BCMA_POSSIBLE=y +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_SMPRO is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_BD9571MWV is not set +# CONFIG_MFD_AXP20X_I2C is not set +# CONFIG_MFD_CS42L43_I2C is not set +# CONFIG_MFD_MADERA is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_MP2629 is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +# CONFIG_MFD_INTEL_LPSS_ACPI is not set +# CONFIG_MFD_INTEL_LPSS_PCI is not set +# CONFIG_MFD_IQS62X is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77541 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX77843 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_MFD_MT6360 is not set +# CONFIG_MFD_MT6370 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_SY7636A is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RT4831 is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RT5120 is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_SYSCON is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_TI_LMU is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65086 is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TI_LP873X is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS6594_I2C is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TQMX86 is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +# CONFIG_MFD_ATC260X_I2C is not set +# end of Multifunction device drivers + +# CONFIG_REGULATOR is not set +# CONFIG_RC_CORE is not set + +# +# CEC support +# +# CONFIG_MEDIA_CEC_SUPPORT is not set +# end of CEC support + +CONFIG_MEDIA_SUPPORT=y +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y + +# +# Media device types +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +# CONFIG_MEDIA_PLATFORM_SUPPORT is not set +# CONFIG_MEDIA_TEST_SUPPORT is not set +# end of Media device types + +CONFIG_VIDEO_DEV=y +CONFIG_MEDIA_CONTROLLER=y + +# +# Video4Linux options +# +CONFIG_VIDEO_V4L2_I2C=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_V4L2_FWNODE=y +CONFIG_V4L2_ASYNC=y +# end of Video4Linux options + +# +# Media controller options +# +# end of Media controller options + +# +# Media drivers +# + +# +# Drivers filtered as selected at 'Filter media drivers' +# + +# +# Media drivers +# +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +# CONFIG_USB_GSPCA is not set +# CONFIG_USB_PWC is not set +# CONFIG_USB_S2255 is not set +CONFIG_USB_VIDEO_CLASS=y +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y + +# +# Webcam, TV (analog/digital) USB devices +# +# CONFIG_VIDEO_EM28XX is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_UVC_COMMON=y +CONFIG_VIDEOBUF2_CORE=y +CONFIG_VIDEOBUF2_V4L2=y +CONFIG_VIDEOBUF2_MEMOPS=y +CONFIG_VIDEOBUF2_VMALLOC=y +# end of Media drivers + +# +# Media ancillary drivers +# +CONFIG_VIDEO_CAMERA_SENSOR=y +# CONFIG_VIDEO_AR0521 is not set +# CONFIG_VIDEO_HI556 is not set +# CONFIG_VIDEO_HI846 is not set +# CONFIG_VIDEO_HI847 is not set +# CONFIG_VIDEO_IMX208 is not set +# CONFIG_VIDEO_IMX219 is not set +# CONFIG_VIDEO_IMX258 is not set +# CONFIG_VIDEO_IMX274 is not set +# CONFIG_VIDEO_IMX290 is not set +# CONFIG_VIDEO_IMX296 is not set +# CONFIG_VIDEO_IMX319 is not set +# CONFIG_VIDEO_IMX355 is not set +# CONFIG_VIDEO_MT9M001 is not set +# CONFIG_VIDEO_MT9M111 is not set +# CONFIG_VIDEO_MT9M114 is not set +# CONFIG_VIDEO_MT9P031 is not set +# CONFIG_VIDEO_MT9T112 is not set +# CONFIG_VIDEO_MT9V011 is not set +# CONFIG_VIDEO_MT9V032 is not set +# CONFIG_VIDEO_MT9V111 is not set +# CONFIG_VIDEO_OG01A1B is not set +# CONFIG_VIDEO_OV01A10 is not set +# CONFIG_VIDEO_OV02A10 is not set +# CONFIG_VIDEO_OV08D10 is not set +# CONFIG_VIDEO_OV08X40 is not set +# CONFIG_VIDEO_OV13858 is not set +# CONFIG_VIDEO_OV13B10 is not set +# CONFIG_VIDEO_OV2640 is not set +# CONFIG_VIDEO_OV2680 is not set +# CONFIG_VIDEO_OV2685 is not set +# CONFIG_VIDEO_OV2740 is not set +# CONFIG_VIDEO_OV5647 is not set +# CONFIG_VIDEO_OV5670 is not set +# CONFIG_VIDEO_OV5675 is not set +# CONFIG_VIDEO_OV5693 is not set +# CONFIG_VIDEO_OV5695 is not set +# CONFIG_VIDEO_OV6650 is not set +# CONFIG_VIDEO_OV7251 is not set +# CONFIG_VIDEO_OV7640 is not set +# CONFIG_VIDEO_OV7670 is not set +# CONFIG_VIDEO_OV772X is not set +# CONFIG_VIDEO_OV7740 is not set +# CONFIG_VIDEO_OV8856 is not set +# CONFIG_VIDEO_OV9640 is not set +# CONFIG_VIDEO_OV9650 is not set +# CONFIG_VIDEO_OV9734 is not set +# CONFIG_VIDEO_RDACM20 is not set +# CONFIG_VIDEO_RDACM21 is not set +# CONFIG_VIDEO_RJ54N1 is not set +# CONFIG_VIDEO_S5K5BAF is not set +# CONFIG_VIDEO_S5K6A3 is not set +# CONFIG_VIDEO_ET8EK8 is not set + +# +# Lens drivers +# +# CONFIG_VIDEO_AK7375 is not set +# CONFIG_VIDEO_DW9714 is not set +# CONFIG_VIDEO_DW9719 is not set +# CONFIG_VIDEO_DW9768 is not set +# CONFIG_VIDEO_DW9807_VCM is not set +# end of Lens drivers + +# +# Flash devices +# +# CONFIG_VIDEO_ADP1653 is not set +# CONFIG_VIDEO_LM3560 is not set +# CONFIG_VIDEO_LM3646 is not set +# end of Flash devices + +# +# Audio decoders, processors and mixers +# +# CONFIG_VIDEO_CS3308 is not set +# CONFIG_VIDEO_CS5345 is not set +# CONFIG_VIDEO_CS53L32A is not set +# CONFIG_VIDEO_MSP3400 is not set +# CONFIG_VIDEO_SONY_BTF_MPX is not set +# CONFIG_VIDEO_TDA7432 is not set +# CONFIG_VIDEO_TDA9840 is not set +# CONFIG_VIDEO_TEA6415C is not set +# CONFIG_VIDEO_TEA6420 is not set +# CONFIG_VIDEO_TLV320AIC23B is not set +# CONFIG_VIDEO_TVAUDIO is not set +# CONFIG_VIDEO_UDA1342 is not set +# CONFIG_VIDEO_VP27SMPX is not set +# CONFIG_VIDEO_WM8739 is not set +# CONFIG_VIDEO_WM8775 is not set +# end of Audio decoders, processors and mixers + +# +# RDS decoders +# +# CONFIG_VIDEO_SAA6588 is not set +# end of RDS decoders + +# +# Video decoders +# +# CONFIG_VIDEO_ADV7183 is not set +# CONFIG_VIDEO_ADV7842 is not set +# CONFIG_VIDEO_BT819 is not set +# CONFIG_VIDEO_BT856 is not set +# CONFIG_VIDEO_BT866 is not set +# CONFIG_VIDEO_KS0127 is not set +# CONFIG_VIDEO_ML86V7667 is not set +# CONFIG_VIDEO_SAA7110 is not set +# CONFIG_VIDEO_SAA711X is not set +# CONFIG_VIDEO_TC358743 is not set +# CONFIG_VIDEO_TVP514X is not set +# CONFIG_VIDEO_TVP5150 is not set +# CONFIG_VIDEO_TVP7002 is not set +# CONFIG_VIDEO_TW2804 is not set +# CONFIG_VIDEO_TW9903 is not set +# CONFIG_VIDEO_TW9906 is not set +# CONFIG_VIDEO_TW9910 is not set +# CONFIG_VIDEO_VPX3220 is not set + +# +# Video and audio decoders +# +# CONFIG_VIDEO_SAA717X is not set +# CONFIG_VIDEO_CX25840 is not set +# end of Video decoders + +# +# Video encoders +# +# CONFIG_VIDEO_ADV7170 is not set +# CONFIG_VIDEO_ADV7175 is not set +# CONFIG_VIDEO_ADV7343 is not set +# CONFIG_VIDEO_ADV7393 is not set +# CONFIG_VIDEO_ADV7511 is not set +# CONFIG_VIDEO_AK881X is not set +# CONFIG_VIDEO_SAA7127 is not set +# CONFIG_VIDEO_SAA7185 is not set +# CONFIG_VIDEO_THS8200 is not set +# end of Video encoders + +# +# Video improvement chips +# +# CONFIG_VIDEO_UPD64031A is not set +# CONFIG_VIDEO_UPD64083 is not set +# end of Video improvement chips + +# +# Audio/Video compression chips +# +# CONFIG_VIDEO_SAA6752HS is not set +# end of Audio/Video compression chips + +# +# SDR tuner chips +# +# end of SDR tuner chips + +# +# Miscellaneous helper chips +# +# CONFIG_VIDEO_I2C is not set +# CONFIG_VIDEO_M52790 is not set +# CONFIG_VIDEO_ST_MIPID02 is not set +# CONFIG_VIDEO_THS7303 is not set +# end of Miscellaneous helper chips + +# +# Video serializers and deserializers +# +# end of Video serializers and deserializers +# end of Media ancillary drivers + +# +# Graphics support +# +CONFIG_APERTURE_HELPERS=y +CONFIG_VIDEO_CMDLINE=y +# CONFIG_AUXDISPLAY is not set +# CONFIG_AGP is not set +# CONFIG_VGA_SWITCHEROO is not set +# CONFIG_DRM is not set +# CONFIG_DRM_DEBUG_MODESET_LOCK is not set +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y + +# +# Frame buffer Devices +# +CONFIG_FB=y +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ARC is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_VGA16 is not set +# CONFIG_FB_VESA is not set +CONFIG_FB_EFI=y +# CONFIG_FB_N411 is not set +# CONFIG_FB_HGA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_LE80578 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_SMSCUFX is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SM712 is not set +CONFIG_FB_CORE=y +CONFIG_FB_NOTIFY=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_DEVICE=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_IOMEM_FOPS=y +CONFIG_FB_IOMEM_HELPERS=y +# CONFIG_FB_MODE_HELPERS is not set +# CONFIG_FB_TILEBLITTING is not set +# end of Frame buffer Devices + +# +# Backlight & LCD device support +# +# CONFIG_LCD_CLASS_DEVICE is not set +# CONFIG_BACKLIGHT_CLASS_DEVICE is not set +# end of Backlight & LCD device support + +# +# Console display driver support +# +CONFIG_VGA_CONSOLE=y +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set +# end of Console display driver support + +# CONFIG_LOGO is not set +# end of Graphics support + +# CONFIG_SOUND is not set +CONFIG_HID_SUPPORT=y +CONFIG_HID=y +# CONFIG_HID_BATTERY_STRENGTH is not set +CONFIG_HIDRAW=y +# CONFIG_UHID is not set +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +# CONFIG_HID_A4TECH is not set +# CONFIG_HID_ACCUTOUCH is not set +# CONFIG_HID_ACRUX is not set +# CONFIG_HID_APPLEIR is not set +# CONFIG_HID_AUREAL is not set +# CONFIG_HID_BELKIN is not set +# CONFIG_HID_BETOP_FF is not set +# CONFIG_HID_CHERRY is not set +# CONFIG_HID_CHICONY is not set +# CONFIG_HID_COUGAR is not set +# CONFIG_HID_MACALLY is not set +# CONFIG_HID_CMEDIA is not set +# CONFIG_HID_CREATIVE_SB0540 is not set +# CONFIG_HID_CYPRESS is not set +# CONFIG_HID_DRAGONRISE is not set +# CONFIG_HID_EMS_FF is not set +# CONFIG_HID_ELECOM is not set +# CONFIG_HID_ELO is not set +# CONFIG_HID_EVISION is not set +# CONFIG_HID_EZKEY is not set +# CONFIG_HID_FT260 is not set +# CONFIG_HID_GEMBIRD is not set +# CONFIG_HID_GFRM is not set +# CONFIG_HID_GLORIOUS is not set +# CONFIG_HID_HOLTEK is not set +# CONFIG_HID_GOOGLE_STADIA_FF is not set +# CONFIG_HID_VIVALDI is not set +# CONFIG_HID_KEYTOUCH is not set +# CONFIG_HID_KYE is not set +# CONFIG_HID_UCLOGIC is not set +# CONFIG_HID_WALTOP is not set +# CONFIG_HID_VIEWSONIC is not set +# CONFIG_HID_VRC2 is not set +# CONFIG_HID_XIAOMI is not set +# CONFIG_HID_GYRATION is not set +# CONFIG_HID_ICADE is not set +# CONFIG_HID_ITE is not set +# CONFIG_HID_JABRA is not set +# CONFIG_HID_TWINHAN is not set +# CONFIG_HID_KENSINGTON is not set +# CONFIG_HID_LCPOWER is not set +# CONFIG_HID_LENOVO is not set +# CONFIG_HID_LETSKETCH is not set +# CONFIG_HID_MAGICMOUSE is not set +# CONFIG_HID_MALTRON is not set +# CONFIG_HID_MAYFLASH is not set +# CONFIG_HID_MEGAWORLD_FF is not set +# CONFIG_HID_REDRAGON is not set +# CONFIG_HID_MICROSOFT is not set +# CONFIG_HID_MONTEREY is not set +# CONFIG_HID_MULTITOUCH is not set +# CONFIG_HID_NTI is not set +# CONFIG_HID_NTRIG is not set +# CONFIG_HID_ORTEK is not set +# CONFIG_HID_PANTHERLORD is not set +# CONFIG_HID_PENMOUNT is not set +# CONFIG_HID_PETALYNX is not set +# CONFIG_HID_PICOLCD is not set +# CONFIG_HID_PLANTRONICS is not set +# CONFIG_HID_PXRC is not set +# CONFIG_HID_RAZER is not set +# CONFIG_HID_PRIMAX is not set +# CONFIG_HID_RETRODE is not set +# CONFIG_HID_ROCCAT is not set +# CONFIG_HID_SAITEK is not set +# CONFIG_HID_SAMSUNG is not set +# CONFIG_HID_SEMITEK is not set +# CONFIG_HID_SIGMAMICRO is not set +# CONFIG_HID_SPEEDLINK is not set +# CONFIG_HID_STEAM is not set +# CONFIG_HID_STEELSERIES is not set +# CONFIG_HID_SUNPLUS is not set +# CONFIG_HID_RMI is not set +# CONFIG_HID_GREENASIA is not set +# CONFIG_HID_SMARTJOYPLUS is not set +# CONFIG_HID_TIVO is not set +# CONFIG_HID_TOPSEED is not set +# CONFIG_HID_TOPRE is not set +# CONFIG_HID_THRUSTMASTER is not set +# CONFIG_HID_UDRAW_PS3 is not set +# CONFIG_HID_WACOM is not set +# CONFIG_HID_XINMO is not set +# CONFIG_HID_ZEROPLUS is not set +# CONFIG_HID_ZYDACRON is not set +# CONFIG_HID_SENSOR_HUB is not set +# CONFIG_HID_ALPS is not set +# CONFIG_HID_MCP2221 is not set +# end of Special HID drivers + +# +# HID-BPF support +# +# end of HID-BPF support + +# +# USB HID support +# +CONFIG_USB_HID=y +# CONFIG_HID_PID is not set +CONFIG_USB_HIDDEV=y +# end of USB HID support + +CONFIG_I2C_HID=y +# CONFIG_I2C_HID_ACPI is not set +# CONFIG_I2C_HID_OF is not set + +# +# Intel ISH HID support +# +# CONFIG_INTEL_ISH_HID is not set +# end of Intel ISH HID support + +# +# AMD SFH HID Support +# +# CONFIG_AMD_SFH_HID is not set +# end of AMD SFH HID Support + +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +# CONFIG_USB_ULPI_BUS is not set +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +CONFIG_USB_PCI=y +CONFIG_USB_PCI_AMD=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +# CONFIG_USB_FEW_INIT_RETRIES is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG_PRODUCTLIST is not set +# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set +CONFIG_USB_AUTOSUSPEND_DELAY=2 +# CONFIG_USB_MON is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +# CONFIG_USB_XHCI_DBGCAP is not set +CONFIG_USB_XHCI_PCI=y +# CONFIG_USB_XHCI_PCI_RENESAS is not set +# CONFIG_USB_XHCI_PLATFORM is not set +CONFIG_USB_EHCI_HCD=y +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=y +# CONFIG_USB_EHCI_FSL is not set +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_PCI=y +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +CONFIG_USB_UHCI_HCD=y +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +# CONFIG_USB_ACM is not set +CONFIG_USB_PRINTER=y +# CONFIG_USB_WDM is not set +# CONFIG_USB_TMC is not set + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=y +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_REALTEK is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set +# CONFIG_USB_STORAGE_ENE_UB6250 is not set +# CONFIG_USB_UAS is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USBIP_CORE is not set + +# +# USB dual-mode controller drivers +# +# CONFIG_USB_CDNS_SUPPORT is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_ISP1760 is not set + +# +# USB port drivers +# +# CONFIG_USB_SERIAL is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_SEVSEG is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_APPLE_MFI_FASTCHARGE is not set +# CONFIG_USB_LJCA is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_TEST is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +# CONFIG_USB_ISIGHTFW is not set +# CONFIG_USB_YUREX is not set +# CONFIG_USB_EZUSB_FX2 is not set +# CONFIG_USB_HUB_USB251XB is not set +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_HSIC_USB4604 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +# CONFIG_USB_CHAOSKEY is not set + +# +# USB Physical Layer drivers +# +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_ISP1301 is not set +# end of USB Physical Layer drivers + +# CONFIG_USB_GADGET is not set +CONFIG_TYPEC=y +# CONFIG_TYPEC_TCPM is not set +# CONFIG_TYPEC_UCSI is not set +# CONFIG_TYPEC_TPS6598X is not set +# CONFIG_TYPEC_RT1719 is not set +# CONFIG_TYPEC_STUSB160X is not set +# CONFIG_TYPEC_WUSB3801 is not set + +# +# USB Type-C Multiplexer/DeMultiplexer Switch support +# +# CONFIG_TYPEC_MUX_FSA4480 is not set +# CONFIG_TYPEC_MUX_GPIO_SBU is not set +# CONFIG_TYPEC_MUX_PI3USB30532 is not set +# CONFIG_TYPEC_MUX_NB7VPQ904M is not set +# CONFIG_TYPEC_MUX_PTN36502 is not set +# end of USB Type-C Multiplexer/DeMultiplexer Switch support + +# +# USB Type-C Alternate Mode drivers +# +# end of USB Type-C Alternate Mode drivers + +# CONFIG_USB_ROLE_SWITCH is not set +CONFIG_MMC=y +CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK_MINORS=8 +# CONFIG_SDIO_UART is not set +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_PCI=y +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=y +# CONFIG_MMC_SDHCI_PLTFM is not set +CONFIG_MMC_WBSD=y +CONFIG_MMC_TIFM_SD=y +CONFIG_MMC_CB710=y +CONFIG_MMC_VIA_SDMMC=y +CONFIG_MMC_VUB300=y +CONFIG_MMC_USHC=y +# CONFIG_MMC_USDHI6ROL0 is not set +CONFIG_MMC_CQHCI=y +# CONFIG_MMC_HSQ is not set +CONFIG_MMC_TOSHIBA_PCI=y +# CONFIG_SCSI_UFSHCD is not set +# CONFIG_MEMSTICK is not set +# CONFIG_NEW_LEDS is not set +# CONFIG_ACCESSIBILITY is not set +# CONFIG_INFINIBAND is not set +CONFIG_EDAC_ATOMIC_SCRUB=y +CONFIG_EDAC_SUPPORT=y +CONFIG_RTC_LIB=y +CONFIG_RTC_MC146818_LIB=y +# CONFIG_RTC_CLASS is not set +# CONFIG_DMADEVICES is not set + +# +# DMABUF options +# +# CONFIG_SYNC_FILE is not set +# CONFIG_UDMABUF is not set +# CONFIG_DMABUF_MOVE_NOTIFY is not set +# CONFIG_DMABUF_DEBUG is not set +# CONFIG_DMABUF_SELFTESTS is not set +# CONFIG_DMABUF_HEAPS is not set +# CONFIG_DMABUF_SYSFS_STATS is not set +# end of DMABUF options + +# CONFIG_UIO is not set +# CONFIG_VFIO is not set +# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRTIO_ANCHOR=y +CONFIG_VIRTIO=y +CONFIG_VIRTIO_PCI_LIB=y +CONFIG_VIRTIO_PCI_LIB_LEGACY=y +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +# CONFIG_VIRTIO_BALLOON is not set +# CONFIG_VIRTIO_MEM is not set +# CONFIG_VIRTIO_INPUT is not set +# CONFIG_VIRTIO_MMIO is not set +# CONFIG_VDPA is not set +# CONFIG_VHOST_MENU is not set + +# +# Microsoft Hyper-V guest support +# +# CONFIG_HYPERV is not set +# end of Microsoft Hyper-V guest support + +# CONFIG_GREYBUS is not set +# CONFIG_COMEDI is not set +# CONFIG_STAGING is not set +# CONFIG_CHROME_PLATFORMS is not set +# CONFIG_MELLANOX_PLATFORM is not set +# CONFIG_SURFACE_PLATFORMS is not set +# CONFIG_X86_PLATFORM_DEVICES is not set +# CONFIG_COMMON_CLK is not set +# CONFIG_HWSPINLOCK is not set + +# +# Clock Source drivers +# +CONFIG_CLKEVT_I8253=y +CONFIG_CLKBLD_I8253=y +# end of Clock Source drivers + +CONFIG_MAILBOX=y +CONFIG_PCC=y +# CONFIG_ALTERA_MBOX is not set +# CONFIG_IOMMU_SUPPORT is not set + +# +# Remoteproc drivers +# +# CONFIG_REMOTEPROC is not set +# end of Remoteproc drivers + +# +# Rpmsg drivers +# +# CONFIG_RPMSG_QCOM_GLINK_RPM is not set +# CONFIG_RPMSG_VIRTIO is not set +# end of Rpmsg drivers + +# CONFIG_SOUNDWIRE is not set + +# +# SOC (System On Chip) specific Drivers +# + +# +# Amlogic SoC drivers +# +# end of Amlogic SoC drivers + +# +# Broadcom SoC drivers +# +# end of Broadcom SoC drivers + +# +# NXP/Freescale QorIQ SoC drivers +# +# end of NXP/Freescale QorIQ SoC drivers + +# +# fujitsu SoC drivers +# +# end of fujitsu SoC drivers + +# +# i.MX SoC drivers +# +# end of i.MX SoC drivers + +# +# Enable LiteX SoC Builder specific drivers +# +# end of Enable LiteX SoC Builder specific drivers + +# CONFIG_WPCM450_SOC is not set + +# +# Qualcomm SoC drivers +# +# end of Qualcomm SoC drivers + +# CONFIG_SOC_TI is not set + +# +# Xilinx SoC drivers +# +# end of Xilinx SoC drivers +# end of SOC (System On Chip) specific Drivers + +# +# PM Domains +# + +# +# Amlogic PM Domains +# +# end of Amlogic PM Domains + +# +# Broadcom PM Domains +# +# end of Broadcom PM Domains + +# +# i.MX PM Domains +# +# end of i.MX PM Domains + +# +# Qualcomm PM Domains +# +# end of Qualcomm PM Domains +# end of PM Domains + +# CONFIG_PM_DEVFREQ is not set +# CONFIG_EXTCON is not set +# CONFIG_MEMORY is not set +# CONFIG_IIO is not set +# CONFIG_NTB is not set +# CONFIG_PWM is not set + +# +# IRQ chip support +# +# end of IRQ chip support + +# CONFIG_IPACK_BUS is not set +# CONFIG_RESET_CONTROLLER is not set + +# +# PHY Subsystem +# +# CONFIG_GENERIC_PHY is not set +# CONFIG_USB_LGM_PHY is not set +# CONFIG_PHY_CAN_TRANSCEIVER is not set + +# +# PHY drivers for Broadcom platforms +# +# CONFIG_BCM_KONA_USB2_PHY is not set +# end of PHY drivers for Broadcom platforms + +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_INTEL_LGM_EMMC is not set +# end of PHY Subsystem + +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +# end of Performance monitor support + +# CONFIG_RAS is not set +# CONFIG_USB4 is not set + +# +# Android +# +# CONFIG_ANDROID_BINDER_IPC is not set +# end of Android + +# CONFIG_LIBNVDIMM is not set +# CONFIG_DAX is not set +# CONFIG_NVMEM is not set + +# +# HW tracing support +# +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set +# end of HW tracing support + +# CONFIG_FPGA is not set +# CONFIG_TEE is not set +# CONFIG_SIOX is not set +# CONFIG_SLIMBUS is not set +# CONFIG_INTERCONNECT is not set +# CONFIG_COUNTER is not set +# CONFIG_PECI is not set +# CONFIG_HTE is not set +# end of Device Drivers + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_VALIDATE_FS_PARSER is not set +CONFIG_FS_IOMAP=y +CONFIG_BUFFER_HEAD=y +CONFIG_LEGACY_DIRECT_IO=y +CONFIG_EXT2_FS=y +# CONFIG_EXT2_FS_XATTR is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set +# CONFIG_XFS_FS is not set +# CONFIG_GFS2_FS is not set +CONFIG_BTRFS_FS=y +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_FS_REF_VERIFY is not set +# CONFIG_NILFS2_FS is not set +# CONFIG_F2FS_FS is not set +# CONFIG_BCACHEFS_FS is not set +# CONFIG_FS_DAX is not set +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +# CONFIG_EXPORTFS_BLOCK_OPS is not set +CONFIG_FILE_LOCKING=y +# CONFIG_FS_ENCRYPTION is not set +# CONFIG_FS_VERITY is not set +CONFIG_FSNOTIFY=y +# CONFIG_DNOTIFY is not set +CONFIG_INOTIFY_USER=y +# CONFIG_FANOTIFY is not set +CONFIG_QUOTA=y +# CONFIG_QUOTA_NETLINK_INTERFACE is not set +# CONFIG_QUOTA_DEBUG is not set +# CONFIG_QFMT_V1 is not set +# CONFIG_QFMT_V2 is not set +CONFIG_QUOTACTL=y +# CONFIG_AUTOFS_FS is not set +CONFIG_FUSE_FS=y +# CONFIG_CUSE is not set +CONFIG_VIRTIO_FS=y +CONFIG_OVERLAY_FS=y +# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y +# CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set +# CONFIG_OVERLAY_FS_DEBUG is not set + +# +# Caches +# +# CONFIG_FSCACHE is not set +# end of Caches + +# +# CD-ROM/DVD Filesystems +# +# CONFIG_ISO9660_FS is not set +# CONFIG_UDF_FS is not set +# end of CD-ROM/DVD Filesystems + +# +# DOS/FAT/EXFAT/NT Filesystems +# +CONFIG_FAT_FS=y +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_EXFAT_FS=y +CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8" +# CONFIG_NTFS_FS is not set +# CONFIG_NTFS3_FS is not set +# end of DOS/FAT/EXFAT/NT Filesystems + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_CHILDREN=y +CONFIG_PROC_PID_ARCH_STATUS=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +# CONFIG_TMPFS_INODE64 is not set +CONFIG_TMPFS_QUOTA=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP=y +# CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON is not set +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +# CONFIG_CONFIGFS_FS is not set +CONFIG_EFIVAR_FS=y +# end of Pseudo filesystems + +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ORANGEFS_FS is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_ECRYPT_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_CRAMFS is not set +# CONFIG_SQUASHFS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_PSTORE is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +# CONFIG_EROFS_FS is not set +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="iso8859-1" +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=y +CONFIG_NLS_CODEPAGE_775=y +CONFIG_NLS_CODEPAGE_850=y +CONFIG_NLS_CODEPAGE_852=y +CONFIG_NLS_CODEPAGE_855=y +CONFIG_NLS_CODEPAGE_857=y +CONFIG_NLS_CODEPAGE_860=y +CONFIG_NLS_CODEPAGE_861=y +CONFIG_NLS_CODEPAGE_862=y +CONFIG_NLS_CODEPAGE_863=y +CONFIG_NLS_CODEPAGE_864=y +CONFIG_NLS_CODEPAGE_865=y +CONFIG_NLS_CODEPAGE_866=y +CONFIG_NLS_CODEPAGE_869=y +CONFIG_NLS_CODEPAGE_936=y +CONFIG_NLS_CODEPAGE_950=y +CONFIG_NLS_CODEPAGE_932=y +CONFIG_NLS_CODEPAGE_949=y +CONFIG_NLS_CODEPAGE_874=y +CONFIG_NLS_ISO8859_8=y +CONFIG_NLS_CODEPAGE_1250=y +CONFIG_NLS_CODEPAGE_1251=y +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_2=y +CONFIG_NLS_ISO8859_3=y +CONFIG_NLS_ISO8859_4=y +CONFIG_NLS_ISO8859_5=y +CONFIG_NLS_ISO8859_6=y +CONFIG_NLS_ISO8859_7=y +CONFIG_NLS_ISO8859_9=y +CONFIG_NLS_ISO8859_13=y +CONFIG_NLS_ISO8859_14=y +CONFIG_NLS_ISO8859_15=y +CONFIG_NLS_KOI8_R=y +CONFIG_NLS_KOI8_U=y +# CONFIG_NLS_MAC_ROMAN is not set +# CONFIG_NLS_MAC_CELTIC is not set +# CONFIG_NLS_MAC_CENTEURO is not set +# CONFIG_NLS_MAC_CROATIAN is not set +# CONFIG_NLS_MAC_CYRILLIC is not set +# CONFIG_NLS_MAC_GAELIC is not set +# CONFIG_NLS_MAC_GREEK is not set +# CONFIG_NLS_MAC_ICELAND is not set +# CONFIG_NLS_MAC_INUIT is not set +# CONFIG_NLS_MAC_ROMANIAN is not set +# CONFIG_NLS_MAC_TURKISH is not set +CONFIG_NLS_UTF8=y +# CONFIG_UNICODE is not set +# end of File systems + +# +# Security options +# +CONFIG_KEYS=y +# CONFIG_KEYS_REQUEST_CACHE is not set +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_TRUSTED_KEYS is not set +CONFIG_ENCRYPTED_KEYS=y +# CONFIG_USER_DECRYPTED_DATA is not set +# CONFIG_KEY_DH_OPERATIONS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_PATH=y +CONFIG_HARDENED_USERCOPY=y +CONFIG_FORTIFY_SOURCE=y +CONFIG_STATIC_USERMODEHELPER=y +CONFIG_STATIC_USERMODEHELPER_PATH="/sbin/usermode-helper" +# CONFIG_SECURITY_SELINUX is not set +# CONFIG_SECURITY_SMACK is not set +# CONFIG_SECURITY_TOMOYO is not set +# CONFIG_SECURITY_APPARMOR is not set +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_YAMA=y +# CONFIG_SECURITY_SAFESETID is not set +# CONFIG_SECURITY_LOCKDOWN_LSM is not set +# CONFIG_SECURITY_LANDLOCK is not set +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +# CONFIG_IMA is not set +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +CONFIG_EVM=y +CONFIG_EVM_ATTR_FSUUID=y +# CONFIG_EVM_ADD_XATTRS is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_LSM="landlock,lockdown,yama,loadpin,safesetid,bpf" + +# +# Kernel hardening options +# + +# +# Memory initialization +# +CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y +# CONFIG_INIT_STACK_NONE is not set +# CONFIG_INIT_STACK_ALL_PATTERN is not set +CONFIG_INIT_STACK_ALL_ZERO=y +# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set +# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set +CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y +# CONFIG_ZERO_CALL_USED_REGS is not set +# end of Memory initialization + +# +# Hardening of kernel data structures +# +# CONFIG_LIST_HARDENED is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# end of Hardening of kernel data structures + +CONFIG_RANDSTRUCT_NONE=y +# end of Kernel hardening options +# end of Security options + +CONFIG_XOR_BLOCKS=y +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_SIG2=y +CONFIG_CRYPTO_SKCIPHER=y +CONFIG_CRYPTO_SKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +# CONFIG_CRYPTO_USER is not set +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +# CONFIG_CRYPTO_NULL is not set +# CONFIG_CRYPTO_PCRYPT is not set +# CONFIG_CRYPTO_CRYPTD is not set +# CONFIG_CRYPTO_AUTHENC is not set +# CONFIG_CRYPTO_TEST is not set +# end of Crypto core or helper + +# +# Public-key cryptography +# +CONFIG_CRYPTO_RSA=y +# CONFIG_CRYPTO_DH is not set +# CONFIG_CRYPTO_ECDH is not set +# CONFIG_CRYPTO_ECDSA is not set +# CONFIG_CRYPTO_ECRDSA is not set +# CONFIG_CRYPTO_SM2 is not set +# CONFIG_CRYPTO_CURVE25519 is not set +# end of Public-key cryptography + +# +# Block ciphers +# +CONFIG_CRYPTO_AES=y +# CONFIG_CRYPTO_AES_TI is not set +# CONFIG_CRYPTO_ARIA is not set +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +# CONFIG_CRYPTO_DES is not set +# CONFIG_CRYPTO_FCRYPT is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_SM4_GENERIC is not set +# CONFIG_CRYPTO_TWOFISH is not set +# end of Block ciphers + +# +# Length-preserving ciphers and modes +# +# CONFIG_CRYPTO_ADIANTUM is not set +# CONFIG_CRYPTO_CHACHA20 is not set +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_CFB is not set +# CONFIG_CRYPTO_CTR is not set +# CONFIG_CRYPTO_CTS is not set +CONFIG_CRYPTO_ECB=y +# CONFIG_CRYPTO_HCTR2 is not set +# CONFIG_CRYPTO_KEYWRAP is not set +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_OFB is not set +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_XTS is not set +# end of Length-preserving ciphers and modes + +# +# AEAD (authenticated encryption with associated data) ciphers +# +# CONFIG_CRYPTO_AEGIS128 is not set +# CONFIG_CRYPTO_CHACHA20POLY1305 is not set +# CONFIG_CRYPTO_CCM is not set +# CONFIG_CRYPTO_GCM is not set +# CONFIG_CRYPTO_SEQIV is not set +# CONFIG_CRYPTO_ECHAINIV is not set +# CONFIG_CRYPTO_ESSIV is not set +# end of AEAD (authenticated encryption with associated data) ciphers + +# +# Hashes, digests, and MACs +# +CONFIG_CRYPTO_BLAKE2B=y +# CONFIG_CRYPTO_CMAC is not set +# CONFIG_CRYPTO_GHASH is not set +CONFIG_CRYPTO_HMAC=y +# CONFIG_CRYPTO_MD4 is not set +CONFIG_CRYPTO_MD5=y +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_POLY1305 is not set +# CONFIG_CRYPTO_RMD160 is not set +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_SHA3 is not set +# CONFIG_CRYPTO_SM3_GENERIC is not set +# CONFIG_CRYPTO_STREEBOG is not set +# CONFIG_CRYPTO_VMAC is not set +# CONFIG_CRYPTO_WP512 is not set +# CONFIG_CRYPTO_XCBC is not set +CONFIG_CRYPTO_XXHASH=y +# end of Hashes, digests, and MACs + +# +# CRCs (cyclic redundancy checks) +# +CONFIG_CRYPTO_CRC32C=y +# CONFIG_CRYPTO_CRC32 is not set +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRC64_ROCKSOFT=y +# end of CRCs (cyclic redundancy checks) + +# +# Compression +# +# CONFIG_CRYPTO_DEFLATE is not set +# CONFIG_CRYPTO_LZO is not set +# CONFIG_CRYPTO_842 is not set +# CONFIG_CRYPTO_LZ4 is not set +# CONFIG_CRYPTO_LZ4HC is not set +# CONFIG_CRYPTO_ZSTD is not set +# end of Compression + +# +# Random number generation +# +# CONFIG_CRYPTO_ANSI_CPRNG is not set +# CONFIG_CRYPTO_DRBG_MENU is not set +# CONFIG_CRYPTO_JITTERENTROPY is not set +# end of Random number generation + +# +# Userspace interface +# +# CONFIG_CRYPTO_USER_API_HASH is not set +# CONFIG_CRYPTO_USER_API_SKCIPHER is not set +# CONFIG_CRYPTO_USER_API_RNG is not set +# CONFIG_CRYPTO_USER_API_AEAD is not set +# end of Userspace interface + +CONFIG_CRYPTO_HASH_INFO=y + +# +# Accelerated Cryptographic Algorithms for CPU (x86) +# +# CONFIG_CRYPTO_CURVE25519_X86 is not set +# CONFIG_CRYPTO_AES_NI_INTEL is not set +# CONFIG_CRYPTO_BLOWFISH_X86_64 is not set +# CONFIG_CRYPTO_CAMELLIA_X86_64 is not set +# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set +# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set +# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set +# CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set +# CONFIG_CRYPTO_DES3_EDE_X86_64 is not set +# CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set +# CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set +# CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set +# CONFIG_CRYPTO_SM4_AESNI_AVX_X86_64 is not set +# CONFIG_CRYPTO_SM4_AESNI_AVX2_X86_64 is not set +# CONFIG_CRYPTO_TWOFISH_X86_64 is not set +# CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set +# CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set +# CONFIG_CRYPTO_ARIA_AESNI_AVX_X86_64 is not set +# CONFIG_CRYPTO_ARIA_AESNI_AVX2_X86_64 is not set +# CONFIG_CRYPTO_ARIA_GFNI_AVX512_X86_64 is not set +# CONFIG_CRYPTO_CHACHA20_X86_64 is not set +# CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set +# CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set +# CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set +# CONFIG_CRYPTO_BLAKE2S_X86 is not set +# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set +# CONFIG_CRYPTO_POLY1305_X86_64 is not set +# CONFIG_CRYPTO_SHA1_SSSE3 is not set +# CONFIG_CRYPTO_SHA256_SSSE3 is not set +# CONFIG_CRYPTO_SHA512_SSSE3 is not set +# CONFIG_CRYPTO_SM3_AVX_X86_64 is not set +# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set +# CONFIG_CRYPTO_CRC32C_INTEL is not set +# CONFIG_CRYPTO_CRC32_PCLMUL is not set +# CONFIG_CRYPTO_CRCT10DIF_PCLMUL is not set +# end of Accelerated Cryptographic Algorithms for CPU (x86) + +CONFIG_CRYPTO_HW=y +# CONFIG_CRYPTO_DEV_PADLOCK is not set +# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set +# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set +# CONFIG_CRYPTO_DEV_CCP is not set +# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set +# CONFIG_CRYPTO_DEV_QAT_C62X is not set +# CONFIG_CRYPTO_DEV_QAT_4XXX is not set +# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set +# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set +# CONFIG_CRYPTO_DEV_VIRTIO is not set +# CONFIG_CRYPTO_DEV_SAFEXCEL is not set +# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_X509_CERTIFICATE_PARSER=y +# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set +# CONFIG_PKCS7_MESSAGE_PARSER is not set + +# +# Certificates for signature checking +# +# CONFIG_SYSTEM_TRUSTED_KEYRING is not set +# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set +# end of Certificates for signature checking + +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=y +CONFIG_RAID6_PQ_BENCHMARK=y +# CONFIG_PACKING is not set +CONFIG_BITREVERSE=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +# CONFIG_CORDIC is not set +# CONFIG_PRIME_NUMBERS is not set +CONFIG_RATIONAL=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_ARCH_USE_SYM_ANNOTATIONS=y + +# +# Crypto library routines +# +CONFIG_CRYPTO_LIB_UTILS=y +CONFIG_CRYPTO_LIB_AES=y +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y +# CONFIG_CRYPTO_LIB_CHACHA is not set +# CONFIG_CRYPTO_LIB_CURVE25519 is not set +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 +# CONFIG_CRYPTO_LIB_POLY1305 is not set +# CONFIG_CRYPTO_LIB_CHACHA20POLY1305 is not set +CONFIG_CRYPTO_LIB_SHA1=y +CONFIG_CRYPTO_LIB_SHA256=y +# end of Crypto library routines + +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC64_ROCKSOFT=y +# CONFIG_CRC_ITU_T is not set +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC64=y +# CONFIG_CRC4 is not set +# CONFIG_CRC7 is not set +CONFIG_LIBCRC32C=y +# CONFIG_CRC8 is not set +CONFIG_XXHASH=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_ZSTD_COMMON=y +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +# CONFIG_XZ_DEC is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=y +CONFIG_TEXTSEARCH_BM=y +CONFIG_TEXTSEARCH_FSM=y +CONFIG_XARRAY_MULTI=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_SWIOTLB=y +# CONFIG_SWIOTLB_DYNAMIC is not set +# CONFIG_DMA_API_DEBUG is not set +CONFIG_SGL_ALLOC=y +# CONFIG_FORCE_NR_CPUS is not set +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_NLATTR=y +CONFIG_CLZ_TAB=y +# CONFIG_IRQ_POLL is not set +CONFIG_MPILIB=y +CONFIG_SIGNATURE=y +CONFIG_OID_REGISTRY=y +CONFIG_UCS2_STRING=y +CONFIG_HAVE_GENERIC_VDSO=y +CONFIG_GENERIC_GETTIMEOFDAY=y +CONFIG_GENERIC_VDSO_TIME_NS=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +CONFIG_SG_POOL=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_CPU_CACHE_INVALIDATE_MEMREGION=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_ARCH_HAS_COPY_MC=y +CONFIG_ARCH_STACKWALK=y +CONFIG_SBITMAP=y +# CONFIG_LWQ_TEST is not set +# end of Library routines + +CONFIG_FIRMWARE_TABLE=y + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +# CONFIG_PRINTK_TIME is not set +# CONFIG_PRINTK_CALLER is not set +# CONFIG_STACKTRACE_BUILD_ID is not set +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_BOOT_PRINTK_DELAY is not set +# CONFIG_DYNAMIC_DEBUG is not set +# CONFIG_DYNAMIC_DEBUG_CORE is not set +# CONFIG_SYMBOLIC_ERRNAME is not set +# end of printk and dmesg options + +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_MISC is not set + +# +# Compile-time checks and compiler options +# +CONFIG_AS_HAS_NON_CONST_LEB128=y +CONFIG_DEBUG_INFO_NONE=y +# CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_DEBUG_INFO_DWARF5 is not set +CONFIG_FRAME_WARN=1024 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_HEADERS_INSTALL is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +# CONFIG_SECTION_MISMATCH_WARN_ONLY is not set +# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B is not set +CONFIG_OBJTOOL=y +# CONFIG_VMLINUX_MAP is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +# end of Compile-time checks and compiler options + +# +# Generic Kernel Debugging Instruments +# +# CONFIG_MAGIC_SYSRQ is not set +# CONFIG_DEBUG_FS is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_HAVE_ARCH_KCSAN=y +CONFIG_HAVE_KCSAN_COMPILER=y +# CONFIG_KCSAN is not set +# end of Generic Kernel Debugging Instruments + +# +# Networking Debugging +# +# CONFIG_NET_DEV_REFCNT_TRACKER is not set +# CONFIG_NET_NS_REFCNT_TRACKER is not set +# CONFIG_DEBUG_NET is not set +# end of Networking Debugging + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_PAGE_OWNER is not set +# CONFIG_PAGE_TABLE_CHECK is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_RODATA_TEST is not set +CONFIG_ARCH_HAS_DEBUG_WX=y +# CONFIG_DEBUG_WX is not set +CONFIG_GENERIC_PTDUMP=y +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_PER_VMA_LOCK_STATS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_SCHED_STACK_END_CHECK is not set +CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VM_PGTABLE is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y +# CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is not set +CONFIG_HAVE_ARCH_KASAN=y +CONFIG_HAVE_ARCH_KASAN_VMALLOC=y +CONFIG_CC_HAS_KASAN_GENERIC=y +CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y +CONFIG_HAVE_ARCH_KFENCE=y +# CONFIG_KFENCE is not set +CONFIG_HAVE_ARCH_KMSAN=y +# end of Memory Debugging + +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Oops, Lockups and Hangs +# +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +# CONFIG_SOFTLOCKUP_DETECTOR is not set +CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y +# CONFIG_HARDLOCKUP_DETECTOR is not set +CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y +# CONFIG_DETECT_HUNG_TASK is not set +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_WQ_CPU_INTENSIVE_REPORT is not set +# end of Debug Oops, Lockups and Hangs + +# +# Scheduler Debugging +# +CONFIG_SCHED_INFO=y +# CONFIG_SCHEDSTATS is not set +# end of Scheduler Debugging + +# CONFIG_DEBUG_TIMEKEEPING is not set +# CONFIG_DEBUG_PREEMPT is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +# CONFIG_SCF_TORTURE_TEST is not set +# CONFIG_CSD_LOCK_WAIT_DEBUG is not set +# end of Lock Debugging (spinlocks, mutexes, etc...) + +# CONFIG_NMI_CHECK_CPU is not set +# CONFIG_DEBUG_IRQFLAGS is not set +# CONFIG_STACKTRACE is not set +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set + +# +# Debug kernel data structures +# +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PLIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_MAPLE_TREE is not set +# end of Debug kernel data structures + +# +# RCU Debugging +# +# CONFIG_RCU_SCALE_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_REF_SCALE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0 +# CONFIG_RCU_CPU_STALL_CPUTIME is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# end of RCU Debugging + +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +# CONFIG_LATENCYTOP is not set +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_HAVE_RETHOOK=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y +CONFIG_HAVE_DYNAMIC_FTRACE_NO_PATCHABLE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_OBJTOOL_MCOUNT=y +CONFIG_HAVE_OBJTOOL_NOP_MCOUNT=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_HAVE_BUILDTIME_MCOUNT_SORT=y +CONFIG_TRACING_SUPPORT=y +# CONFIG_FTRACE is not set +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +# CONFIG_STRICT_DEVMEM is not set + +# +# x86 Debugging +# +# CONFIG_X86_VERBOSE_BOOTUP is not set +# CONFIG_EARLY_PRINTK is not set +# CONFIG_EFI_PGT_DUMP is not set +# CONFIG_DEBUG_TLBFLUSH is not set +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_IO_DELAY_0X80=y +# CONFIG_IO_DELAY_0XED is not set +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_DELAY_NONE is not set +# CONFIG_CPA_DEBUG is not set +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_X86_DEBUG_FPU is not set +# CONFIG_PUNIT_ATOM_DEBUG is not set +# CONFIG_UNWINDER_ORC is not set +# CONFIG_UNWINDER_FRAME_POINTER is not set +CONFIG_UNWINDER_GUESS=y +# end of x86 Debugging + +# +# Kernel Testing and Coverage +# +# CONFIG_KUNIT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_ARCH_HAS_KCOV=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_KCOV is not set +# CONFIG_RUNTIME_TESTING_MENU is not set +CONFIG_ARCH_USE_MEMTEST=y +# CONFIG_MEMTEST is not set +# end of Kernel Testing and Coverage + +# +# Rust hacking +# +# end of Rust hacking +# end of Kernel hacking diff --git a/packages/runc/Containerfile b/packages/runc/Containerfile new file mode 100644 index 0000000..2a9a267 --- /dev/null +++ b/packages/runc/Containerfile @@ -0,0 +1,40 @@ +FROM scratch AS base +ENV VERSION=1.1.13 +ENV COMMIT=58aa9203c123022138b22cf96540c284876a7910 +ENV SRC_FILE=runc-v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/opencontainers/runc/archive/v${VERSION}/${SRC_FILE} +ENV SRC_HASH=789d5749a08ef1fbe5d1999b67883206a68a4e58e6ca0151c411d678f3480b25 + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/bash . / +COPY --from=stagex/busybox . / +COPY --from=stagex/go . / +COPY --from=stagex/go-md2man . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/linux-headers . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/libseccomp . / +RUN tar -xf ${SRC_FILE} +WORKDIR /runc-${VERSION} +RUN <<-EOF + set -eux + make EXTRA_LDFLAGS="-w -s -buildid=" COMMIT=${COMMIT} -j "$(nproc)" + make man +EOF + +FROM build AS install +RUN <<-EOF + set -eux + install -Dsm755 runc /rootfs/usr/bin/runc + install -d /rootfs/usr/share/man/man8 + install -Dm644 man/man8/* /rootfs/usr/share/man/man8/ +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/packages/tini/Containerfile b/packages/tini/Containerfile new file mode 100644 index 0000000..ecd7c51 --- /dev/null +++ b/packages/tini/Containerfile @@ -0,0 +1,37 @@ +FROM scratch AS base +ENV VERSION=0.19.0 +ENV SRC_HASH=0fd35a7030052acd9f58948d1d900fe1e432ee37103c5561554408bdac6bbf0d +ENV SRC_FILE=v${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/krallin/tini/archive/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/binutils . / +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/openssl . / +COPY --from=stagex/cmake . / +COPY --from=stagex/ninja . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +RUN --network=none tar -xf ${SRC_FILE} +WORKDIR /tini-${VERSION} +ENV SOURCE_DATE_EPOCH=1 +ENV CFLAGS="-DPR_SET_CHILD_SUBREAPER=36 -DPR_GET_CHILD_SUBREAPER=37" +RUN --network=none <<-EOF + set -eux + cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=None + cmake --build build --target all tini-static +EOF + +FROM build AS install +RUN --network=none <<-EOF + set -eux + install -Dm755 build/tini /rootfs/usr/sbin/tini + install -Dm755 build/tini-static /rootfs/usr/sbin/tini-static +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 087c1ce..da41350 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -290,6 +290,21 @@ out/buf/index.json: \ out/go/index.json $(call build,buf) +.PHONY: buildkit +buildkit: out/buildkit/index.json +out/buildkit/index.json: \ + packages/buildkit/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/go/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,buildkit) + .PHONY: busybox busybox: out/busybox/index.json out/busybox/index.json: \ @@ -399,6 +414,24 @@ out/cmake/index.json: \ out/zlib/index.json $(call build,cmake) +.PHONY: containerd +containerd: out/containerd/index.json +out/containerd/index.json: \ + packages/containerd/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/go/index.json \ + out/go-md2man/index.json \ + out/libseccomp/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,containerd) + .PHONY: coreutils coreutils: out/coreutils/index.json out/coreutils/index.json: \ @@ -465,6 +498,22 @@ out/cython/index.json: \ out/zlib/index.json $(call build,cython) +.PHONY: dhcpcd +dhcpcd: out/dhcpcd/index.json +out/dhcpcd/index.json: \ + packages/dhcpcd/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libmnl/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,dhcpcd) + .PHONY: diffoscope diffoscope: out/diffoscope/index.json out/diffoscope/index.json: \ @@ -536,6 +585,39 @@ out/docbook-xsl/index.json: \ out/zlib/index.json $(call build,docbook-xsl) +.PHONY: docker +docker: out/docker/index.json +out/docker/index.json: \ + packages/docker/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/ca-certificates/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/go/index.json \ + out/libseccomp/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,docker) + +.PHONY: docker-cli-buildx +docker-cli-buildx: out/docker-cli-buildx/index.json +out/docker-cli-buildx/index.json: \ + packages/docker-cli-buildx/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/go/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,docker-cli-buildx) + .PHONY: dosfstools dosfstools: out/dosfstools/index.json out/dosfstools/index.json: \ @@ -805,6 +887,58 @@ out/freetds/index.json: \ out/unixodbc/index.json $(call build,freetds) +.PHONY: fuse-overlayfs +fuse-overlayfs: out/fuse-overlayfs/index.json +out/fuse-overlayfs/index.json: \ + packages/fuse-overlayfs/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/fuse3/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json + $(call build,fuse-overlayfs) + +.PHONY: fuse3 +fuse3: out/fuse3/index.json +out/fuse3/index.json: \ + packages/fuse3/Containerfile \ + out/binutils/index.json \ + out/bison/index.json \ + out/busybox/index.json \ + out/bzip2/index.json \ + out/cmake/index.json \ + out/expat/index.json \ + out/filesystem/index.json \ + out/flex/index.json \ + out/gcc/index.json \ + out/gettext/index.json \ + out/libffi/index.json \ + out/libxml2/index.json \ + out/libxslt/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/meson/index.json \ + out/musl/index.json \ + out/ncurses/index.json \ + out/ninja/index.json \ + out/pcre2/index.json \ + out/pkgconf/index.json \ + out/py-packaging/index.json \ + out/python/index.json \ + out/rhash/index.json \ + out/util-linux/index.json \ + out/xz/index.json \ + out/zlib/index.json + $(call build,fuse3) + .PHONY: gawk gawk: out/gawk/index.json out/gawk/index.json: \ @@ -1094,6 +1228,27 @@ out/icu/index.json: \ out/musl/index.json $(call build,icu) +.PHONY: iptables +iptables: out/iptables/index.json +out/iptables/index.json: \ + packages/iptables/Containerfile \ + out/autoconf/index.json \ + out/automake/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libmnl/index.json \ + out/libnftnl/index.json \ + out/libtool/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json + $(call build,iptables) + .PHONY: iputils iputils: out/iputils/index.json out/iputils/index.json: \ @@ -1435,6 +1590,37 @@ out/libksba/index.json: \ out/zlib/index.json $(call build,libksba) +.PHONY: libmnl +libmnl: out/libmnl/index.json +out/libmnl/index.json: \ + packages/libmnl/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,libmnl) + +.PHONY: libnftnl +libnftnl: out/libnftnl/index.json +out/libnftnl/index.json: \ + packages/libnftnl/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/libmnl/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,libnftnl) + .PHONY: libqrencode libqrencode: out/libqrencode/index.json out/libqrencode/index.json: \ @@ -1665,6 +1851,38 @@ out/linux-generic/index.json: \ out/zlib/index.json $(call build,linux-generic) +.PHONY: linux-guest +linux-guest: out/linux-guest/index.json +out/linux-guest/index.json: \ + packages/linux-guest/Containerfile \ + out/bash/index.json \ + out/bc/index.json \ + out/binutils/index.json \ + out/bison/index.json \ + out/coreutils/index.json \ + out/diffutils/index.json \ + out/elfutils/index.json \ + out/filesystem/index.json \ + out/findutils/index.json \ + out/flex/index.json \ + out/gawk/index.json \ + out/gcc/index.json \ + out/grep/index.json \ + out/gzip/index.json \ + out/libzstd/index.json \ + out/linux-headers/index.json \ + out/m4/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/openssl/index.json \ + out/perl/index.json \ + out/pkgconf/index.json \ + out/sed/index.json \ + out/tar/index.json \ + out/xz/index.json \ + out/zlib/index.json + $(call build,linux-guest) + .PHONY: linux-headers linux-headers: out/linux-headers/index.json out/linux-headers/index.json: \ @@ -3458,6 +3676,7 @@ out/python/index.json: \ out/libffi/index.json \ out/make/index.json \ out/musl/index.json \ + out/ncurses/index.json \ out/openssl/index.json \ out/sqlite3/index.json \ out/zlib/index.json @@ -3592,6 +3811,24 @@ out/rhash/index.json: \ out/openssl/index.json $(call build,rhash) +.PHONY: runc +runc: out/runc/index.json +out/runc/index.json: \ + packages/runc/Containerfile \ + out/bash/index.json \ + out/binutils/index.json \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/go/index.json \ + out/go-md2man/index.json \ + out/libseccomp/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/pkgconf/index.json + $(call build,runc) + .PHONY: rust rust: out/rust/index.json out/rust/index.json: \ @@ -3832,6 +4069,21 @@ out/tflint/index.json: \ out/go/index.json $(call build,tflint) +.PHONY: tini +tini: out/tini/index.json +out/tini/index.json: \ + packages/tini/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/cmake/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json + $(call build,tini) + .PHONY: tofu tofu: out/tofu/index.json out/tofu/index.json: \ From e6dd8456b856b8452c302fda0352378edcd91ccb Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Mon, 15 Apr 2024 11:05:37 -0700 Subject: [PATCH 45/57] feat: package nodejs --- packages/nodejs/Containerfile | 40 +++++++++++++++++++++++++++++++++++ src/packages.mk | 18 ++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 packages/nodejs/Containerfile diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile new file mode 100644 index 0000000..9bd65ad --- /dev/null +++ b/packages/nodejs/Containerfile @@ -0,0 +1,40 @@ +FROM scratch as base +ENV VERSION=20.11.1 +ENV SRC_HASH=4af1ba6ea848cc05908b8a62b02fb27684dd52b2a7988ee82b0cfa72deb90b94 +ENV SRC_FILE=node-v${VERSION}.tar.gz +ENV SRC_SITE=https://nodejs.org/dist/v${VERSION}/${SRC_FILE} +ENV CFLAGS="-march=x86-64 -mtune=generic -O2" + +FROM base as fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch as build +COPY --from=stagex/busybox . / +COPY --from=stagex/gcc . / +COPY --from=stagex/binutils . / +COPY --from=stagex/make . / +COPY --from=stagex/musl . / +COPY --from=stagex/openssl . / +COPY --from=stagex/python . / +COPY --from=stagex/bzip2 . / +COPY --from=stagex/ninja . / +COPY --from=stagex/zlib . / +COPY --from=stagex/linux-headers . / +RUN tar -xf ${SRC_FILE} +WORKDIR node-v${VERSION} +RUN --network=none <<-EOF + set -eux + python configure.py \ + --without-snapshot + make BUILDTYPE=Release +EOF + +FROM build as install +RUN --network=none <<-EOF + set -eux + make DESTDIR=/rootfs install + find /rootfs -exec touch -hcd "@0" "{}" + +EOF + +FROM stagex/filesystem as package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index da41350..197757e 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -2239,6 +2239,24 @@ out/ninja/index.json: \ out/python/index.json $(call build,ninja) +.PHONY: nodejs +nodejs: out/nodejs/index.json +out/nodejs/index.json: \ + packages/nodejs/Containerfile \ + out/binutils/index.json \ + out/busybox/index.json \ + out/bzip2/index.json \ + out/filesystem/index.json \ + out/gcc/index.json \ + out/linux-headers/index.json \ + out/make/index.json \ + out/musl/index.json \ + out/ninja/index.json \ + out/openssl/index.json \ + out/python/index.json \ + out/zlib/index.json + $(call build,nodejs) + .PHONY: npth npth: out/npth/index.json out/npth/index.json: \ From fa54294a9f4b194efb9cf7c8836dae473f1c377a Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Tue, 16 Apr 2024 13:59:15 -0700 Subject: [PATCH 46/57] fix: lockdown more nodejs flags --- packages/nodejs/Containerfile | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile index 9bd65ad..ece35de 100644 --- a/packages/nodejs/Containerfile +++ b/packages/nodejs/Containerfile @@ -3,7 +3,6 @@ ENV VERSION=20.11.1 ENV SRC_HASH=4af1ba6ea848cc05908b8a62b02fb27684dd52b2a7988ee82b0cfa72deb90b94 ENV SRC_FILE=node-v${VERSION}.tar.gz ENV SRC_SITE=https://nodejs.org/dist/v${VERSION}/${SRC_FILE} -ENV CFLAGS="-march=x86-64 -mtune=generic -O2" FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . @@ -18,14 +17,29 @@ COPY --from=stagex/openssl . / COPY --from=stagex/python . / COPY --from=stagex/bzip2 . / COPY --from=stagex/ninja . / +COPY --from=stagex/pkgconf . / +COPY --from=stagex/icu . / COPY --from=stagex/zlib . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} WORKDIR node-v${VERSION} +ENV CFLAGS="-march=x86-64 -mtune=generic -Os" +ENV CXXFLAGS="-march=x86-64 -mtune=generic -Os" +ENV CPPFLAGS="-march=x86-64 -mtune=generic -Os" RUN --network=none <<-EOF set -eux python configure.py \ - --without-snapshot + --prefix=/usr \ + --ninja \ + --enable-lto \ + --without-npm \ + --without-snapshot \ + --without-corepack \ + --shared-openssl \ + --shared-zlib \ + --with-icu-default-data-dir=$(icu-config --icudatadir) \ + --with-intl=system-icu \ + --openssl-use-def-ca-store make BUILDTYPE=Release EOF @@ -33,7 +47,6 @@ FROM build as install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install - find /rootfs -exec touch -hcd "@0" "{}" + EOF FROM stagex/filesystem as package From a940f9e3b8932f1a34a6d1abec49a56755abe883 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Wed, 17 Jul 2024 12:41:06 -0700 Subject: [PATCH 47/57] maint: bump nodejs to 22.4.0 --- packages/nodejs/Containerfile | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile index ece35de..5e38481 100644 --- a/packages/nodejs/Containerfile +++ b/packages/nodejs/Containerfile @@ -1,8 +1,9 @@ FROM scratch as base -ENV VERSION=20.11.1 -ENV SRC_HASH=4af1ba6ea848cc05908b8a62b02fb27684dd52b2a7988ee82b0cfa72deb90b94 +ENV VERSION=22.4.0 +ENV SRC_HASH=b62cd83c9a57a11349883f89b1727a16e66c02eb6255a4bf32714ff5d93165f5 ENV SRC_FILE=node-v${VERSION}.tar.gz ENV SRC_SITE=https://nodejs.org/dist/v${VERSION}/${SRC_FILE} +ENV CFLAGS="-march=x86-64 -mtune=generic -O2" FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . @@ -17,29 +18,14 @@ COPY --from=stagex/openssl . / COPY --from=stagex/python . / COPY --from=stagex/bzip2 . / COPY --from=stagex/ninja . / -COPY --from=stagex/pkgconf . / -COPY --from=stagex/icu . / COPY --from=stagex/zlib . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} WORKDIR node-v${VERSION} -ENV CFLAGS="-march=x86-64 -mtune=generic -Os" -ENV CXXFLAGS="-march=x86-64 -mtune=generic -Os" -ENV CPPFLAGS="-march=x86-64 -mtune=generic -Os" RUN --network=none <<-EOF set -eux python configure.py \ - --prefix=/usr \ - --ninja \ - --enable-lto \ - --without-npm \ - --without-snapshot \ - --without-corepack \ - --shared-openssl \ - --shared-zlib \ - --with-icu-default-data-dir=$(icu-config --icudatadir) \ - --with-intl=system-icu \ - --openssl-use-def-ca-store + --without-snapshot make BUILDTYPE=Release EOF @@ -47,6 +33,7 @@ FROM build as install RUN --network=none <<-EOF set -eux make DESTDIR=/rootfs install + find /rootfs -exec touch -hcd "@0" "{}" + EOF FROM stagex/filesystem as package From d12f1b8a0219cc7acf53e0aaa2577759a04c4a0b Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Mon, 26 Aug 2024 02:41:37 -0700 Subject: [PATCH 48/57] maint: bump nodejs to 22.7.0 --- packages/nodejs/Containerfile | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile index 5e38481..78b83af 100644 --- a/packages/nodejs/Containerfile +++ b/packages/nodejs/Containerfile @@ -1,9 +1,8 @@ FROM scratch as base -ENV VERSION=22.4.0 -ENV SRC_HASH=b62cd83c9a57a11349883f89b1727a16e66c02eb6255a4bf32714ff5d93165f5 +ENV VERSION=22.7.0 +ENV SRC_HASH=7a7c99282d59866d971b2da12c99596cb15782b9c3efe2e2146390c14f4d490e ENV SRC_FILE=node-v${VERSION}.tar.gz ENV SRC_SITE=https://nodejs.org/dist/v${VERSION}/${SRC_FILE} -ENV CFLAGS="-march=x86-64 -mtune=generic -O2" FROM base as fetch ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . @@ -22,10 +21,21 @@ COPY --from=stagex/zlib . / COPY --from=stagex/linux-headers . / RUN tar -xf ${SRC_FILE} WORKDIR node-v${VERSION} +ENV SOURCE_DATE_EPOCH=1 +ENV LDFLAGS=" \ + -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro \ + -Wl,-z,now -Wl,-z,pack-relative-relocs" +ENV CFLAGS=" \ + -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \ + -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \ + -fstack-clash-protection -fcf-protection \ + -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" +ENV CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" +ENV LTOFLAGS="-flto=auto" + RUN --network=none <<-EOF set -eux - python configure.py \ - --without-snapshot + python configure.py make BUILDTYPE=Release EOF From bd7ce59caac41e39276e0c243c29d72a8f4cbab4 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Thu, 29 Aug 2024 12:30:13 -0700 Subject: [PATCH 49/57] feat: use ninja and shared libs for nodejs --- packages/brotli/Containerfile | 9 +++-- packages/c-ares/Containerfile | 35 ++++++++++++++++++ packages/libev/Containerfile | 44 +++++++++++++++++++++++ packages/libnghttp2/Containerfile | 59 +++++++++++++++++++++++++++++++ packages/nodejs/Containerfile | 20 ++++++++++- src/packages.mk | 51 ++++++++++++++++++++++++++ 6 files changed, 215 insertions(+), 3 deletions(-) create mode 100644 packages/c-ares/Containerfile create mode 100644 packages/libev/Containerfile create mode 100644 packages/libnghttp2/Containerfile diff --git a/packages/brotli/Containerfile b/packages/brotli/Containerfile index be02f79..ecd81e2 100644 --- a/packages/brotli/Containerfile +++ b/packages/brotli/Containerfile @@ -35,8 +35,13 @@ RUN --network=none <<-EOF EOF FROM build AS install -RUN DESTDIR=/rootfs cmake --install build -RUN find /rootfs -exec touch -hcd "@0" "{}" + +RUN <<-EOF + set -eux + DESTDIR=/rootfs cmake --install build + for file in common dec enc; do + install -D -m 755 build/libbrotli$file.a /rootfs/usr/lib/ + done +EOF FROM stagex/filesystem AS package COPY --from=install /rootfs/. / diff --git a/packages/c-ares/Containerfile b/packages/c-ares/Containerfile new file mode 100644 index 0000000..ab27305 --- /dev/null +++ b/packages/c-ares/Containerfile @@ -0,0 +1,35 @@ +FROM scratch AS base +ENV VERSION=1.33.1 +ENV SRC_HASH=06869824094745872fa26efd4c48e622b9bd82a89ef0ce693dc682a23604f415 +ENV SRC_FILE=c-ares-${VERSION}.tar.gz +ENV SRC_SITE=https://github.com/c-ares/c-ares/releases/download/v${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/busybox . / +COPY --from=stagex/binutils . / +COPY --from=stagex/musl . / +COPY --from=stagex/make . / +COPY --from=stagex/gcc . / + +RUN --network=none tar -xf ${SRC_FILE} +WORKDIR c-ares-${VERSION} +RUN --network=none < Date: Mon, 26 Aug 2024 04:10:17 -0700 Subject: [PATCH 50/57] fix: brotli prefix --- packages/brotli/Containerfile | 7 ++++--- packages/nodejs/Containerfile | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/brotli/Containerfile b/packages/brotli/Containerfile index ecd81e2..fd651e5 100644 --- a/packages/brotli/Containerfile +++ b/packages/brotli/Containerfile @@ -23,13 +23,13 @@ RUN --network=none <<-EOF set -eux cmake -B build -G Ninja \ -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_INSTALL_PREFIX=/usr/lib \ + -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=OFF cmake --build build cmake -B build -G Ninja \ -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_INSTALL_PREFIX=/usr/lib \ + -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=ON cmake --build build EOF @@ -39,8 +39,9 @@ RUN <<-EOF set -eux DESTDIR=/rootfs cmake --install build for file in common dec enc; do - install -D -m 755 build/libbrotli$file.a /rootfs/usr/lib/ + install -D -m 755 build/libbrotli$file.a /rootfs/usr/lib64 done + mv /rootfs/usr/lib64 /rootfs/usr/lib EOF FROM stagex/filesystem AS package diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile index a089d06..d9526ca 100644 --- a/packages/nodejs/Containerfile +++ b/packages/nodejs/Containerfile @@ -52,6 +52,7 @@ RUN --network=none <<-EOF --shared-brotli \ --without-npm \ --without-corepack \ + --with-intl=system-icu \ --with-icu-default-data-dir=$(icu-config --icudatadir) \ --openssl-use-def-ca-store make BUILDTYPE=Release From c429ae642b2cf3d3cd9650698fe4ff73650fa4d8 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Mon, 26 Aug 2024 11:42:36 -0700 Subject: [PATCH 51/57] fix: linting --- packages/c-ares/Containerfile | 2 +- packages/libev/Containerfile | 2 +- packages/libnghttp2/Containerfile | 2 +- packages/nodejs/Containerfile | 12 ++++++------ 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/c-ares/Containerfile b/packages/c-ares/Containerfile index ab27305..cf551f3 100644 --- a/packages/c-ares/Containerfile +++ b/packages/c-ares/Containerfile @@ -15,7 +15,7 @@ COPY --from=stagex/make . / COPY --from=stagex/gcc . / RUN --network=none tar -xf ${SRC_FILE} -WORKDIR c-ares-${VERSION} +WORKDIR /c-ares-${VERSION} RUN --network=none < Date: Thu, 29 Aug 2024 12:05:06 -0700 Subject: [PATCH 52/57] fix: cleanup/linting --- packages/nodejs/Containerfile | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/nodejs/Containerfile b/packages/nodejs/Containerfile index ee8e554..9b93433 100644 --- a/packages/nodejs/Containerfile +++ b/packages/nodejs/Containerfile @@ -55,15 +55,11 @@ RUN --network=none <<-EOF --with-intl=system-icu \ --with-icu-default-data-dir=$(icu-config --icudatadir) \ --openssl-use-def-ca-store - make BUILDTYPE=Release + make BUILDTYPE=Release -j $(nproc) EOF FROM build AS install -RUN --network=none <<-EOF - set -eux - make DESTDIR=/rootfs install - find /rootfs -exec touch -hcd "@0" "{}" + -EOF +RUN --network=none make DESTDIR=/rootfs install FROM stagex/filesystem AS package COPY --from=install /rootfs/. / From 3f11b030415046139dd090f6c89349ed216c9512 Mon Sep 17 00:00:00 2001 From: ConYel Date: Fri, 30 Aug 2024 09:20:32 +0200 Subject: [PATCH 53/57] chore: bump binutils to 2.43.1 --- packages/binutils/Containerfile | 6 +++--- src/packages.mk | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/binutils/Containerfile b/packages/binutils/Containerfile index c508583..6c01f79 100644 --- a/packages/binutils/Containerfile +++ b/packages/binutils/Containerfile @@ -1,7 +1,7 @@ FROM scratch AS base ARG ARCH=x86_64 -ENV VERSION=2.35 -ENV SRC_HASH=1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85 +ENV VERSION=2.43.1 +ENV SRC_HASH=13f74202a3c4c51118b797a39ea4200d3f6cfbe224da6d1d95bb938480132dfd ENV SRC_FILE=binutils-${VERSION}.tar.xz ENV SRC_SITE=https://ftp.gnu.org/gnu/binutils/${SRC_FILE} @@ -11,7 +11,7 @@ ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . FROM fetch AS build COPY --from=stagex/stage3 . / RUN tar -xf binutils-${VERSION}.tar.xz -WORKDIR binutils-${VERSION} +WORKDIR /binutils-${VERSION} RUN --network=none <<-EOF set -ex CFLAGS='-Os -Wformat -Werror=format-security -O2' \ diff --git a/src/packages.mk b/src/packages.mk index 087c1ce..fdc922d 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -3458,6 +3458,7 @@ out/python/index.json: \ out/libffi/index.json \ out/make/index.json \ out/musl/index.json \ + out/ncurses/index.json \ out/openssl/index.json \ out/sqlite3/index.json \ out/zlib/index.json From 44e4b6067518b40327d282c5eac3a888ec52e5df Mon Sep 17 00:00:00 2001 From: ConYel Date: Fri, 30 Aug 2024 09:25:10 +0200 Subject: [PATCH 54/57] fix: fix packages.mk follow upstream --- src/packages.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/src/packages.mk b/src/packages.mk index fdc922d..087c1ce 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -3458,7 +3458,6 @@ out/python/index.json: \ out/libffi/index.json \ out/make/index.json \ out/musl/index.json \ - out/ncurses/index.json \ out/openssl/index.json \ out/sqlite3/index.json \ out/zlib/index.json From a30830250d9e8e7160e060cd332ca38dc9d44459 Mon Sep 17 00:00:00 2001 From: "Lance R. Vick" Date: Fri, 30 Aug 2024 11:35:55 -0700 Subject: [PATCH 55/57] maint: update APR patching CVE-2023-49582 --- packages/apr/Containerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/apr/Containerfile b/packages/apr/Containerfile index 468c066..7ecfc5f 100644 --- a/packages/apr/Containerfile +++ b/packages/apr/Containerfile @@ -1,7 +1,7 @@ FROM scratch AS base ARG ARCH=x86_64 -ENV VERSION=1.7.4 -ENV SRC_HASH=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577 +ENV VERSION=1.7.5 +ENV SRC_HASH=cd0f5d52b9ab1704c72160c5ee3ed5d3d4ca2df4a7f8ab564e3cb352b67232f2 ENV SRC_FILE=apr-${VERSION}.tar.bz2 ENV SRC_SITE=https://www.apache.org/dist/apr/${SRC_FILE} From f3bbf22f376aae5239b70cbdeac32cd747a5a9ae Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Sun, 1 Sep 2024 22:00:32 +0200 Subject: [PATCH 56/57] fix: install -o accepts user ID only --- packages/filesystem/Containerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/filesystem/Containerfile b/packages/filesystem/Containerfile index bade194..89c65d5 100644 --- a/packages/filesystem/Containerfile +++ b/packages/filesystem/Containerfile @@ -8,7 +8,7 @@ RUN <<-EOF install -d -m1777 tmp install -d -m1777 var/tmp install -d -m1777 var/spool/mail - install -o 1000:1000 -d -m0755 home/user + install -o 1000 -g 1000 -d -m0755 home/user ln -sT usr/lib lib64 ln -sT usr/lib lib ln -sT usr/bin bin From 4140f81c764fb17ab588dd1b2466ecd22fddeb4f Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Mon, 2 Sep 2024 11:52:20 +0200 Subject: [PATCH 57/57] feat: add yarn --- packages/yarn/Containerfile | 39 +++++++++++++++++++++++++++++++++++++ src/packages.mk | 9 +++++++++ 2 files changed, 48 insertions(+) create mode 100644 packages/yarn/Containerfile diff --git a/packages/yarn/Containerfile b/packages/yarn/Containerfile new file mode 100644 index 0000000..19c7903 --- /dev/null +++ b/packages/yarn/Containerfile @@ -0,0 +1,39 @@ +FROM scratch AS base +ENV VERSION=1.22.22 +ENV SRC_HASH=88268464199d1611fcf73ce9c0a6c4d44c7d5363682720d8506f6508addf36a0 +ENV SRC_FILE=yarn-v${VERSION}.tar.gz +ENV SRC_SITE=https://yarnpkg.com/downloads/${VERSION}/${SRC_FILE} + +FROM base AS fetch +ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} . + +FROM fetch AS build +COPY --from=stagex/musl . / +COPY --from=stagex/busybox . / +RUN tar -xf ${SRC_FILE} +WORKDIR /yarn-v${VERSION} + +FROM build AS install +ENV DESTDIR=/rootfs +RUN --network=none <<-EOF + destdir="usr/share/node_modules/yarn" + + mkdir -p $DESTDIR/$destdir + cp -R ./* $DESTDIR/$destdir + + # Windows files + rm $DESTDIR/$destdir/bin/*.cmd + # Shell shim + rm $DESTDIR/$destdir/bin/yarn + # Old alias + rm $DESTDIR/$destdir/bin/yarnpkg + + mkdir -p $DESTDIR/usr/bin + ln -s ../share/node_modules/yarn/bin/yarn.js $DESTDIR/usr/bin/yarn + ln -s ../share/node_modules/yarn/bin/yarn.js $DESTDIR/usr/bin/yarnpkg + + sed -i 's/\"tar\"/\"stagex\"/g' $DESTDIR/$destdir/package.json +EOF + +FROM stagex/filesystem AS package +COPY --from=install /rootfs/. / diff --git a/src/packages.mk b/src/packages.mk index 391ef40..ad5c7ac 100644 --- a/src/packages.mk +++ b/src/packages.mk @@ -4338,6 +4338,15 @@ out/xz/index.json: \ out/po4a/index.json $(call build,xz) +.PHONY: yarn +yarn: out/yarn/index.json +out/yarn/index.json: \ + packages/yarn/Containerfile \ + out/busybox/index.json \ + out/filesystem/index.json \ + out/musl/index.json + $(call build,yarn) + .PHONY: yq yq: out/yq/index.json out/yq/index.json: \