# Maintainer: Yardena Cohen # tracks: https://projects.archlinux.org/svntogit/packages.git/log/trunk?h=packages/linux pkgname=linux-linode _basekernel=5.13.17 _hardenedver=1 pkgrel=1 _kernelname=${pkgname#linux} _srcname=linux-${_basekernel} _patchname=linux-hardened pkgver_=${_basekernel}-hardened${_hardenedver} pkgver=${pkgver_/-/.} arch=('x86_64') url="https://github.com/yardenac/linux-linode" license=(GPL2) makedepends=(xmlto docbook-xsl kmod inetutils bc libelf) options=('!strip') source=("https://www.kernel.org/pub/linux/kernel/v5.x/${_srcname}.tar."{xz,sign} "https://github.com/anthraxx/${_patchname}/releases/download/${pkgver_}/${_patchname}-${pkgver_}.patch"{,.sig} 'config' '08_linux_linode' '99-grub-ll.hook' 'menu.lst' 'preset') sha512sums=('1de6c0fe3d06e414b1f9bb29f37f37280412bc7b1eb9fdb173af9ff997eb72c3e49219c5974cea5c7afbe2ca47f380a2213e7281d0d01a76a8bc4df0cf1049f9' 'SKIP' 'a75caade2cf2cbc081bb14c6a5cf987b05619a3e30750193643d0669ee69b6a2c4b6295aef8213873fada5551e9b5af247ae97f290ee2db9739d6717c400b64e' 'SKIP' '290643e8bcc424a1bc89b1e6e56ecd3c84f6bbbc3ec3d3d4fc8ec5bce7103a2c09bd20e7100d49460b251d5bd94a9909dd0881d314b2971f9f8630c5b88a3b28' '1e901b8894743e9dcb04046a5fa58e14b19095b3295abae679dcbbf309bd79ddf1716dcd07ae8a71e7cdc9361216c0c9da12a76edb45e9388c512b07df7759e7' 'db9080b2548e4dcd61eaaf20cd7d37cbbc8c204ce85a2e3408d0671f6b26010f77a61affd2c77e809768714eca29d3afb64765a3f2099317a2c928eff3feb4cf' '1a17f83747ebd2dbe8d57996a1234f9e72de0754f8907c984477d761c2d99753490b72d80e2c801b85ded705818d530401f6377e3312937d72d1e4052007ce30' 'a0a78831075336edef0a8faa34fa550986c3c4d89a89f4f39d798da0211129dc90257d162bec2cdefabef2eb5886a710e70c72074b2f3016788861d05d1e2a1f') sha256sums=('4ae70d23ed53bad6d53a3a159d235b8696595466f221986025f4a0ce111b0a1b' 'SKIP' 'e20a684952c7e29a67f38908e556a00a55f62d9f28abc6de8d77096f4761f8a2' 'SKIP' '8b32e50661c2cbc53a5b22270a7585649cf9e6b940ce78f19f1c622f8c9b5e2c' 'a2295cee5ae8c8d9c3efb0483e5e842f6bd9753f851c7433465b242264738546' '368fb58e7aa465f597e9a72da4b6eea4183c1a85242173412d54ad18d10d8fb3' 'df9f20f818bf6c11296e5ac58c5fdd664ba17f3d80cf301eef9309ddb528741d' '33d9f913e4aed9f41bf263ff784921ab7d69597732079cbd06ff05b9adb32f44') md5sums=('a04d0662d0191d36583d41351ae96c43' 'SKIP' '87d8b8d1c1c7dbac27bfa1f0dc684820' 'SKIP' 'b994fbdc0d3d8d583ca95100588fcf15' 'b24775bcf1d7a04c1d489af73c6e74b0' '625481f015365febcd65aa136ee555f9' '901c03c685c65119b50666cb31a080be' '3d6427cc412dbc226b5d058c82ba7c66') validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linux Torvalds '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman 'E240B57E2C4630BA768E2F26FC1B547C8D8172C8' # Levente Polyak ) pkgdesc="Kernel for Linode servers" depends=(coreutils linux-firmware kmod mkinitcpio grub) conflicts=(grub-legacy) backup=(etc/mkinitcpio.d/${pkgname}.preset boot/grub/menu.lst) prepare() { cd "${srcdir}/${_srcname}" patch -p1 -i "${srcdir}/${_patchname}-${pkgver_}.patch" sed -e "/^EXTRAVERSION =/s/=.*/= .hardened${_hardenedver}/" -i Makefile scripts/setlocalversion --save-scmversion cp "${srcdir}/config" .config make oldconfig make -s kernelrelease > ../version } build() { cd "${srcdir}/${_srcname}" [[ "$MAKEFLAGS" =~ -j[0-9]* ]] || MAKEFLAGS+=" -j$(nproc)" ionice -c 3 nice -n 16 make ${MAKEFLAGS} bzImage modules } package() { cd "${srcdir}/${_srcname}" local _kernver="$(<${srcdir}/version)" local modulesdir="$pkgdir"/usr/lib/modules/$_kernver mkdir -p "$modulesdir" "${pkgdir}"/boot/grub make INSTALL_MOD_PATH="${pkgdir}/usr" modules_install rm -rf "$modulesdir"/{source,build} echo "$pkgname" | install -Dm644 /dev/stdin "$modulesdir/pkgbase" install -D -m644 "$(make -s image_name)" "$modulesdir/vmlinuz" install -D -m644 "${srcdir}/preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" install -D -m755 "${srcdir}/08_linux_linode" "${pkgdir}/etc/grub.d/08_linux_linode" install -D -m644 "${srcdir}/99-grub-ll.hook" "${pkgdir}/usr/share/libalpm/hooks/99-grub-ll.hook" sed "s/%VER%/${pkgver}-${pkgrel}/ig" "${srcdir}/menu.lst" > "${pkgdir}/boot/grub/menu.lst" chmod -Rc u=rwX,go=rX "$pkgdir" }