On 01/18/2016 09:15 AM, Roman Kagan wrote: > As was discussed some time ago on libguestfs ML > (http://thread.gmane.org/gmane.comp.emulators.guestfs/8341/focus=8576) > there is a need in a tool that would lay out the Windows guest drivers > on a filesystem by Windows flavor and architecture in a way that is > > - easy to consume by both humans and programs > - dependable in the long term > > This patch series brings in the scripts to do this. > > The scripts are based on the idea that the most actual information about > the suitability of a driver for a particular flavor / architecture is > contained in the driver's catalog file (in particular, the process of > ISV or WHQL siging may affect it). > > Since the catalog files are DER-encoded ASN.1 structures the first patch > introduces a module to extract relevant information from a .cat file > using PyASN1 library. > Sounds good. Have you tested this against WHQL cat files? Or just those chipped with the public/fedora drivers? > The second patch introduces a script that lays out the drivers by > arch/flavor. > It assumes that > > - every driver for a particular arch/flavor is contained in a separate > directory > This is correct... but in fedora/RHEL we do use hard links to share the same file across multiple directories, since some drivers are WHQL signed for multiple windows versions, so keeping a full copy is redundant. I don't think that matters here though. (TBH it's difficult to keep all the variables here in my head, so I may be wrong about things... but once there's more complete patches I'll play with them and verify my assumptions) > - the directory contains a single .inf file; the basename of the file is > taken as the name of the package > > - the .cat file for the package is in the same directory and has the > same basename as the .inf > > - all the files contained in that directory are associated with the > driver and go together with it no matter if they are listed in .inf or > .cat or not. > Yes I believe these assumptions are correct. > The virtio-win driver packages I could get my hands on all matched the > above assumptions. > All in all this sounds good. The code looks fine modulo some style nits that aren't worth harping over, they can be cleaned up later. Thanks, Cole > [ There's no integration with the rest of the system yet as I'd like to > receive some comments on these two first. ] > > Roman Kagan (2): > add parser for driver catalog files > add script to lay out drivers based on their catalog files > > util/cpdrivers.py | 191 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > util/parsecat.py | 166 +++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 357 insertions(+) > create mode 100644 util/cpdrivers.py > create mode 100644 util/parsecat.py > _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list