summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD98
1 files changed, 98 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..da45e37d6a5f
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,98 @@
+# Maintainer: Chris Billington <chrisjbillington@gmail.com>
+_pkgname=linux-zen
+_pkgver=5.11.15.zen1
+_kernver=5.11.15
+_zenver=zen1
+_pkgrel=2
+pkgbase="${_pkgname}-versioned-bin"
+KERNNAME="${_kernver}-${_zenver}-${_pkgrel}-zen"
+_versioned_pkgname="linux${_pkgver}-${_pkgrel}-zen"
+pkgname=("${_pkgname}-versioned-bin"
+ "${_pkgname}-versioned-headers-bin"
+ "${_pkgname}-versioned-docs-bin"
+ "${_versioned_pkgname}-bin"
+ "${_versioned_pkgname}-headers-bin"
+ "${_versioned_pkgname}-docs-bin")
+pkgver=${_pkgver}
+pkgrel=${_pkgrel}
+pkgdesc="The Linux ZEN kernel and modules | repackaged with a unique package name for each version"
+url="https://github.com/zen-kernel/zen-kernel/commits/v5.11.15-zen1"
+arch=(x86_64)
+license=(GPL2)
+options=('!strip')
+
+_kernpkg=${_pkgname}-${_pkgver}-${_pkgrel}-${arch}.pkg.tar.zst
+_headerspkg=${_pkgname}-headers-${_pkgver}-${_pkgrel}-${arch}.pkg.tar.zst
+_docspkg=${_pkgname}-docs-${_pkgver}-${_pkgrel}-${arch}.pkg.tar.zst
+
+# See if the sources are available from our own mirror:
+_kernsrc=$(pacman -Spdd "${_pkgname}" 2> /dev/null)
+_headerssrc=$(pacman -Spdd "${_pkgname}-headers" 2> /dev/null)
+_docssrc=$(pacman -Spdd "${_pkgname}-docs" 2> /dev/null)
+
+# If not, then use the Arch Linux archive:
+if [ "$(basename "${_kernsrc}" 2> /dev/null)" != "${_kernpkg}" ]; then
+ _arch_archive=https://archive.archlinux.org/packages/.all
+ _kernsrc=${_arch_archive}/${_kernpkg}
+ _headerssrc=${_arch_archive}/${_headerspkg}
+ _docssrc=${_arch_archive}/${_docspkg}
+fi
+
+source=("${_kernsrc}"
+ "${_headerssrc}"
+ "${_docssrc}")
+
+noextract=("${source[@]##*/}")
+
+sha256sums=('7b290193967b81446a195b18f339ce1bf0a1309547bed18cea91779e2fae4594'
+ '024803a203f3585849bf8f5ba5c46407ccf029726f2222236f1465add386e815'
+ '8d4fe426e9f06dffefa8bbe4141a00ed6c039ece0a9a4b532fdf33d6e51211c7')
+
+package_linux-zen-versioned-bin() {
+ pkgdesc="Dummy package depending on ${_versioned_pkgname}-bin"
+ depends=("${_versioned_pkgname}-bin")
+ optdepends=('grub-hook: to run grub-mkconfig when kernels are added/removed')
+}
+
+package_linux-zen-versioned-headers-bin() {
+ pkgdesc="Dummy package depending on ${_versioned_pkgname}-headers-bin"
+ depends=("${_versioned_pkgname}-headers-bin")
+}
+
+package_linux-zen-versioned-docs-bin() {
+ pkgdesc="Dummy package depending on ${_versioned_pkgname}-docs-bin"
+ depends=("${_versioned_pkgname}-docs-bin")
+}
+
+package_linux5.11.15.zen1-2-zen-bin() {
+ pkgdesc="The Linux ZEN kernel and modules, version ${KERNNAME}"
+ depends=(coreutils
+ initramfs
+ kmod)
+ conflicts=("${_pkgname}")
+ optdepends=('crda: to set the correct wireless channels of your country'
+ 'linux-firmware: firmware images needed for some devices')
+ provides=(VHBA-MODULE
+ VIRTUALBOX-GUEST-MODULES
+ WIREGUARD-MODULE)
+ tar -xf "${_kernpkg}" -C "${pkgdir}"
+ rm "${pkgdir}"/{.MTREE,.BUILDINFO,.PKGINFO}
+ sed -ic "s/${_pkgname}/${KERNNAME}/" "${pkgdir}/usr/lib/modules/${KERNNAME}/pkgbase"
+}
+
+package_linux5.11.15.zen1-2-zen-headers-bin() {
+ pkgdesc="Headers and scripts for building modules for the Linux ZEN kernel ${KERNNAME}"
+ depends=(pahole)
+ conflicts=("${_pkgname}-headers")
+ tar -xf "${_headerspkg}" -C "${pkgdir}"
+ rm "${pkgdir}"/{.MTREE,.BUILDINFO,.PKGINFO}
+ mv "${pkgdir}/usr/src/"{"${_pkgname}","${_versioned_pkgname}"}
+}
+
+package_linux5.11.15.zen1-2-zen-docs-bin() {
+ pkgdesc="Documentation for the Linux ZEN kernel ${KERNNAME}"
+ conflicts=("${_pkgname}-docs")
+ tar -xf "${_docspkg}" -C "${pkgdir}"
+ rm "${pkgdir}"/{.MTREE,.BUILDINFO,.PKGINFO}
+ mv "${pkgdir}/usr/share/doc/"{"${_pkgname}","${_versioned_pkgname}"}
+}