# Maintainer: ced0180 <countbaster@gmail.com>

pkgname=linux-skullos
pkgver=7.0.3
pkgrel=1
pkgdesc='Linux kernel for SkullOS'
arch=('x86_64')
url='https://codeberg.org/SkullOS/skull-os'
license=('GPL-2.0-only')
makedepends=('bc' 'cpio' 'gettext' 'kmod' 'libelf' 'openssl' 'pahole' 'perl' 'python' 'rsync')
depends=('coreutils' 'kmod')
options=('!strip')
install='linux-skullos.install'
source=(
    "https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-${pkgver}.tar.xz"
    'kernel.config'
)
sha256sums=(
    '0bedadbf5788693ddebbcc913c893f1a97349af79ddde7144c2a80b401959f1c'
    '7ea51c58af2ec4bf94a58067e52b29705ed07dcdc5a66330172cf8c414be3b58'
)

prepare() {
    cd "$srcdir/linux-$pkgver"
    cp "$srcdir/kernel.config" .config
    make olddefconfig
}

build() {
    cd "$srcdir/linux-$pkgver"
    make -j"$(nproc)" bzImage modules
}

package() {
    cd "$srcdir/linux-$pkgver"

    local kernelrelease
    kernelrelease="$(make -s kernelrelease)"

    install -Dm644 arch/x86/boot/bzImage "$pkgdir/boot/vmlinuz-linux-skullos"
    install -Dm644 System.map "$pkgdir/boot/System.map-linux-skullos"
    install -Dm644 .config "$pkgdir/boot/config-linux-skullos"

    make \
        INSTALL_MOD_PATH="$pkgdir/usr" \
        INSTALL_MOD_STRIP=1 \
        DEPMOD=/usr/bin/true \
        modules_install

    rm -f "$pkgdir/usr/lib/modules/$kernelrelease/build"
    rm -f "$pkgdir/usr/lib/modules/$kernelrelease/source"

    install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
    install -Dm644 .config "$pkgdir/usr/src/$pkgname-$pkgver/config"
}
