summaryrefslogtreecommitdiff
path: root/sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild')
-rw-r--r--sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild180
1 files changed, 0 insertions, 180 deletions
diff --git a/sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild b/sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild
deleted file mode 100644
index 998f07ed5e9b..000000000000
--- a/sys-kernel/vanilla-kernel-bin/vanilla-kernel-bin-5.4.7.ebuild
+++ /dev/null
@@ -1,180 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit mount-boot
-
-MY_P=vanilla-kernel-${PV}-1
-TCL_VER=10.1
-DESCRIPTION="Pre-built vanilla Linux kernel"
-HOMEPAGE="https://www.kernel.org/"
-SRC_URI="
- amd64? (
- https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/vanilla-kernel/${MY_P}.xpak
- -> ${MY_P}.amd64.xpak
- test? (
- https://dev.gentoo.org/~mgorny/dist/tinycorelinux-${TCL_VER}-amd64.qcow2
- )
- )
- x86? (
- https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/vanilla-kernel/${MY_P}.xpak
- -> ${MY_P}.x86.xpak
- test? (
- https://dev.gentoo.org/~mgorny/dist/tinycorelinux-${TCL_VER}-x86.qcow2
- )
- )"
-S=${WORKDIR}
-
-LICENSE="GPL-2"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~x86"
-IUSE="+initramfs test"
-RESTRICT="!test? ( test ) test? ( userpriv )"
-
-# install-DEPEND actually
-# note: we need installkernel with initramfs support!
-RDEPEND="
- || (
- sys-kernel/installkernel-gentoo
- sys-kernel/installkernel-systemd-boot
- )
- initramfs? ( >=sys-kernel/dracut-049-r2 )
- !sys-kernel/vanilla-kernel:${SLOT}"
-BDEPEND="
- test? (
- dev-tcltk/expect
- sys-kernel/dracut
- amd64? ( app-emulation/qemu[qemu_softmmu_targets_x86_64] )
- x86? ( app-emulation/qemu[qemu_softmmu_targets_i386] )
- )"
-
-QA_PREBUILT='*'
-
-pkg_pretend() {
- mount-boot_pkg_pretend
-
- ewarn "This is an experimental package. The built kernel and/or initramfs"
- ewarn "may not work at all or fail with your bootloader configuration. Please"
- ewarn "make sure to keep a backup kernel available before testing it."
-}
-
-src_unpack() {
- ebegin "Unpacking ${MY_P}.${ARCH}.xpak"
- tar -x < <(xz -c -d --single-stream "${DISTDIR}/${MY_P}.${ARCH}.xpak")
- eend ${?} || die "Unpacking ${MY_P} failed"
-}
-
-src_test() {
- local image_arch=${ARCH}
- local qemu_arch=$(usex amd64 x86_64 i386)
-
- dracut \
- --conf /dev/null \
- --confdir /dev/null \
- --no-hostonly \
- --kmoddir "lib/modules/${PV}" \
- "${T}/initrd" "${PV}" || die
- cp "${DISTDIR}/tinycorelinux-${TCL_VER}-${image_arch}.qcow2" \
- "${T}/fs.qcow2" || die
-
- cd "${T}" || die
- cat > run.sh <<-EOF || die
- #!/bin/sh
- exec qemu-system-${qemu_arch} \
- -m 256M \
- -display none \
- -no-reboot \
- -kernel '${WORKDIR}/usr/src/linux-${PV}/bzImage' \
- -initrd '${T}/initrd' \
- -serial mon:stdio \
- -hda '${T}/fs.qcow2' \
- -append 'root=/dev/sda console=ttyS0,115200n8'
- EOF
- chmod +x run.sh || die
- # TODO: initramfs does not let core finish starting on some systems,
- # figure out how to make it better at that
- expect - <<-EOF || die "Booting kernel failed"
- set timeout 900
- spawn ./run.sh
- expect {
- "Kernel panic" {
- send_error "\n* Kernel panic"
- exit 1
- }
- "Entering emergency mode" {
- send_error "\n* Initramfs failed to start the system"
- exit 1
- }
- "Core 10.1" {
- send_error "\n* Booted to login"
- exit 0
- }
- timeout {
- send_error "\n* Kernel boot timed out"
- exit 2
- }
- }
- EOF
-}
-
-src_install() {
- mv * "${ED}" || die
-}
-
-pkg_preinst() {
- :
-}
-
-pkg_postinst() {
- if [[ -z ${ROOT} ]]; then
- mount-boot_pkg_preinst
-
- if use initramfs; then
- ebegin "Building initramfs via dracut"
- # putting it alongside kernel image as 'initrd' makes
- # kernel-install happier
- dracut --force "${EROOT}/usr/src/linux-${PV}/initrd" "${PV}"
- eend ${?} || die "Building initramfs failed"
- fi
-
- ebegin "Installing the kernel via installkernel"
- # note: .config is taken relatively to System.map;
- # initrd relatively to bzImage
- installkernel "${PV}" \
- "${EROOT}/usr/src/linux-${PV}/bzImage" \
- "${EROOT}/usr/src/linux-${PV}/System.map"
- eend ${?} || die "Installing the kernel failed"
- fi
-
- if [[ ! -e ${EROOT}/usr/src/linux ]]; then
- ebegin "Creating /usr/src/linux symlink"
- ln -f -n -s linux-${PV} "${EROOT}"/usr/src/linux
- eend ${?}
- else
- local symlink_target=$(readlink "${EROOT}"/usr/src/linux)
- local symlink_ver=${symlink_target#linux-}
- if [[ ${symlink_target} == linux-* && -z ${symlink_ver//[0-9.]/} ]]
- then
- local symlink_pkg=${CATEGORY}/${PN}-${symlink_ver}
- # if the current target is either being replaced, or still
- # installed (probably depclean candidate), update the symlink
- if has "${symlink_ver}" ${REPLACING_VERSIONS} ||
- has_version -r "~${symlink_pkg}"
- then
- ebegin "Updating /usr/src/linux symlink"
- ln -f -n -s linux-${PV} "${EROOT}"/usr/src/linux
- eend ${?}
- fi
- fi
- fi
-}
-
-pkg_prerm() {
- :
-}
-
-pkg_postrm() {
- rm -f "${EROOT}/usr/src/linux-${PV}/initrd" &&
- rmdir --ignore-fail-on-non-empty "${EROOT}/usr/src/linux-${PV}"
-}