diff options
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/linux/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/linux/linux-5.13.14-r2.ebuild (renamed from sys-kernel/linux/linux-5.13.9-r1.ebuild) | 43 |
2 files changed, 25 insertions, 20 deletions
diff --git a/sys-kernel/linux/Manifest b/sys-kernel/linux/Manifest index 81dbda9..d41d183 100644 --- a/sys-kernel/linux/Manifest +++ b/sys-kernel/linux/Manifest @@ -1 +1 @@ -DIST linux-5.13.9.tar.gz 192744819 BLAKE2B 823be596395f43942e54ed86ab87b080553a851f4da3dc68544deeedcce23434af61f67d61ca0cce0175ded549e151c21cfc6b099abba96f215c0fe17633da69 SHA512 51f0acb52c1a492dfe9733d062b6fde4a8e4d590278a1aad79bdbc5cecef9ca5076006e95d80c9fa5041d6472dfd890152688a38efbb04166d95128fb476a407 +DIST linux-5.13.14.tar.gz 192762380 BLAKE2B 87d0f367b559c7bfb9324f0322053ec76d764bdae519b1e6125ddf495da7f87324ab35784c204c6b97e1b213a1bd317da807f72964a8705c265a7acf384a270e SHA512 93d5a711c041b1bdcd4c68232a8d46a9cbb832cbc8de9247fe90020a710ca0902dacf99e073f0c60be1eeda9d3125214daa08abfc6e203f0966436b0c55d14b9 diff --git a/sys-kernel/linux/linux-5.13.9-r1.ebuild b/sys-kernel/linux/linux-5.13.14-r2.ebuild index d6f103b..1fab479 100644 --- a/sys-kernel/linux/linux-5.13.9-r1.ebuild +++ b/sys-kernel/linux/linux-5.13.14-r2.ebuild @@ -59,32 +59,37 @@ src_link() { } sysfile() { - if [ -f "${ROOT}/boot/syslinux/syslinux.cfg" ]; then - SYSLINUX="${ROOT}/boot/syslinux/syslinux.cfg" - elif [ -f "${ROOT}/boot/EFI/BOOT/syslinux.cfg" ]; then - SYSLINUX="${ROOT}/boot/EFI/BOOT/syslinux.cfg" - elif [ -f "${ROOT}/boot/extlinux.conf" ]; then - SYSLINUX="${ROOT}/boot/extlinux.conf" - else - eerror "Can't locate syslinux configuration!" - fi + local cfgs=( + "/boot/syslinux.cfg" + "/boot/syslinux/syslinux.cfg" + "/boot/EFI/BOOT/syslinux.cfg" + "/boot/extlinux.conf" + ) + for cfg in "${cfgs[@]}"; do + if [ -f "${ROOT}${cfg}" ]; then + echo "${ROOT}${cfg}" + return 0 + fi + done + eerror "Can't locate syslinux configuration!" } pkg_postinst() { # Add label to syslinux config if there is non yet - sysfile - if ! grep -q "^LABEL gentoo-${PV}$" "${SYSLINUX}"; then + local syslinux initrd args + local syslinux="$(sysfile)" + if ! grep -q "^LABEL gentoo-${PV}$" "${syslinux}"; then if $(use initramfs); then if $(use ucode); then - INITRD="\tINITRD /ucode.cpio,/initramfs-gentoo\n" + initrd="\tINITRD /ucode.cpio,/initramfs-gentoo\n" else - INITRD="\tINITRD /initramfs-gentoo\n" + initrd="\tINITRD /initramfs-gentoo\n" fi fi - ARGS="$(grep -E "^# ARGS: " "${SYSLINUX}" | sed 's/^# ARGS: //')" - if [ -n "$ARGS" ]; then - sed -i "/^## Dynamic labels ##$/a LABEL gentoo-${PV}\n\tMENU LABEL Gentoo ${PV}\n\tLINUX /bzlinux-${PV}\n\tAPPEND ${ARGS}\n$INITRD" "${SYSLINUX}" || eerror "Adding label to syslinux configuration failed!" - sed -i "/^## Dynamic recovery labels ##$/a LABEL gentoo-${PV}-recovery\n\tMENU LABEL Gentoo ${PV} - Recovery\n\tLINUX /bzlinux-${PV}\n\tAPPEND ${ARGS} recovery\n$INITRD" "${SYSLINUX}" || eerror "Adding recovery label to syslinux configuration failed!" + args="$(grep -E "^# ARGS: " "${syslinux}" | sed 's/^# ARGS: //')" + if [ -n "$args" ]; then + sed -i "/^## Dynamic labels ##$/a LABEL gentoo-${PV}\n\tMENU LABEL Gentoo ${PV}\n\tLINUX /bzlinux-${PV}\n\tAPPEND ${args}\n$initrd" "${syslinux}" || eerror "Adding label to syslinux configuration failed!" + sed -i "/^## Dynamic recovery labels ##$/a LABEL gentoo-${PV}-recovery\n\tMENU LABEL Gentoo ${PV} - Recovery\n\tLINUX /bzlinux-${PV}\n\tAPPEND ${args} recovery\n$initrd" "${syslinux}" || eerror "Adding recovery label to syslinux configuration failed!" else eerror "Adding label to syslinux configuration failed as there are no arguments" fi @@ -95,8 +100,8 @@ pkg_postinst() { pkg_prerm() { # Remove label from syslinux config - sysfile - sed -i "/^LABEL gentoo-${PV}\(\|-recovery\)$/,/^$/d" "${SYSLINUX}" || eerror "Removing label from syslinux fonfiguration failed!" + local syslinux="$(sysfile)" + sed -i "/^LABEL gentoo-${PV}\(\|-recovery\)$/,/^$/d" "${syslinux}" || eerror "Removing label from syslinux fonfiguration failed!" } pkg_postrm() { |