Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 834498 - app-editors/vim-core removes defaults.vim upon upgrade/rebuild
Summary: app-editors/vim-core removes defaults.vim upon upgrade/rebuild
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Vim Maintainers
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: 834460
  Show dependency tree
 
Reported: 2022-03-02 18:57 UTC by Hank Leininger
Modified: 2022-03-02 20:37 UTC (History)
3 users (show)

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 Hank Leininger 2022-03-02 18:57:58 UTC
https://github.com/gentoo/gentoo/commit/ed9829038751fab208ed07a97a35fa3168edae93 changed some logic about how vim-core and vim handle which package owns the defaults.vim file.

Unfortunately, the logic and order-of-operations can leave a box with no copy of defaults.vim at all.

On boxes where both vim-core and vim get updated, where package vim-core previously provided defaults.vim, the logic now works like this:

1) vim-core's src_install checks that defaults.vim already exists on the system, finds it, so deletes its own working copy.

2) vim-core is merged to the filesystem, and the old version is cleaned up. That includes removing the copy of defaults.vim that the previous vim-core owned, with no replacement because of #1. 

3) vim's src_install installs defaults.vim only if USE=minimal _and_ the file isn't already present. It was just removed in #2, but unless USE=minimal, vim's ebuild will never deploy defaults.vim

These particular changes were made without a revbump, so it's entirely possible to see different behavior between different boxes w/the same vim, vim-core versions.

Once in this state, reinstalling the same version of vim-core will fix things, because its src_install will find that there is no defaults.vim present, and install it. Then if you rebuild again, the file vanishes again...
Comment 1 Mike Gilbert gentoo-dev 2022-03-02 19:05:19 UTC
Yeah, src_install should not change the set of installed files based on the live filesystem. That's quite buggy.
Comment 2 Larry the Git Cow gentoo-dev 2022-03-02 19:49:23 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a80136202f15e6e08d915630119ccba76778fe8

commit 1a80136202f15e6e08d915630119ccba76778fe8
Author:     John Helmert III <ajak@gentoo.org>
AuthorDate: 2022-03-02 19:48:30 +0000
Commit:     John Helmert III <ajak@gentoo.org>
CommitDate: 2022-03-02 19:48:43 +0000

    app-editors/vim: destabilize 8.2.4328
    
    Bug: https://bugs.gentoo.org/834498
    Signed-off-by: John Helmert III <ajak@gentoo.org>

 app-editors/vim/vim-8.2.4328.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 3 Larry the Git Cow gentoo-dev 2022-03-02 19:54:18 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce4c4faaa6f05713661fdb33bab05594696cc7df

commit ce4c4faaa6f05713661fdb33bab05594696cc7df
Author:     John Helmert III <ajak@gentoo.org>
AuthorDate: 2022-03-02 19:53:42 +0000
Commit:     John Helmert III <ajak@gentoo.org>
CommitDate: 2022-03-02 19:53:42 +0000

    app-editors/gvim: destabilize 8.2.4328
    
    Bug: https://bugs.gentoo.org/834498
    Signed-off-by: John Helmert III <ajak@gentoo.org>

 app-editors/gvim/gvim-8.2.4328.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31bf29ac43cfc7fcc10af6e11fe5e005d0065cd5

commit 31bf29ac43cfc7fcc10af6e11fe5e005d0065cd5
Author:     John Helmert III <ajak@gentoo.org>
AuthorDate: 2022-03-02 19:52:46 +0000
Commit:     John Helmert III <ajak@gentoo.org>
CommitDate: 2022-03-02 19:52:46 +0000

    app-editors/vim-core: destabilize 8.2.4328
    
    Bug: https://bugs.gentoo.org/834498
    Signed-off-by: John Helmert III <ajak@gentoo.org>

 app-editors/vim-core/vim-core-8.2.4328.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 4 Larry the Git Cow gentoo-dev 2022-03-02 20:05:05 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0816769373e7ee62685158b65f7cfde287e5d936

commit 0816769373e7ee62685158b65f7cfde287e5d936
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2022-03-02 19:41:38 +0000
Commit:     Patrice Clement <monsieurp@gentoo.org>
CommitDate: 2022-03-02 20:04:56 +0000

    app-editors/vim: depend on vim-core unconditionally
    
    We need it for defaults.vim, which cannot be owned by 2 packages
    simultaneously.
    
    Bug: https://bugs.gentoo.org/834498
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>
    Signed-off-by: Patrice Clement <monsieurp@gentoo.org>

 .../vim/{vim-8.2.4328.ebuild => vim-8.2.4328-r1.ebuild}       | 11 ++---------
 app-editors/vim/vim-9999.ebuild                               | 11 ++---------
 2 files changed, 4 insertions(+), 18 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26a1674ea8c5535a273f6b404becd7c8d90f4c5a

commit 26a1674ea8c5535a273f6b404becd7c8d90f4c5a
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2022-03-02 19:33:36 +0000
Commit:     Patrice Clement <monsieurp@gentoo.org>
CommitDate: 2022-03-02 20:04:54 +0000

    app-editors/vim-core: always install defaults.vim.
    
    Bug: https://bugs.gentoo.org/834498
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>
    Closes: https://github.com/gentoo/gentoo/pull/24390
    Signed-off-by: Patrice Clement <monsieurp@gentoo.org>

 .../{vim-core-8.2.4328.ebuild => vim-core-8.2.4328-r1.ebuild}  | 10 ++--------
 app-editors/vim-core/vim-core-9999.ebuild                      | 10 ++--------
 2 files changed, 4 insertions(+), 16 deletions(-)
Comment 5 Hank Leininger 2022-03-02 20:37:34 UTC
That was quick, thanks!