Autor: John Franklin Data: A: Simon Hobson CC: dng@lists.dyne.org Assumpte: Re: [DNG] Updating PCI ID lists in installer (Was: suggestion)
> On Aug 17, 2017, at 11:16 AM, Simon Hobson <linux@???> wrote:
>
> John Franklin <franklin@???> wrote:
>
>> Adding a network dependency on a package install is generally a bad idea. What happens if the machine doesn’t have external network access, as is often the case for corporate build servers or people installing Devuan from USB sticks where the wireless card isn’t supported by the base kernel? Should the package install fail or silently continue?
>>
>> It would be better for the lspci program to emit a warning “PCI ID list is out of date, please run update_pciids to update.”
>
> Wouldn't the correct way to do it be to have the installer ask the user what to do ? Ie, tell the user "your list may be out of date, do you want to update it ?" with options like "yes, update it" (in which case, attempt to get an update), "skip that" (in which case, carry on with the old list). Of course, there's then the error recovery steps that need to be considered if the update fails - eg "try again", "give up and move on", "go back to previous step”.
The majority of packages don’t require any interaction. The few I can think of off the top of my head are server daemons -- openldap, postfix and other MTAs, mysql -- that require admin passwords of their own and/or the configuration is non-trivial. Other packages, like Drupal, may require a database or other external resource to be setup and the admin has the option of getting apt to manage the resource for the package, including removing it when the package is purged. In each of these cases, there is a set of defaults to satisfy DEBIAN_FRONTEND=noninteractive.
In general, if you can avoid asking the user at install time, that is best. Encouraging package builders to query the user for every little thing would make installing a new system with hundreds of packages a tedious exercise.
In this case, the package includes a default /usr/share/misc/pci.ids file that (I assume) is current as of packaging. This weakens the case for auto-updating at install time. The package is rebuilt for each major release (jessie, ascii, etc.). If it is not already, it should be updated with a new ids file for minor releases, too.