app-editors/vim: do away with symlinks and just call eselect vi update.
authorPatrice Clement <monsieurp@gentoo.org>
Thu, 26 Oct 2017 11:12:31 +0000 (13:12 +0200)
committerPatrice Clement <monsieurp@gentoo.org>
Thu, 26 Oct 2017 13:01:27 +0000 (15:01 +0200)
This commit also updates the 9999 ebuild.

Closes: https://bugs.gentoo.org/635482
Package-Manager: Portage-2.3.8, Repoman-2.3.3

app-editors/vim/vim-8.0.1188.ebuild
app-editors/vim/vim-9999.ebuild

index 901f2d45a92c8ea28186f4cc8237955c99d1f173..be9a4fdae49858169e89f469f9819205fd9f826b 100644 (file)
@@ -261,39 +261,12 @@ src_test() {
        emake -j1 -C src/testdir nongui
 }
 
-# Make convenience symlinks, hopefully without stepping on toes.  Some
-# of these links are "owned" by the vim ebuild when it is installed,
-# but they might be good for gvim as well (see bug 45828)
-update_vim_symlinks() {
-       local f syms
-       syms="vimdiff rvim rview"
+# Call eselect vi update with --if-unset
+# to respect user's choice (bug 187449)
+eselect_vi_update() {
        einfo "Calling eselect vi update..."
-       # Call this with --if-unset to respect user's choice (bug 187449)
        eselect vi update --if-unset
-
-       # Make or remove convenience symlink, vim -> gvim
-       if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
-               ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null || die "ln failed"
-       elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
-               rm "${EROOT}"/usr/bin/vim || die "rm vim failed"
-       fi
-
-       # Make or remove convenience symlinks to vim
-       if [[ -f "${EROOT}"/usr/bin/vim ]]; then
-               for f in ${syms}; do
-                       ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null || die
-               done
-       else
-               for f in ${syms}; do
-                       if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
-                               rm "${EROOT}"/usr/bin/${f} || die
-                       fi
-               done
-       fi
-
-       # This will still break if you merge then remove the vi package,
-       # but there's only so much you can do, eh?  Unfortunately we don't
-       # have triggers like are done in rpm-land.
+       eend $?
 }
 
 src_install() {
@@ -323,14 +296,14 @@ pkg_postinst() {
        # Update documentation tags (from vim-doc.eclass)
        update_vim_helptags
 
-       # Make convenience symlinks
-       update_vim_symlinks
+       # Call eselect vi update
+       eselect_vi_update
 }
 
 pkg_postrm() {
        # Update documentation tags (from vim-doc.eclass)
        update_vim_helptags
 
-       # Make convenience symlinks
-       update_vim_symlinks
+       # Call eselect vi update
+       eselect_vi_update
 }
index 901f2d45a92c8ea28186f4cc8237955c99d1f173..be9a4fdae49858169e89f469f9819205fd9f826b 100644 (file)
@@ -261,39 +261,12 @@ src_test() {
        emake -j1 -C src/testdir nongui
 }
 
-# Make convenience symlinks, hopefully without stepping on toes.  Some
-# of these links are "owned" by the vim ebuild when it is installed,
-# but they might be good for gvim as well (see bug 45828)
-update_vim_symlinks() {
-       local f syms
-       syms="vimdiff rvim rview"
+# Call eselect vi update with --if-unset
+# to respect user's choice (bug 187449)
+eselect_vi_update() {
        einfo "Calling eselect vi update..."
-       # Call this with --if-unset to respect user's choice (bug 187449)
        eselect vi update --if-unset
-
-       # Make or remove convenience symlink, vim -> gvim
-       if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
-               ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null || die "ln failed"
-       elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
-               rm "${EROOT}"/usr/bin/vim || die "rm vim failed"
-       fi
-
-       # Make or remove convenience symlinks to vim
-       if [[ -f "${EROOT}"/usr/bin/vim ]]; then
-               for f in ${syms}; do
-                       ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null || die
-               done
-       else
-               for f in ${syms}; do
-                       if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
-                               rm "${EROOT}"/usr/bin/${f} || die
-                       fi
-               done
-       fi
-
-       # This will still break if you merge then remove the vi package,
-       # but there's only so much you can do, eh?  Unfortunately we don't
-       # have triggers like are done in rpm-land.
+       eend $?
 }
 
 src_install() {
@@ -323,14 +296,14 @@ pkg_postinst() {
        # Update documentation tags (from vim-doc.eclass)
        update_vim_helptags
 
-       # Make convenience symlinks
-       update_vim_symlinks
+       # Call eselect vi update
+       eselect_vi_update
 }
 
 pkg_postrm() {
        # Update documentation tags (from vim-doc.eclass)
        update_vim_helptags
 
-       # Make convenience symlinks
-       update_vim_symlinks
+       # Call eselect vi update
+       eselect_vi_update
 }