From 50f9e834cdefbb5825f0dbd93adb8557cd029296 Mon Sep 17 00:00:00 2001 From: Jaron Kent-Dobias Date: Sat, 21 Sep 2024 11:55:48 +0200 Subject: PKGBUILD for including zfs --- PKGBUILD | 56 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 45 insertions(+), 11 deletions(-) (limited to 'PKGBUILD') diff --git a/PKGBUILD b/PKGBUILD index ea8909f..73e3f98 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -3,7 +3,9 @@ # Contributor: Jan Alexander Steffens (heftig) pkgbase=linux-raspberrypi4 -pkgver=6.10.10.rpi1 +_kver=6.6.52.rpi1 +_zver=2.2.6 +pkgver="${_kver}_${_zver}" pkgrel=1 pkgdesc='Raspberry Pi Linux' url='https://git.kent-dobias.com/system/linux' @@ -26,10 +28,11 @@ makedepends=( lld ) options=('!strip') -_srcname=linux-${pkgver%.*} -_srctag=v${pkgver%.*}-${pkgver##*.} +_srcname=linux-v${_kver%.*}-${_kver##*.} +_srctag=v${_kver%.*}-${_kver##*.} source=( - $pkgbase::"git+file:///home/pants/dev/linux#tag=$_srctag" + "https://git.kent-dobias.com/system/linux/snapshot/linux-${_srctag}.tar.gz" + "git+https://github.com/openzfs/zfs#tag=zfs-${_zver}" config # the main kernel config file ) validpgpkeys=( @@ -39,10 +42,12 @@ validpgpkeys=( 0E3A444DD0760E65901BF59679E824090BD31086 # Jaron Kent-Dobias ) # https://www.kernel.org/pub/linux/kernel/v6.x/sha256sums.asc -sha256sums=('034ae3b6ac3a3ccdcb7f18f6876b956e3cb311dc00b9eeaf284c660bb9c86a2e' - 'bcf31414a6e29e3fc2bb527b5014a5bc78af380c16095dc687f00968fdcf8201') -b2sums=('f433d79ba15d33200fc141a6041e778be1bb613e7b7df370f1bd2a65fb77a0cf34ed3831588b0ef9092ccb958c2933343637a06c260cc7dafb972c03323facfe' - '375e89d633ded08d64fa5dfbc4d468f1515a4ba58004ed874fb57b78cd35d5d1626a213d0bdc83bc8b7950659fb6a35f4139137ab7799d2b8306e3b67af1578f') +sha256sums=('b6bc6067d368fffe69845bedd8bd613ee9d1c04c5acbb243b381256d4d67e273' + '3db3f14e911a4e8a221b0291a2e8bade3c66e1f250714eeea9e04fa0e37399ab' + '2b385a47563f4af40e961003b92dab82922332146b6c5fb8438a44909ae721d3') +b2sums=('9023b4bfee6ad63334a62835912868af776d73dd3caae91ec1d382c7aaa0de37797891d6d66d35315fb0bba3574911d775bc6fbbda03d2085e9bdb493e8d8e0d' + 'd4e6f96d50e1be4da081f47b011c339aad69701fb28e3f70ea873f36e48ad641539991957f6124bb71902c270986a15aec2589002fd6fd8369a519ae6ce34a0e' + 'cdae71b1ac7484b15e525ff969fbf6e939a5aaa6e3e8a1cfb460d76f5b39dafbbdfe14924438c3fff049160cbad1a8f6ba39ccd4c13a5a0b249f45d98908680a') export KBUILD_BUILD_HOST=archlinux export KBUILD_BUILD_USER=$pkgbase @@ -51,7 +56,7 @@ export ARCH=arm64 export LLVM=1 prepare() { - cd $pkgbase + cd "${_srcname}" echo "Setting version..." echo "-$pkgrel" > localversion.10-pkgrel @@ -59,6 +64,34 @@ prepare() { echo "Setting config..." cp ../config .config + make olddefconfig + make prepare + + cd ../zfs + + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + src="${src%.zst}" + [[ $src = *.patch && $src = zfs* ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done + + ./autogen.sh + KERNEL_LLVM=1 CC=clang \ + ./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --with-mounthelperdir=/usr/bin \ + --libdir=/usr/lib --datadir=/usr/share --includedir=/usr/include \ + --with-udevdir=/usr/lib/udev --libexecdir=/usr/lib \ + --enable-systemd --enable-pyzfs \ + --with-zfsexecdir=/usr/lib/zfs --localstatedir=/var \ + --enable-linux-builtin --with-linux=../$_srcname + ./copy-builtin ../$_srcname + + cd ../$_srcname + + cp ../config .config + make olddefconfig diff -u ../config .config || : @@ -67,7 +100,7 @@ prepare() { } build() { - cd $pkgbase + cd $_srcname make all # make htmldocs } @@ -87,13 +120,14 @@ _package() { KSMBD-MODULE VIRTUALBOX-GUEST-MODULES WIREGUARD-MODULE + zfs ) replaces=( virtualbox-guest-modules-arch wireguard-arch ) - cd $pkgbase + cd $_srcname local modulesdir="$pkgdir/usr/lib/modules/$(