Re: State of pci.ids
Martin Mares wrote:
Dropping this information in the udeb is if course a good way of saving
space, but the full package should contain everything.
In the future (after Lenny), I would like to solve one more problem:
with the current rate of development of new hardware, the pci.ids file
is getting out of date very quickly and there is no way how to update
The problem is somewhat mitigated by the network lookup feature present
since pciutils 3.0.0, but not all users are connected to the network
all the time (and not all programs linked with libpci know how to enable
the lookups), so it still makes sense to update the pci.ids file.
Of course, we have the update-pciids script, but does its job in a dirty
way as it rewrites the pci.ids file coming from the pciutils package, so
the file system is no longer consistent with the packages (and debsums
fail and so on).
We might make libpci look for the file at several places and keep the
updated copy somewhere in /var/, but it would make updates of the package
painful: which version is the more up-to-date? The one in /usr/share,
or the one in /var? So it does not help either.
I suggest that we should split off the pci.ids file to a separate arch-independent
package with a date-based version number, so that the users can mix pci.ids
from several sources and still get consistent upgrades:
o the base version present in the distribution;
o potential updates from debian-volatile (once in a month?);
o daily snapshots from the PCI ID database (I can easily make
the snapshot machinery produce Debian packages as well).
What do you think of this approach?
I think that changing the format of the file (with other suffix) would
also be helpful, i.e. instead of using tab-indent I would explicitly
writing vendor id (ev. other implicit ids) in every line.
In this manner it is easier to grep for hardware, and also to merge
files from different sources (cat | sort -u), without requiring
external libraries or complex scripts.
See for example pci.list in http://cateee.net/sources/lkddb
[Note: other files *try* to use the same format, e.g. usb.ids, zorro.ids
and eisa.ids (in kernel sourcers). But usb.ids has frequently spaces
instead of tabs.]