--- /tmp/kernel.eselect 2013-01-29 09:35:36.826519865 +0100 +++ /usr/share/eselect/modules/kernel.eselect 2013-01-29 10:03:07.219047000 +0100 @@ -37,11 +37,17 @@ } # remove the kernel symlink +# try to remove kernel version from world set remove_symlink() { + local kernver=$(equery b $(realpath /usr/src/linux)) + if [[ ! -z ${kernver} ]]; then + emerge --deselect =${kernver} + fi rm "${EROOT}/usr/src/linux" } # set the kernel symlink +# try to add selected kernel version to world set set_symlink() { local target=$1 @@ -59,6 +65,10 @@ else die -q "Target \"$1\" doesn't appear to be valid!" fi + local kernver=$(equery b $(realpath /usr/src/linux)) + if [[ ! -z ${kernver} ]]; then + emerge --noreplace --nodeps =${kernver} + fi } ### show action ###