# Reference: # Maintainer: Alistair Francis # Co-Maintainer: Newbyte # Contributor: Clayton Craft pkgname=linux-purism-librem5 pkgver=6.6.83 pkgrel=0 # NOTE: Don't forget to rebase the config! See prepare() for instructions. _purismrel=1 _pureosrel=cri1 # + + _purismver=${pkgver}pureos${_purismrel}_$_pureosrel pkgdesc="Purism Librem 5 phone kernel fork" arch="aarch64" _carch="arm64" _flavor="purism-librem5" url="https://source.puri.sm/Librem5/linux" license="GPL-2.0-only" options="!strip !check !tracedeps pmb:cross-native pmb:kconfigcheck-community pmb:kconfigcheck-librem5 " makedepends=" bash bison devicepkg-dev findutils flex installkernel openssl-dev perl rsync xz " install="$pkgname.post-upgrade" # Source _repository="linux" # kconfig generated with: ARCH=arm64 make defconfig KBUILD_DEFCONFIG=librem5_defconfig _config="config-$_flavor.$arch" source=" $pkgname-$_purismver.tar.gz::https://source.puri.sm/Librem5/linux/-/archive/pureos/$_purismver/linux-pureos-$_purismver.tar.gz $_config " builddir="$srcdir/$_repository-pureos-$_purismver" prepare() { default_prepare REPLACE_GCCH=0 \ . downstreamkernel_prepare ####### Rebase config # The kernel config needs to be periodically rebased to enable new # modules/features that Purism has enabled in their defconfig. This is done # by: 1) generate .config using librem5_defconfig, 2) diff that .config # with the config in this package, 3) carefully going over the diff and # selecting new things enabled in their config. # # This can be uncommented to help generate the defconfig using "pmbootstrap # build linux-purism-librem5". The build will fail (exit 1) to let you grab # the config before it starts building the kernel: # make ARCH="$_carch" CC="${CC:-gcc}" \ # defconfig KBUILD_DEFCONFIG=librem5_defconfig # exit 1 # # After that run the following # cp \ # device/main/linux-purism-librem5/config-purism-librem5.aarch64 # pmbootstrap kconfig edit linux-purism-librem5 # pmbootstrap kconfig check linux-purism-librem5 } build() { unset LDFLAGS make ARCH="$_carch" CC="${CC:-gcc}" \ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" \ LOCALVERSION=".$_purismrel" } package() { downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor" make modules_install dtbs_install \ ARCH="$_carch" \ INSTALL_MOD_PATH="$pkgdir" \ INSTALL_DTBS_PATH="$pkgdir/boot/dtbs" } sha512sums=" 08d60042f3a314b8210f6d2ba20d85fe693f759620e54784f2e06d62036c96a93a8081dde13e7c5e1ad35fbfadc0bb2c92b744c5cd7d4faa3b21b46628961eea linux-purism-librem5-6.6.83pureos1_cri1.tar.gz 54fa674f73dca3f03e0e9a54075ec661a0b7d4b773b55d0ea13cb930ebe15e52c97140b689cdce44c6895954fb0b310af5f9a64143785f666ddb6586f4d096ad config-purism-librem5.aarch64 "