Hi guys! We are working in building a unified database hardware for linux components as you can see in our Sourceforge project:
http://linuxhw.sf.net Our main targets are: 1. Make the hardware just work for the user. 2. Have as many details as possible about all the hardware users could want to use in a GNU/Linux box. 3. Update all the database and hardware system in order the user have a good experiencia with the GNU/Linux box. 4. Check different sources for database hardware stuff, check them and unify them. For example, we take kudzu, discover, pci.ids, usb.ids and others. One of the main projects in the Linux database world is SANE and we are working in integrating all the data about scanners. We have add some patches to create XML file(sane-desc) from scanners descriptions and we are feeding some database tables with the data in order to start working in scanner world. After some weeks of work, we have reach some points that need to be solved in the source, i.e, in SANE project. - Create a unique identifier for each database backend (a hardware driver for us): we have selected some fields to be now our primary key (unique identifier) but it could be great to have this identifier in the SANE backend descriptios. - Looking to the USB scanners, we have seen some support for plug&play using hotplug in the file libsane.usermap: Currently SANE has more that 400 USB scanners but in this file we have only about 200 identifiers. We think that using the data from usb.ids (from the usbutils package) SANE could be informed by hotplug of more scanners and the 200 scanners difference (if all of them are in usb.ids) could start to work P&P for the user. We can do this work if you think SANE project will use it. Also, we think that the USB ids need to be in the sane backend files, with the scanner data. Having the same data (scanner vendor/product) in more than one file (sane backends and hotplug file) is horrible in order to maintain it. It the uids are in the backend description files, it will be very easy to create the hotplug file and we will have only one source of information. Also, we offer some resources to do the work. We have some other ideas for the future like using DBUS in libusbscanner to inform the system and user applications that a new scanner is in the system but this is for the future. What do you think about the USB ideas? Cheers and thanks for your great work with scanners.