Upgrade from warty causes dpkg questions

Bug #11452 reported by LaMont Jones
8
Affects Status Importance Assigned to Milestone
udev (Ubuntu)
Fix Released
High
Martin Pitt

Bug Description

Upgrading from a virgin warty install on i386, dpkg decides that the following
config files have been modified, and require my decision on what to do with them
(which violates the ask-no-questions policy...):

/etc/udev/scripts/scsi-devfs.sh
/etc/udev/scripts/cdsymlinks.sh
/etc/udev/scripts/ide-devfs.sh

In fact, none of these were modified by the admin of the machine.

Revision history for this message
Matt Zimmerman (mdz) wrote :

This is the usual conffile renaming problem. These files were moved from
/etc/udev to /etc/udev/scripts, and so are moved in udev's preinst.

Revision history for this message
Martin Pitt (pitti) wrote :

This should be fixed by the final release. Scott, please feel free to reassign
to me if you don't have time for this.

Revision history for this message
Scott James Remnant (Canonical) (canonical-scott) wrote :

I've got some dpkg time allocated from next week to fix bugs for hoary; I can
add this one onto the list if mdz wants it fixed before release.

Revision history for this message
Matt Zimmerman (mdz) wrote :

Highest priority for dpkg is #7401; others are secondary.

Does this correspond to a debbugs bug? If so, set the alias to deb<debbugs
bug#>. What is the nature of the bug, dpkg-wise?

Revision history for this message
Scott James Remnant (Canonical) (canonical-scott) wrote :

http://descent.netsplit.com/~scott/move_conffile.txt

Here's a recipie for correctly (I hope) moving a conffile.

This isn't easy to fix in dpkg because dpkg needs to support people
transitioning between conffile, non-conffile and file-made-in-postinst without
breaking. I have a plan, but that would require the old version of udev with
the old filenames to be modified too and it's kinda too late for that now.

I think using this recipie for now is the right solution, while I work on the
dpkg file metadata stuff.

For the record, the first function should be placed in preinst and then in the
"install" (with a version) or "upgrade" modes do something like:

    preinst_prepare_move_conffile /etc/udev/ide-devfs.sh

The second function should be placed in postinst and then in the "configure"
mode (with a version) do something like:

    postinst_move_conffile /etc/udev/ide-devfs.sh /etc/udev/scripts/ide-devfs.sh

Of course, a hard-line reading of policy says that maintainer scripts may not
modify a conffile, and this technically does so.

The "proper" solution, fwiw, is basically to support renames in the packaging
format.

Revision history for this message
Martin Pitt (pitti) wrote :

 udev (0.050-3ubuntu6) hoary; urgency=low
 .
   * debian/udev.preinst: Handle conffile move without dpkg questions.
     (Ubuntu #4973)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.