aports/main/zfs/APKBUILD
2025-05-05 10:12:28 +00:00

123 lines
2.6 KiB
Text

# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=zfs
pkgver=2.3.2
pkgrel=0
pkgdesc="Advanced filesystem and volume manager"
url="https://openzfs.org"
arch="all"
license="CDDL-1.0"
provides="spl=$pkgver-r$pkgrel" # Mitigate upgrade conflicts
depends_dev="
attr-dev
e2fsprogs-dev
glib-dev
libtirpc-dev
openssl-dev>3
"
makedepends="
$depends_dev
linux-headers
py3-cffi
py3-distlib
py3-setuptools
python3-dev
util-linux-dev
"
options="!check" # need to be run on live system w/ ZFS loaded.
subpackages="
$pkgname-bash-completion
$pkgname-dev
$pkgname-doc
$pkgname-dracut::noarch
$pkgname-libs
$pkgname-openrc
$pkgname-scripts
$pkgname-udev
$pkgname-utils-py:utils_py:noarch
py3-pyzfs-pyc
py3-pyzfs:pyzfs:noarch
"
source="https://github.com/openzfs/zfs/releases/download/zfs-$pkgver/zfs-$pkgver.tar.gz
tests-fix-S_IFMT-undeclared-at-statx.c.patch
"
# secfixes:
# 2.2.1-r1:
# - CVE-2023-49298
build() {
export CFLAGS="$CFLAGS -fno-tree-vectorize"
export CXXFLAGS="$CXXFLAGS -fno-tree-vectorize"
export LIBS="$LIBS -lintl"
./configure --prefix=/usr \
--with-tirpc \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--localstatedir=/var \
--with-config=user \
--with-udevdir=/usr/lib/udev \
--disable-systemd \
--disable-static \
--with-python=3 \
--enable-pyzfs
make
}
package() {
make DESTDIR="$pkgdir" install
# no initramfs-tools
rm -rf "$pkgdir"/usr/share/initramfs-tools
# we use doas(1)
rm -rf "$pkgdir"/etc/sudoers.d
# zfs-mount-generator is a systemd.generator(7)
rm "$pkgdir"/usr/share/man/man8/zfs-mount-generator*
# Fix permissions of zfs OpenRC service configuration (#13840)
chmod 644 "$pkgdir"/etc/conf.d/zfs
}
dracut() {
pkgdesc="$pkgdesc (dracut)"
install_if="$pkgname=$pkgver-r$pkgrel dracut-modules"
amove usr/lib/dracut
}
udev() {
pkgdesc="$pkgdesc (udev)"
amove usr/lib/udev
}
scripts() {
pkgdesc="$pkgdesc (scripts)"
amove usr/share/zfs
}
utils_py() {
pkgdesc="$pkgdesc (python utils)"
depends="python3"
amove usr/bin/arc_summary
amove usr/bin/arcstat
amove usr/bin/dbufstat
amove usr/bin/zilstat
}
pyzfs() {
pkgdesc="$pkgdesc (Python lib to interact with ZFS)"
depends="python3 $pkgname"
amove usr/lib/python3*
}
sha512sums="
94311f2eca1488be83aa0cb802b4a4541bbbd061a3e8e5cbda62cabbb0c8f9a705372ad192cb77703b3d7642c43be7f604f3c363b243cf03a6aceae2d7e5db81 zfs-2.3.2.tar.gz
3a6742c19b860577862558af722f362d321e83aa1f5445165b629f0482119f42ded9b9f823c801f504dccfd0191a78d7fb82b41c8bd0d6b0f1618f2239319efc tests-fix-S_IFMT-undeclared-at-statx.c.patch
"