sys-kernel/vanilla-kernel: Create linux symlink when none exists
authorMichał Górny <mgorny@gentoo.org>
Thu, 2 Jan 2020 13:15:04 +0000 (14:15 +0100)
committerMichał Górny <mgorny@gentoo.org>
Thu, 2 Jan 2020 13:19:43 +0000 (14:19 +0100)
Signed-off-by: Michał Górny <mgorny@gentoo.org>
sys-kernel/vanilla-kernel/vanilla-kernel-5.4.7.ebuild

index e4705ad05588fa44ff9c482e2619f16387dffc79..37e03a83622e0dc6a44ad5ea8e7ce388d01ee227 100644 (file)
@@ -255,19 +255,25 @@ pkg_postinst() {
                eend ${?} || die "Installing the kernel failed"
        fi
 
-       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}"
+       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
-                       ebegin "Updating /usr/src/linux symlink"
-                       ln -f -n -s linux-${PV} "${EROOT}"/usr/src/linux
-                       eend ${?}
+                       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