aports/main/zfs/APKBUILD
2025-01-26 12:59:59 +00:00

120 lines
2.4 KiB
Text

# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=zfs
pkgver=2.3.0
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"
# 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="
f0bb1c6e28b325765be809dbc5d38ba294daa38b54eafd7d129cf6081fb209b200580437019faeed3614bbb0687d6583698a9282f3275905a1f5a8314a66cf0b zfs-2.3.0.tar.gz
"