diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..c75cca8bf5f8 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,106 @@ +# Maintainer: Jan Keith Darunday <aur@jkcdarunday.mozmail.com> +# Contributor: Jack Chen <redchenjs@live.com> + +_target=rockchip-rk3588 +_pkgbase="linux-$_target" +pkgbase="$_pkgbase-bin" +pkgname=("$pkgbase" "$pkgbase-headers") +pkgver=5.10.72 +_armbver=22.08.6 +_kernver="$pkgver-$_target" +pkgrel=1 +arch=('aarch64') +_desc="AArch64 multi-platform $_target" +url="https://github.com/armbian/build" +license=('GPL2') +options=('!strip') +provides=("$_pkgbase") +conflicts=("$_pkgbase") +source=( + "linux.preset" + "https://apt.armbian.com/pool/main/l/linux-$_kernver/linux-dtb-legacy-${_target}_${_armbver}_arm64.deb" + "https://apt.armbian.com/pool/main/l/linux-$_kernver/linux-image-legacy-${_target}_${_armbver}_arm64.deb" + "https://apt.armbian.com/pool/main/l/linux-$_kernver/linux-headers-legacy-${_target}_${_armbver}_arm64.deb" + ) +sha512sums=( + 'a492aae17ee4a316ce03faf9f1b284b2529c485f4b092cc4a1f865a6c68d482fd356fd30efa296c116975a3bdf3922f5bf03912a8d0e76f4ab24aa6ab9f8c276' + '20950d3177889cd593e008a6c9b94beb50b032cc7d247a0809bf21663403a8a94199da1e0e0461624bf6bb6f872b6236f31feb8d21985fb1b106e1cc1b84e841' + '9b1779851070a40221d4a6e4cae77eb2c813578ff2b362a5a66b39ff0fb84827f6a69563b1386add010efec05cf6dac81a4c2e64f06e0eb818999024566d3b06' + 'ca23262d8875a42d6fb25afa46ea7860574801d7c876af2eb79515ffd69ea270cbfee5fae5e43d8afe79cc8f3e439b73f55b179369ff30e05c84a9873724565b' + ) +noextract=("${source[@]##*/}") + +prepare() { + cd "$srcdir" + + rm -rf $(find -mindepth 1 -maxdepth 1 -type d) +} + +_package() { + pkgdesc="The Linux Kernel and modules - $_desc" + depends=('coreutils' 'linux-firmware' 'kmod' 'mkinitcpio>=0.7') + optdepends=('crda: to set the correct wireless channels of your country') + backup=("etc/mkinitcpio.d/$_pkgbase.preset") + provides=('WIREGUARD-MODULE') + conflicts=('linux') + + cd "$srcdir" + + ar x "linux-dtb-legacy-${_target}_${_armbver}_arm64.deb" + tar -xf data.tar.xz + ar x "linux-image-legacy-${_target}_${_armbver}_arm64.deb" + tar -xf data.tar.xz + + install -dm755 "$pkgdir/boot" + cp -r "boot/dtb-$_kernver" "$pkgdir/boot/dtbs" + + ln -s "vmlinuz-$_pkgbase" "$pkgdir/boot/Image" + + install -dm755 "$pkgdir/usr" + cp -r lib "$pkgdir/usr/lib" + + # sed expression for following substitutions + local _subst=" + s|%PKGBASE%|$_pkgbase|g + s|%KERNVER%|$_kernver|g + " + + # install mkinitcpio preset file + sed "$_subst" linux.preset | + install -Dm644 /dev/stdin "$pkgdir/etc/mkinitcpio.d/$_pkgbase.preset" + + # install boot image + install -Dm644 "boot/vmlinuz-$_kernver" "$pkgdir/usr/lib/modules/$_kernver/vmlinuz" + + # used by mkinitcpio to name the kernel + echo "$_pkgbase" | install -Dm644 /dev/stdin "$pkgdir/usr/lib/modules/$_kernver/pkgbase" +} + +_package-headers() { + pkgdesc="Header files and scripts for building modules for linux kernel - $_desc" + conflicts=('linux-headers') + + cd "$srcdir" + + ar x "linux-image-legacy-${_target}_${_armbver}_arm64.deb" + tar -xf data.tar.xz + ar x "linux-headers-legacy-${_target}_${_armbver}_arm64.deb" + tar -xf data.tar.xz + + install -dm755 "$pkgdir/usr/lib/modules/$_kernver" + cp -r "usr/src/linux-headers-$_kernver" "$pkgdir/usr/lib/modules/$_kernver/build" + + install -Dm644 "boot/config-$_kernver" "$pkgdir/usr/lib/modules/$_kernver/build/.config" + install -Dm644 "boot/System.map-$_kernver" "$pkgdir/usr/lib/modules/$_kernver/build/System.map" + + # add real version for building modules and running depmod from hook + echo "$_kernver" | + install -Dm644 /dev/stdin "$pkgdir/usr/lib/modules/$_kernver/build/version" +} + +for _p in "${pkgname[@]}"; do + eval "package_$_p() { + $(declare -f "_package${_p#$pkgbase}") + _package${_p#$pkgbase} + }" +done |