Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 252724 - Unintentional call of eselect in vim.eclass causes the symlinks to be set to busybox instead of vim/gvim
Summary: Unintentional call of eselect in vim.eclass causes the symlinks to be set to ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Vim Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-27 18:12 UTC by Tobias Heinlein (RETIRED)
Modified: 2009-10-17 17:12 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Heinlein (RETIRED) gentoo-dev 2008-12-27 18:12:19 UTC
The fix for bug 187449 has a small, confusing side effect:

Let's assume we are on a new, fresh system without vim/gvim/nvi installed.

Expected behaviour:
A user wants to install app-editors/vim and assumes that /usr/bin/vi points to vim, since the symlink was not set before.

Actual behaviour:
The user installs app-editors/vim.
app-editors/vim depends on app-editors/vim-core.
app-editors/vim-core uses the vim.eclass. Thus when vim-core gets installed, update_vim_symlinks() is called. During this call, /usr/bin/vim (or any other vim clone, for that matter) does not exist yet, causing the eselect call to set the symlink to /bin/busybox.

Two possible solutions:
(1) Don't call update_vim_symlinks() when ${PN} == "vim-core".
(2) Add an elog message to inform the users.
Comment 1 Jim Ramsay (lack) (RETIRED) gentoo-dev 2009-10-17 17:12:04 UTC
I think that (1) sounds reasonable, and I've implemented this in my latest rewrite of vim.eclass.