feat: update various packages to v3.16.2

This commit is contained in:
Stefan Reimer 2022-08-16 14:41:09 +02:00
parent e662785fa7
commit b382eb241c
10 changed files with 113 additions and 261 deletions

5
.gitignore vendored
View File

@ -2,8 +2,3 @@ aports
distfiles
packages
work
main
testing
unmaintained
community

View File

@ -17,8 +17,9 @@ aports:
git clone https://gitlab.alpinelinux.org/alpine/aports.git --depth=1
aports_update: aports
GIT_DIR=aports/.git git fetch origin -p
GIT_DIR=aports/.git git pull origin master
GIT_DIR=aports/.git cd aports; git reset --hard
GIT_DIR=aports/.git cd aports; git fetch origin -p
GIT_DIR=aports/.git cd aports; git pull -p --squash origin master
# Mounts release into /work of the builder container to build all
build: packages distfiles aports_update work

View File

@ -1,3 +1,26 @@
# alpine
Alpine Linux aports repository
==============================
Zero Down Time - Alpine repository
This repository contains the APKBUILD files for each and every
Alpine Linux package, along with the required patches and scripts,
if any.
It also contains some extra files and directories related to testing
(and therefore, building) those packages on GitLab (via GitLab CI).
If you want to contribute, please read the
[contributor guide](https://wiki.alpinelinux.org/wiki/Alpine_Linux:Contribute)
and feel free to either submit a git patch on the Alpine aports
mailing list (~alpine/aports@lists.alpinelinux.org), or to submit a
merge request on [GitLab](https://gitlab.alpinelinux.org/alpine/aports).
Git Hooks
---------
You can find some useful git hooks in the `.githooks` directory.
To use them, run the following command after cloning this repository:
```sh
git config --local core.hooksPath .githooks
```

View File

@ -1,155 +0,0 @@
#!/bin/sh
set -e
TARGET_ARCH="$1"
SUDO_APK=abuild-apk
# optional cross build packages
: ${KERNEL_PKG=linux-firmware linux-lts}
# get abuild configurables
[ -e /usr/share/abuild/functions.sh ] || (echo "abuild not found" ; exit 1)
CBUILDROOT="$(CTARGET=$TARGET_ARCH . /usr/share/abuild/functions.sh ; echo $CBUILDROOT)"
. /usr/share/abuild/functions.sh
[ -z "$CBUILD_ARCH" ] && die "abuild is too old (use 2.29.0 or later)"
[ -z "$CBUILDROOT" ] && die "CBUILDROOT not set for $TARGET_ARCH"
export CBUILD
# deduce aports directory
[ -z "$APORTS" ] && APORTS=$(realpath $(dirname $0)/../)
[ -e "$APORTS/main/build-base" ] || die "Unable to deduce aports base checkout"
apkbuildname() {
local repo="${1%%/*}"
local pkg="${1##*/}"
[ "$repo" = "$1" ] && repo="main"
echo $APORTS/$repo/$pkg/APKBUILD
}
msg() {
[ -n "$quiet" ] && return 0
local prompt="$GREEN>>>${NORMAL}"
local name="${BLUE}bootstrap-${TARGET_ARCH}${NORMAL}"
printf "${prompt} ${name}: %s\n" "$1" >&2
}
if [ -z "$TARGET_ARCH" ]; then
program=$(basename $0)
cat <<EOF
usage: $program TARGET_ARCH
This script creates a local cross-compiler, and uses it to
cross-compile an Alpine Linux base system for new architecture.
Steps for introducing new architecture include:
- adding the compiler triplet and arch type to abuild
- adding the arch type detection to apk-tools
- adjusting build rules for packages that are arch aware:
gcc, openssl, linux-headers
- create new kernel config for linux-lts
After these steps the initial cross-build can be completed
by running this with the target arch as parameter, e.g.:
./$program aarch64
The cross-compiler generated by this script is not intended
nor supported for any use other than building the base system
and other packages in the bootstrap path.
EOF
return 1
fi
if [ ! -d "$CBUILDROOT" ]; then
msg "Creating sysroot in $CBUILDROOT"
mkdir -p "$CBUILDROOT/etc/apk/keys"
# /etc/apk/keys and ~/.abuild/ can contain files with the same names.
# if that is the case, cp will abort copying and fail. Then on the next
# run of the bootstrap script, 1) the keys are not in the sysroot and
# 2) the apk database is not initialized the sysroot
# Thus it's unusable at that point and needs to be deleted manually.
cp -a /etc/apk/keys/* "$CBUILDROOT/etc/apk/keys"
cp -a ~/.abuild/*.pub "$CBUILDROOT/etc/apk/keys"
${SUDO_APK} add --quiet --initdb --arch $TARGET_ARCH --root $CBUILDROOT
fi
msg "Building cross-compiler"
# Build and install cross binutils (--with-sysroot)
CTARGET=$TARGET_ARCH BOOTSTRAP=nobase APKBUILD=$(apkbuildname binutils) abuild -r
if ! CHOST=$TARGET_ARCH BOOTSTRAP=nolibc APKBUILD=$(apkbuildname musl) abuild up2date 2>/dev/null; then
# C-library headers for target
CHOST=$TARGET_ARCH BOOTSTRAP=nocc APKBUILD=$(apkbuildname musl) abuild -r
# Minimal cross GCC
EXTRADEPENDS_HOST="musl-dev" \
CTARGET=$TARGET_ARCH BOOTSTRAP=nolibc APKBUILD=$(apkbuildname gcc) abuild -r
# Cross build bootstrap C-library for the target
EXTRADEPENDS_BUILD="gcc-pass2-$TARGET_ARCH" \
CHOST=$TARGET_ARCH BOOTSTRAP=nolibc APKBUILD=$(apkbuildname musl) abuild -r
fi
# Full cross GCC
EXTRADEPENDS_TARGET="musl musl-dev" \
CTARGET=$TARGET_ARCH BOOTSTRAP=nobase APKBUILD=$(apkbuildname gcc) abuild -r
# Cross build-base
CTARGET=$TARGET_ARCH BOOTSTRAP=nobase APKBUILD=$(apkbuildname build-base) abuild -r
msg "Cross building base system"
# Implicit dependencies for early targets
EXTRADEPENDS_TARGET="libgcc libstdc++ musl-dev"
# On a few architectures like riscv64 we need to account for
# gcc requiring -ltomic to be set explicitly if a C[++]11 program
# uses atomics (e.g. #include <atomic>):
# https://github.com/riscv/riscv-gnu-toolchain/issues/183#issuecomment-253721765
# The reason gcc itself is needed is because .so is in that package,
# not in libatomic.
if [ "$TARGET_ARCH" = "riscv64" ]; then
NEEDS_LIBATOMIC="yes"
fi
# ordered cross-build
for PKG in fortify-headers linux-headers musl libc-dev pkgconf zlib \
openssl ca-certificates libmd \
gmp mpfr4 mpc1 isl22 cloog libucontext binutils gcc \
libbsd libretls busybox busybox-initscripts make \
apk-tools file \
libcap openrc alpine-conf alpine-baselayout alpine-keys alpine-base patch build-base \
attr acl fakeroot tar \
lzip abuild ncurses libedit openssh \
libcap-ng util-linux libaio lvm2 popt xz \
json-c argon2 cryptsetup zstd kmod lddtree mkinitfs \
community/go libffi community/ghc \
brotli libev c-ares cunit nghttp2 curl \
pcre libssh2 community/http-parser community/libgit2 \
libxml2 pax-utils llvm13 community/rust \
$KERNEL_PKG ; do
if [ "$NEEDS_LIBATOMIC" = "yes" ]; then
EXTRADEPENDS_BUILD="libatomic gcc-$TARGET_ARCH g++-$TARGET_ARCH"
fi
EXTRADEPENDS_TARGET="$EXTRADEPENDS_TARGET" EXTRADEPENDS_BUILD="$EXTRADEPENDS_BUILD" \
CHOST=$TARGET_ARCH BOOTSTRAP=bootimage APKBUILD=$(apkbuildname $PKG) abuild -r
case "$PKG" in
fortify-headers | libc-dev)
# Additional implicit dependencies once built
EXTRADEPENDS_TARGET="$EXTRADEPENDS_TARGET $PKG"
;;
gcc)
if [ "$NEEDS_LIBATOMIC" = "yes" ]; then
EXTRADEPENDS_TARGET="libatomic gcc $EXTRADEPENDS_TARGET"
fi
;;
build-base)
# After build-base, that alone is sufficient dependency in the target
EXTRADEPENDS_TARGET="busybox $PKG"
;;
esac
done

View File

@ -1,90 +0,0 @@
profile_standard() {
title="Standard"
desc="Alpine as it was intended.
Just enough to get you started.
Network connection is required."
profile_base
profile_abbrev="std"
image_ext="iso"
arch="aarch64 armv7 x86 x86_64 ppc64le riscv64 s390x"
output_format="iso"
kernel_addons="xtables-addons"
case "$ARCH" in
s390x)
apks="$apks s390-tools"
initfs_features="$initfs_features dasd_mod qeth zfcp"
initfs_cmdline="modules=loop,squashfs,dasd_mod,qeth,zfcp quiet"
;;
ppc64le)
initfs_cmdline="modules=loop,squashfs,sd-mod,usb-storage,ibmvscsi quiet"
;;
riscv64)
kernel_flavors="edge"
kernel_cmdline="console=tty0 console=ttyS0,115200 console=ttySIF0,115200"
kernel_addons=
;;
esac
}
profile_extended() {
profile_standard
profile_abbrev="ext"
title="Extended"
desc="Most common used packages included.
Suitable for routers and servers.
Runs from RAM.
Includes AMD and Intel microcode updates."
arch="x86 x86_64"
kernel_addons="xtables-addons zfs"
boot_addons="amd-ucode intel-ucode"
initrd_ucode="/boot/amd-ucode.img /boot/intel-ucode.img"
apks="$apks
coreutils ethtool hwids doas
logrotate lsof lm_sensors lxc lxc-templates nano
pciutils strace tmux
usbutils v86d vim xtables-addons curl
acct arpon arpwatch awall bridge-utils bwm-ng
ca-certificates conntrack-tools cutter cyrus-sasl dhcp
dhcpcd dhcrelay dnsmasq fping fprobe htop
igmpproxy ip6tables iproute2 iproute2-qos
iptables iputils irssi ldns-tools links
ncurses-terminfo net-snmp net-snmp-tools nrpe nsd
opennhrp openvpn pingu ppp quagga
quagga-nhrp rng-tools sntpc socat ssmtp strongswan
sysklogd tcpdump tinyproxy unbound
wireguard-tools wireless-tools wpa_supplicant zonenotify
btrfs-progs cksfv dosfstools cryptsetup
e2fsprogs e2fsprogs-extra efibootmgr f2fs-tools
grub-bios grub-efi lvm2 mdadm mkinitfs mtools nfs-utils
parted rsync sfdisk syslinux util-linux xfsprogs zfs
"
local _k _a
for _k in $kernel_flavors; do
apks="$apks linux-$_k"
for _a in $kernel_addons; do
apks="$apks $_a-$_k"
done
done
apks="$apks linux-firmware linux-firmware-none"
}
profile_virt() {
profile_standard
profile_abbrev="virt"
title="Virtual"
desc="Similar to standard.
Slimmed down kernel.
Optimized for virtual systems."
arch="aarch64 armv7 x86 x86_64"
kernel_addons=
kernel_flavors="virt"
local serial_console="ttyS0,115200"
case "$ARCH" in
arm*|aarch64) serial_console="ttyAMA0";;
esac
kernel_cmdline="console=tty0 console=$serial_console"
syslinux_serial="0 115200"
}

View File

@ -2,7 +2,7 @@
# Maintainer: Stefan Reimer <stefan@zero-downtime.net>
pkgname=aws-neuron-driver
pkgver=2.3.11.0
pkgrel=0
pkgrel=1
pkgdesc="Linux Kernel module for AWS Neuron INF instances"
url="https://awsdocs-neuron.readthedocs-hosted.com/en/latest/release-notes/index.html#"
arch="x86_64"
@ -33,8 +33,8 @@ build() {
package() {
KERNEL_VERSION=$(basename $(ls -d /lib/modules/*-virt))
mkdir -p "$pkgdir"/lib/modules/$KERNEL_VERSION "$pkgdir"/lib/udev/rules.d
cp neuron.ko "$pkgdir"/lib/modules/$KERNEL_VERSION
mkdir -p "$pkgdir"/lib/modules/$KERNEL_VERSION/kernel "$pkgdir"/lib/udev/rules.d
gzip -9 -c neuron.ko > "$pkgdir"/lib/modules/$KERNEL_VERSION/kernel/neuron.ko.gz
echo 'KERNEL=="neuron*", MODE="0666"' > "$pkgdir"/lib/udev/rules.d/90-neuron-udev.rules

35
v3.16/conmon/APKBUILD Normal file
View File

@ -0,0 +1,35 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=conmon
pkgver=2.1.2
pkgrel=1
pkgdesc="OCI container runtime monitor"
url="https://github.com/containers/conmon"
license="Apache-2.0"
arch="all"
makedepends="bash go-md2man glib-dev libseccomp-dev"
subpackages="$pkgname-doc"
source="https://github.com/containers/conmon/archive/v$pkgver/conmon-$pkgver.tar.gz"
prepare() {
default_prepare
# fix location of go-md2man
sed -E "s/(GOMD2MAN =).*/\1 go-md2man/" -i docs/Makefile
}
build() {
make
}
check() {
./bin/conmon --version
}
package() {
make install PREFIX=/usr DESTDIR="$pkgdir"
}
sha512sums='
98bc7873207dd9ddf70bae403bf052b94c5ef053929be2383f4c1bbccc040dbdd3241e64df5cb6e2c80f006ec32947cd15de8bbf039be1d62fe7d4342bd378b1 conmon-2.1.2.tar.gz
'

View File

@ -1,7 +1,7 @@
# Contributor: Stefan Reimer <stefan@zero-downtime.net>
# Maintainer: Stefan Reimer <stefan@zero-downtime.net>
pkgname=fluent-bit
pkgver=1.9.5
pkgver=1.9.7
pkgrel=0
pkgdesc="Fast and Lightweight Log processor and forwarder"
url="https://fluentbit.io/"
@ -15,7 +15,8 @@ makedepends="
fts-dev
gtest-dev
zlib-dev
yaml-cpp-dev
yaml-dev
yaml-static
"
subpackages="
$pkgname-dev
@ -81,7 +82,7 @@ package() {
}
sha512sums='
2e821a703a38275548efced15b15d3a356afe05e9cd382de12c32549de6fcdb0b8d40e0b6c8d43575d75b0c878822e0e1302634f8e78b39385b5ac8c4cabe2de fluent-bit-1.9.5.tar.gz
99e36f5dc6772113ecc09fa74b13e97896c73ce3ffd2e82e702a350c47614fdadc9b534e61a431e5954b5d04dcc758e8cd0739a541f6167740b183ecfcc857ed fluent-bit-1.9.6.tar.gz
f6431397c80a036980b5377b51e38aec25dfceeb8dbe4cd54dce1f6e77d669d9f8daf983fcc96d25332385888f1809ced5e8ab0e8ccfcd93d19494036e3dc949 fluent-bit.confd
8ba6c8e84dee90176f9b4375fb2c6444fa5d32fa601d9bcf3ea7960fec87f1ef664f175caf08bd0b052843e971efdbf08e2a5cd180ad9a8f23ff2c5cb233814f fluent-bit.initd
6bd7d8b4da93a17f29b6ea1e0286ea226d0e376024284741110936779b3229bd8d6cd03ffbdc5d3b4842294e7f32a888de0dd16b0851b65d91b062ca58530ea0 chunkio-static-lib-fts.patch

View File

@ -4,7 +4,7 @@
# Contributor: Dave <dj.2dixx@gmail.com>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=kubernetes
pkgver=1.23.8
pkgver=1.23.9
pkgrel=0
pkgdesc="Container Cluster Manager"
url="https://kubernetes.io/"

View File

@ -0,0 +1,42 @@
# Contributor: Stefan Reimer <stefan@zero-downtime.net>
# Maintainer: Stefan Reimer <stefan@zero-downtime.net>
pkgname=nvidia-open-gpu
pkgver=515.57
pkgrel=1
pkgdesc="NVIDIA Linux open GPU kernel modules"
url="https://github.com/NVIDIA/open-gpu-kernel-modules"
arch="x86_64"
license="MIT OR GPL-2.0"
makedepends="bash linux-headers linux-virt-dev"
options="!check"
source="nvidia-$pkgver.tar.gz::https://github.com/NVIDIA/open-gpu-kernel-modules/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/open-gpu-kernel-modules-$pkgver"
build() {
# Hack running the build inside a container other uname -r returns host kernel
KERNEL_VERSION=$(basename $(ls -d /lib/modules/*-virt))
make KERNEL_UNAME=$KERNEL_VERSION
}
package() {
KERNEL_VERSION=$(basename $(ls -d /lib/modules/*-virt))
modules="nvidia.ko \
nvidia-drm.ko \
nvidia-modeset.ko \
nvidia-uvm.ko \
nvidia-peermem.ko"
mkdir -p "$pkgdir"/lib/modules/$KERNEL_VERSION/kernel
for m in $modules; do
gzip -9 -c kernel-open/$m > "$pkgdir"/lib/modules/$KERNEL_VERSION/kernel/$m.gz
done
depends="linux-virt=$(apk info linux-virt -d | grep description: | awk '{print $1}' | sed -e 's/linux-virt-//')"
}
sha512sums='
93d59bf0bb1eede40036dd65c8ef956c7b9a79f3a2fe6e87b6f4f16413e52b3c8cdb47aacbcd4c087bd77081a2d35fc1981db93019e352b8a8f85083a9221461 nvidia-515.57.tar.gz
'