Merge remote-tracking branch 'upstream/staging' into packages/pcsc
This commit is contained in:
commit
2187304d7d
290 changed files with 12578 additions and 1298 deletions
26
.forgejo/workflows/merge-main-check.yml
Normal file
26
.forgejo/workflows/merge-main-check.yml
Normal file
|
@ -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
|
||||
|
1
.taplo.toml
Normal file
1
.taplo.toml
Normal file
|
@ -0,0 +1 @@
|
|||
include = ["MAINTAINERS", ".taplo.toml"]
|
250
MAINTAINERS
250
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"
|
||||
|
|
15
Makefile
15
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
|
||||
|
@ -25,8 +33,11 @@ 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:
|
||||
$(MAKE) CHECK=1 all
|
||||
|
||||
.PHONY: compat
|
||||
compat:
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
36
packages/acl/Containerfile
Normal file
36
packages/acl/Containerfile
Normal file
|
@ -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 -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/. /
|
41
packages/alsa-lib/Containerfile
Normal file
41
packages/alsa-lib/Containerfile
Normal file
|
@ -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/. /
|
53
packages/apr-util/Containerfile
Normal file
53
packages/apr-util/Containerfile
Normal file
|
@ -0,0 +1,53 @@
|
|||
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 . /
|
||||
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 \
|
||||
--with-ldap \
|
||||
--with-pgsql \
|
||||
--with-mysql \
|
||||
--with-sqlite3 \
|
||||
--with-crypto \
|
||||
--with-openssl \
|
||||
--without-sqlite2 \
|
||||
--with-dbm=ndbm \
|
||||
--with-ndbm
|
||||
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/. /
|
19
packages/apr-util/musl-fix-testsuite.patch
Normal file
19
packages/apr-util/musl-fix-testsuite.patch
Normal file
|
@ -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 */
|
38
packages/apr/Containerfile
Normal file
38
packages/apr/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
FROM scratch AS base
|
||||
ARG ARCH=x86_64
|
||||
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 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 -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/. /
|
22
packages/apr/apr-1.6.2-dont-test-dlclose.patch
Normal file
22
packages/apr/apr-1.6.2-dont-test-dlclose.patch
Normal file
|
@ -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);
|
16
packages/apr/semtimedop-s390x.patch
Normal file
16
packages/apr/semtimedop-s390x.patch
Normal file
|
@ -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,
|
29
packages/argon2/Containerfile
Normal file
29
packages/argon2/Containerfile
Normal file
|
@ -0,0 +1,29 @@
|
|||
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/. /
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
38
packages/aspell/Containerfile
Normal file
38
packages/aspell/Containerfile
Normal file
|
@ -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 -j "$(nproc)"
|
||||
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/. /
|
43
packages/attr/Containerfile
Normal file
43
packages/attr/Containerfile
Normal file
|
@ -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 -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/. /
|
|
@ -1,20 +1,20 @@
|
|||
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 . /
|
||||
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 \
|
||||
|
@ -27,8 +27,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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -36,13 +36,13 @@ 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 \
|
||||
--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/. /
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
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 . /
|
||||
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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
FROM scratch as base
|
||||
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}
|
||||
|
||||
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}
|
||||
WORKDIR /binutils-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
CFLAGS='-Os -Wformat -Werror=format-security -O2' \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -28,8 +28,8 @@ 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
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
|
48
packages/brotli/Containerfile
Normal file
48
packages/brotli/Containerfile
Normal file
|
@ -0,0 +1,48 @@
|
|||
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 \
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
cmake --build build
|
||||
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
cmake --build build
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
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/lib64
|
||||
done
|
||||
mv /rootfs/usr/lib64 /rootfs/usr/lib
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -1,18 +1,18 @@
|
|||
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 . /
|
||||
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/
|
||||
|
@ -26,11 +26,11 @@ 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/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
48
packages/buildkit/Containerfile
Normal file
48
packages/buildkit/Containerfile
Normal file
|
@ -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/. /
|
|
@ -1,16 +1,16 @@
|
|||
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}
|
||||
WORKDIR /busybox-${VERSION}
|
||||
ENV KCONFIG_NOTIMESTAMP=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
|
@ -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"]
|
||||
|
|
|
@ -1,29 +1,29 @@
|
|||
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 . /
|
||||
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
|
||||
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/. /
|
||||
|
|
35
packages/c-ares/Containerfile
Normal file
35
packages/c-ares/Containerfile
Normal file
|
@ -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 <<EOF
|
||||
set -eux
|
||||
./configure \
|
||||
--build=x86_64-linux-musl \
|
||||
--host=x86_64-linux-musl \
|
||||
--prefix=/usr \
|
||||
--mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--enable-shared
|
||||
make -j "$(nproc)"
|
||||
EOF
|
||||
|
||||
FROM build AS install
|
||||
RUN --network=none make DESTDIR=/rootfs install
|
||||
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
|
@ -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
|
||||
|
@ -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
|
||||
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
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}
|
||||
|
||||
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/linux-headers . /
|
||||
COPY --from=stagex/binutils . /
|
||||
COPY --from=stagex/cmake . /
|
||||
COPY --from=stagex/ninja . /
|
||||
|
@ -17,32 +18,39 @@ 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
|
||||
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
|
||||
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/. /
|
||||
|
|
48
packages/clang16/Containerfile
Normal file
48
packages/clang16/Containerfile
Normal file
|
@ -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/. /
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
55
packages/containerd/Containerfile
Normal file
55
packages/containerd/Containerfile
Normal file
|
@ -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/. /
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
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 . /
|
||||
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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,13 +1,14 @@
|
|||
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}
|
||||
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/binutils . /
|
||||
COPY --from=stagex/make . /
|
||||
|
@ -17,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 \
|
||||
|
@ -33,8 +34,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/. /
|
||||
|
|
42
packages/cython/Containerfile
Normal file
42
packages/cython/Containerfile
Normal file
|
@ -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 -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/. /
|
49
packages/dhcpcd/Containerfile
Normal file
49
packages/dhcpcd/Containerfile
Normal file
|
@ -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/. /
|
46
packages/diffoscope/Containerfile
Normal file
46
packages/diffoscope/Containerfile
Normal file
|
@ -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/. /
|
||||
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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/. /
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
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 . /
|
||||
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}
|
||||
|
@ -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/. /
|
||||
|
|
46
packages/docker-cli-buildx/Containerfile
Normal file
46
packages/docker-cli-buildx/Containerfile
Normal file
|
@ -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/. /
|
88
packages/docker/Containerfile
Normal file
88
packages/docker/Containerfile
Normal file
|
@ -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/. /
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
48
packages/doxygen/Containerfile
Normal file
48
packages/doxygen/Containerfile
Normal file
|
@ -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/. /
|
23
packages/doxygen/remove-usage-of-fstat64.patch
Normal file
23
packages/doxygen/remove-usage-of-fstat64.patch
Normal file
|
@ -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<size_t>(st.st_size);
|
||||
- }
|
||||
-# else // other unix or linux 32 bits or cygwin
|
||||
struct stat st;
|
||||
if (::fstat(fd, &st) == 0)
|
||||
{
|
||||
return static_cast<size_t>(st.st_size);
|
||||
}
|
||||
-# endif
|
||||
#endif
|
||||
throw_spdlog_ex("Failed getting file size from fd", errno);
|
||||
return 0; // will not be reached.
|
44
packages/dtc/Containerfile
Normal file
44
packages/dtc/Containerfile
Normal file
|
@ -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/. /
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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 \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -13,27 +13,27 @@ 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 . /
|
||||
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
|
||||
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
|
||||
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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -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
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 <<EOF
|
||||
set -eux
|
||||
./configure
|
||||
|
|
36
packages/expat/Containerfile
Normal file
36
packages/expat/Containerfile
Normal file
|
@ -0,0 +1,36 @@
|
|||
|
||||
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/. /
|
|
@ -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 . /
|
||||
|
@ -20,7 +20,7 @@ COPY --from=stagex/libtool . /
|
|||
COPY --from=stagex/m4 . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR file-FILE5_45/
|
||||
WORKDIR /file-FILE5_45/
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
autoreconf -fvi
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM scratch as build
|
||||
FROM scratch AS build
|
||||
COPY --from=stagex/stage3 . /
|
||||
WORKDIR rootfs
|
||||
WORKDIR /rootfs
|
||||
RUN <<-EOF
|
||||
install -d -m0750 root
|
||||
install -d -m0755 etc
|
||||
|
@ -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
|
||||
|
@ -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"]
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR findutils-${VERSION}
|
||||
WORKDIR /findutils-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -12,12 +12,12 @@ COPY --from=stagex/binutils . /
|
|||
COPY --from=stagex/gcc . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR flashtools-${VERSION}
|
||||
WORKDIR /flashtools-${VERSION}
|
||||
|
||||
FROM fetch as build
|
||||
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/
|
||||
|
@ -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/./ /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -21,7 +21,7 @@ COPY --from=stagex/bison . /
|
|||
COPY --from=stagex/gettext . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR flex-${VERSION}
|
||||
WORKDIR /flex-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./autogen.sh
|
||||
|
@ -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/. /
|
||||
|
|
45
packages/fmt/Containerfile
Normal file
45
packages/fmt/Containerfile
Normal file
|
@ -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/. /
|
31
packages/fmt/fix-handling-of-static-separator.patch
Normal file
31
packages/fmt/fix-handling-of-static-separator.patch
Normal file
|
@ -0,0 +1,31 @@
|
|||
From 44c3fe1ebb466ab5c296e1a1a6991c7c7b51b72e Mon Sep 17 00:00:00 2001
|
||||
From: Victor Zverovich <viz@meta.com>
|
||||
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 <typename Char> 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<std::locale>();
|
||||
// We cannot use the num_put<char> 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<facet>(locale).put(out, value, specs);
|
||||
return facet(locale).put(out, value, specs);
|
||||
#endif
|
||||
- return false;
|
||||
}
|
||||
} // namespace detail
|
48
packages/freetds/Containerfile
Normal file
48
packages/freetds/Containerfile
Normal file
|
@ -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/. /
|
43
packages/fuse-overlayfs/Containerfile
Normal file
43
packages/fuse-overlayfs/Containerfile
Normal file
|
@ -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/. /
|
58
packages/fuse3/Containerfile
Normal file
58
packages/fuse3/Containerfile
Normal file
|
@ -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/. /
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR gawk-${VERSION}
|
||||
WORKDIR /gawk-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,29 +1,29 @@
|
|||
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
|
||||
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
|
||||
|
||||
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}
|
||||
WORKDIR /gcc-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
mv ../*.tar.* .
|
||||
|
@ -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/. /
|
||||
|
|
40
packages/gdbm/Containerfile
Normal file
40
packages/gdbm/Containerfile
Normal file
|
@ -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 -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/. /
|
|
@ -1,22 +1,22 @@
|
|||
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 . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR linux-${VERSION}
|
||||
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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -15,7 +15,7 @@ COPY --from=stagex/libxml2 . /
|
|||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/musl . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR gettext-${VERSION}
|
||||
WORKDIR /gettext-${VERSION}
|
||||
RUN <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
|
@ -27,8 +27,8 @@ 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
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -19,7 +19,7 @@ COPY --from=stagex/zlib . /
|
|||
COPY --from=stagex/perl . /
|
||||
COPY --from=stagex/gettext . /
|
||||
RUN tar -xvf $SRC_FILE
|
||||
WORKDIR git-${VERSION}
|
||||
WORKDIR /git-${VERSION}
|
||||
ENV SOURCE_DATE_EPOCH=1
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
|
@ -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/. /
|
||||
|
|
66
packages/glib/Containerfile
Normal file
66
packages/glib/Containerfile
Normal file
|
@ -0,0 +1,66 @@
|
|||
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
|
||||
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/. /
|
|
@ -20,7 +20,7 @@ COPY --from=stagex/m4 . /
|
|||
COPY --from=stagex/gcc . /
|
||||
|
||||
RUN --network=none tar -xf ${SRC_FILE}
|
||||
WORKDIR gmp-${VERSION}
|
||||
WORKDIR /gmp-${VERSION}
|
||||
RUN --network=none <<EOF
|
||||
set -eux
|
||||
./configure \
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
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 . /
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR go-md2man-${VERSION}
|
||||
WORKDIR /go-md2man-${VERSION}
|
||||
ENV PWD=/home/user/go-md2man-${VERSION}
|
||||
ENV GOPATH=${PWD}/cache/go
|
||||
ENV GOCACHE=${PWD}/cache/
|
||||
|
@ -25,11 +25,11 @@ 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/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -39,7 +39,7 @@ RUN <<-EOF
|
|||
tar -xzf go${VERSION}.src.tar.gz; \
|
||||
mv go go-src
|
||||
EOF
|
||||
WORKDIR go-bootstrap-1-src
|
||||
WORKDIR /go-bootstrap-1-src
|
||||
ENV GOOS=linux
|
||||
ENV CGO_ENABLED=0
|
||||
ENV GOROOT_FINAL=/go-bootstrap-1
|
||||
|
@ -54,7 +54,7 @@ RUN --network=none <<-EOF
|
|||
mkdir -p ${DEST}
|
||||
cp -R bin lib pkg src ${DEST}
|
||||
EOF
|
||||
WORKDIR ../go-bootstrap-2-src
|
||||
WORKDIR /go-bootstrap-2-src
|
||||
ENV GO11MODULE=off
|
||||
ENV GOROOT_BOOTSTRAP=/go-bootstrap-1
|
||||
ENV GOROOT_FINAL=/go-bootstrap-2
|
||||
|
@ -69,7 +69,7 @@ RUN --network=none <<-EOF
|
|||
mkdir -p ${DEST}
|
||||
cp -R bin lib pkg src ${DEST}
|
||||
EOF
|
||||
WORKDIR ../go-bootstrap-3-src
|
||||
WORKDIR /go-bootstrap-3-src
|
||||
ENV GO11MODULE=off
|
||||
ENV GOROOT_BOOTSTRAP=/go-bootstrap-2
|
||||
ENV GOROOT_FINAL=/go-bootstrap-3
|
||||
|
@ -84,7 +84,7 @@ RUN --network=none <<-EOF
|
|||
mkdir -p ${DEST}
|
||||
cp -R bin lib pkg src ${DEST}
|
||||
EOF
|
||||
WORKDIR ../go-src
|
||||
WORKDIR /go-src
|
||||
ENV GOPROXY=off
|
||||
ENV GOTOOLCHAIN=local
|
||||
ENV GOFLAGS=-mod=vendor
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -16,7 +16,7 @@ COPY --from=stagex/make . /
|
|||
COPY --from=stagex/gcc . /
|
||||
|
||||
RUN --network=none tar -xf ${SRC_FILE}
|
||||
WORKDIR gperf-${VERSION}
|
||||
WORKDIR /gperf-${VERSION}
|
||||
RUN --network=none <<EOF
|
||||
set -eux
|
||||
./configure
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -19,7 +19,7 @@ COPY --from=stagex/libgpg-error . /
|
|||
COPY --from=stagex/libassuan . /
|
||||
COPY --from=stagex/libgcrypt . /
|
||||
RUN tar -xvf $SRC_FILE
|
||||
WORKDIR gnupg-${VERSION}
|
||||
WORKDIR /gnupg-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
./configure \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR grep-${VERSION}
|
||||
WORKDIR /grep-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
|
@ -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/. /
|
||||
|
|
38
packages/groff/Containerfile
Normal file
38
packages/groff/Containerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
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/. /
|
|
@ -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,25 +12,25 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR grpcurl-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp grpcurl /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -26,7 +26,7 @@ COPY --from=stagex/gettext . /
|
|||
COPY --from=stagex/xz . /
|
||||
COPY --from=stagex/linux-headers . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR grub-${VERSION}
|
||||
WORKDIR /grub-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux
|
||||
sh autogen.sh
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR gzip-${VERSION}
|
||||
WORKDIR /gzip-${VERSION}
|
||||
ENV FORCE_UNSAFE_CONFIGURE=1
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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,24 +13,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR helm-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp helm /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
39
packages/hunspell/Containerfile
Normal file
39
packages/hunspell/Containerfile
Normal file
|
@ -0,0 +1,39 @@
|
|||
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 -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/. /
|
|
@ -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 . /
|
||||
|
@ -22,7 +22,7 @@ COPY --from=stagex/make . /
|
|||
COPY --from=stagex/musl . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR icu/source
|
||||
WORKDIR /icu/source
|
||||
RUN --network=none <<-EOF
|
||||
./configure \
|
||||
--build=${ARCH}-linux-musl \
|
||||
|
@ -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 /
|
||||
|
|
51
packages/iptables/Containerfile
Normal file
51
packages/iptables/Containerfile
Normal file
|
@ -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/. /
|
|
@ -20,7 +20,7 @@ COPY --from=stagex/libxslt . /
|
|||
COPY --from=stagex/linux-headers . /
|
||||
COPY --from=stagex/ninja . /
|
||||
RUN tar -xzf ${SRC_FILE}
|
||||
WORKDIR iputils-${VERSION}
|
||||
WORKDIR /iputils-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -eux;
|
||||
./configure
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
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 . /
|
||||
COPY --from=stagex/make . /
|
||||
COPY --from=stagex/gcc . /
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR jq-${VERSION}
|
||||
WORKDIR /jq-${VERSION}
|
||||
RUN --network=none <<-EOF
|
||||
set -ex
|
||||
./configure \
|
||||
|
@ -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/. /
|
||||
|
|
|
@ -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 . /
|
||||
|
@ -19,7 +19,7 @@ COPY --from=stagex/gcc . /
|
|||
COPY --from=stagex/zlib . /
|
||||
|
||||
RUN tar -xf ${SRC_FILE}
|
||||
WORKDIR json-c-${VERSION}
|
||||
WORKDIR /json-c-${VERSION}
|
||||
RUN <<-EOF
|
||||
set -eux
|
||||
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/. /
|
||||
|
|
|
@ -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,24 +13,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR k9s-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp k9s /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
|
@ -10,13 +10,13 @@ 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 . /
|
||||
COPY --from=stagex/ca-certificates . /
|
||||
RUN tar xf ${SRC_FILE}
|
||||
WORKDIR keyfork
|
||||
WORKDIR /keyfork
|
||||
ADD <<-EOF /.cargo/config.toml
|
||||
[registries.distrust]
|
||||
index = "https://git.distrust.co/public/_cargo-index.git"
|
||||
|
@ -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 . /
|
||||
|
|
63
packages/krb5/Containerfile
Normal file
63
packages/krb5/Containerfile
Normal file
|
@ -0,0 +1,63 @@
|
|||
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/. /
|
|
@ -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,28 +13,28 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR ksops-dry-run-${VERSION}
|
||||
WORKDIR /ksops-dry-run-${VERSION}
|
||||
RUN go get ./...
|
||||
|
||||
FROM fetch as build
|
||||
FROM fetch AS build
|
||||
RUN --network=none \
|
||||
go build \
|
||||
-v \
|
||||
-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
|
||||
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/./ /
|
||||
|
|
|
@ -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,24 +13,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR kubeconform-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp bin/kubeconform /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
|
@ -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,24 +12,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR kubernetes-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp kubectl /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
|
@ -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,24 +13,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR kustomize-sops-${VERSION}
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/lib/kustomize/plugins/viduct.ai/v1/ksops
|
||||
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/./ /
|
||||
|
|
|
@ -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,24 +13,24 @@ 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 . /
|
||||
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
||||
RUN tar -xvf ${SRC_FILE}
|
||||
WORKDIR kustomize-${VERSION}/kustomize
|
||||
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
|
||||
FROM build AS install
|
||||
RUN <<-EOF
|
||||
set -eu
|
||||
mkdir -p /rootfs/usr/bin/
|
||||
cp kustomize /rootfs/usr/bin/
|
||||
EOF
|
||||
|
||||
FROM stagex/filesystem as package
|
||||
FROM stagex/filesystem AS package
|
||||
COPY --from=install /rootfs/./ /
|
||||
|
|
33
packages/libaio/Containerfile
Normal file
33
packages/libaio/Containerfile
Normal file
|
@ -0,0 +1,33 @@
|
|||
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
|
||||
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/. /
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue