Bug#499451: vim-tiny: prompts on replacing an unchanged conffile

Niko Tyni ntyni at debian.org
Thu Sep 18 20:25:49 UTC 2008


Package: vim-tiny
Version: 1:7.1.314-3

I'm not quite sure if this is a dpkg bug or if vim is doing something
wrong.  Please reassign at your convenience.

Scenario: when an etch system with vim-tiny and an unedited
/etc/vim/vimrc.tiny is upgraded to lenny and further to sid, the sid
upgrade makes dpkg prompt about overwriting local changes.

The conffile has moved from vim-common to vim-tiny between the etch and
lenny versions, and it looks like dpkg gets confused about which md5sum
belongs to which package.

When the system is upgraded to lenny, the lenny md5sum ends up with
vim-common as 'obsolete' (as seen with 'dpkg -s', for instance), while the
etch md5sum is in vim-tiny and non-obsolete.  This seems backwards to me.

The problem only happens when the lenny vim-common and vim-tiny packages
are installed in the same dpkg run. If vim-common is upgraded first,
things work as expected: vim-common's obsolete entry has the etch
md5sum and vim-tiny is marked with the correct lenny md5sum.  

Here's a log from playing with dpkg on a sid host (dpkg 1.4.22). For
reference, the versions and md5sums of unmodified conffiles are as
follows:

- etch:  1:7.0-122+1etch3
/etc/vim/vimrc.tiny is in vim-common with md5sum f59b7a4afca85ec57547b20964eea3ae
- lenny: 1:7.1.314-3+b1
/etc/vim/vimrc.tiny is in vim-tiny   with md5sum d6cca1b2d118c1819b91e790886278f1
- sid:   2:7.2.000-2
/etc/vim/vimrc.tiny is in vim-tiny   with md5sum 3b4112567ad92c78ccc16c670df381e9

# sudo dpkg -i vim-common_1%3a7.0-122+1etch3_amd64.deb vim-tiny_1%3a7.0-122+1etch3_amd64.deb 
Selecting previously deselected package vim-common.                                             
(Reading database ... 123032 files and directories currently installed.)
Unpacking vim-common (from vim-common_1%3a7.0-122+1etch3_amd64.deb) ...
Selecting previously deselected package vim-tiny.
Unpacking vim-tiny (from vim-tiny_1%3a7.0-122+1etch3_amd64.deb) ...
Setting up vim-common (1:7.0-122+1etch3) ...
Processing triggers for man-db ...
Setting up vim-tiny (1:7.0-122+1etch3) ...
# md5sum /etc/vim/vimrc.tiny
f59b7a4afca85ec57547b20964eea3ae  /etc/vim/vimrc.tiny
# sudo dpkg -i vim-common_1%3a7.1.314-3+b1_amd64.deb vim-tiny_1%3a7.1.314-3+b1_amd64.deb  
(Reading database ... 123133 files and directories currently installed.)
Preparing to replace vim-common 1:7.0-122+1etch3 (using vim-common_1%3a7.1.314-3+b1_amd64.deb) ...
Unpacking replacement vim-common ...
Preparing to replace vim-tiny 1:7.0-122+1etch3 (using vim-tiny_1%3a7.1.314-3+b1_amd64.deb) ...
Unpacking replacement vim-tiny ...
Setting up vim-common (1:7.1.314-3+b1) ...
Installing new version of config file /etc/vim/vimrc ...
Installing new version of config file /etc/vim/vimrc.tiny ...
Processing triggers for man-db ...
Setting up vim-tiny (1:7.1.314-3+b1) ...
# md5sum /etc/vim/vimrc.tiny
d6cca1b2d118c1819b91e790886278f1  /etc/vim/vimrc.tiny
# dpkg -s vim-common|grep vimrc.tiny
 /etc/vim/vimrc.tiny d6cca1b2d118c1819b91e790886278f1 obsolete
# dpkg -s vim-tiny|grep vimrc.tiny  
 /etc/vim/vimrc.tiny f59b7a4afca85ec57547b20964eea3ae
# sudo dpkg -i vim-common_2%3a7.2.000-2_amd64.deb vim-tiny_2%3a7.2.000-2_amd64.deb       
(Reading database ... 123131 files and directories currently installed.)             
Preparing to replace vim-common 1:7.1.314-3+b1 (using vim-common_2%3a7.2.000-2_amd64.deb) ...
Unpacking replacement vim-common ...
Preparing to replace vim-tiny 1:7.1.314-3+b1 (using vim-tiny_2%3a7.2.000-2_amd64.deb) ...
Unpacking replacement vim-tiny ...
Setting up vim-common (2:7.2.000-2) ...
Installing new version of config file /etc/vim/vimrc ...
Processing triggers for man-db ...
Setting up vim-tiny (2:7.2.000-2) ...

Configuration file `/etc/vim/vimrc.tiny'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : background this process to examine the situation
 The default action is to keep your current version.
*** vimrc.tiny (Y/I/N/O/D/Z) [default=N] ? z
Don't forget to foreground (`fg') this process when you're done !

zsh: suspended  sudo dpkg -i vim-common_2%3a7.2.000-2_amd64.deb 
# md5sum /etc/vim/vimrc.tiny*
d6cca1b2d118c1819b91e790886278f1  /etc/vim/vimrc.tiny
3b4112567ad92c78ccc16c670df381e9  /etc/vim/vimrc.tiny.dpkg-new

-- 
Niko Tyni   ntyni at debian.org





More information about the pkg-vim-maintainers mailing list