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. 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 - 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 the .inf or in the .cat or not. The virtio-win driver packages I could get my hands on all matched the above assumptions. [ There's no integration with the rest of the system yet as I'd like to sort out some issues first which may affect the logic (in a followup mail). ] Roman Kagan (2): add parser for driver catalog files add script to lay out drivers based on their catalog files --- changes since v1: - fix pep8 warnings except for the OS table alignment - add debugging print of what driver package is being processed - switch to argparse - facilitate using as a module util/cpdrivers.py | 220 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ util/parsecat.py | 188 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 408 insertions(+) create mode 100644 util/cpdrivers.py create mode 100644 util/parsecat.py -- 2.5.0 _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list