Hello, As discussed previously on this list, I've implemented an automated selection of Windows drivers that match the current hardware platform PCI devices and add them to the Windows installation (ie copied onto hard drive).
This provided code (see attached files) "works for me", with unattended-4.8rc5 to install Windows XP US SP3 on DELL Latitude x300 and Precision M60 laptops. Please integrate this code into the unattended.sf.net community project if this code suits to you. A code review may be usefull since this is my first dive into Unattended code ;-) You can also use any part of comment(s) or description(s) below into the doc. of course. Here more details. ----------------------------------------------------------------------- How it works, implementation an integration into unattended-4.8rc5 code ----------------------------------------------------------------------- Note: you need a collection of Windows drivers to play with it; see online help of search-win-drivers.pl for an example of its setup. install/dosbin/search-win-drivers.pl is a standalone "application" (self documented) that parse the output of 'lspci' commands to retrieve PCI devices identifications of the hardware platform it's running on. It requires on input a path to a Windows drivers collection. It parses this collection recursively (look for .inf files) in order to find which Windows drivers are supposed to match these hardware devices. It returns a list of the .inf parent directory that match. A given PCI device may imply several driver(s) path, it's Windows driver installation system job to choose which one is usefull. See search-win-drivers.pl (verbose) output to see which PCI devices may have no match. install.pl.patch contains the needed modification(s) to use search-win-drivers.pl. Among other things, it will: - retrieve output of search-win-drivers.pl, - write output of search-win-drivers.pl into /c/netinst/logs/search-win-drivers.log for further review - store the list of matching windows (drivers) provided by search-win-drivers.pl. - update the 'OemPnPDriversPath' string with all these new path to consider. nt5x-install.patch contains the needed modification(s) to perform the files/dir copies of the drivers to include into installation provided by search-win-drivers.pl. Please note that I was obliged to change the name of folders of copied drivers, in order to: - limit as much as possible the length of 'OemPnPDriversPath' string - avoid collision(s) among driver folder(s). So all drivers folders will be copied with the following names onto the hard-drive : [c:]\drv-scan\1 [c:]\drv-scan\2 [c:]\drv-scan\3 .... The maps between full drivers paths and their copied destination is available in unattend.txt as [_meta]/'scan_windrivers_dest_map' string. Relevant entries for site/config.pl: ## disable Windows Drivers scanning #$u->{'_temp'}->{'scan_windrivers'} = ''; ## Windows drivers collection root path: #$u->{'_temp'}->{'scan_windrivers_path'} = "z:\site\win_drivers" ; ## exclude PCI_CLASSID Ethernet Controller (0x0200) ## from search of Windows Drivers scanning #$u->{'_temp'}->{'scan_windrivers_options'} = '-c 0200' ; ## where to store matching driver(s) of Windows Drivers scanning ## (relative to %systemdrive% once Windows is installed): #$u->{'_temp'}->{'scan_windrivers_dest'} = 'drv-scan' ; ----------------------------------------------------------------------- known limitations ----------------------------------------------------------------------- - works only with linuxboot and nt5x-install : DOSEMU not supported. - TXTSETUP.OEM interaction untested. - no check of which OS to install is performed on driver(s) search: search-win-drivers.pl return any matching device. - PCI devices exclusion of search-win-drivers.pl is only based on PCI_CLASSID; in the future, we should use a more generic form for exclusion, like '<class>:<vendor>:<device>' - an "unmatched" PCI device does not means unsupported: it may be supported via buildin drivers collection of windows, regards, Pierre Bourgin
search-win-drivers-unattended-4.8rc5.tar.gz
Description: GNU Zip compressed data
------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________ unattended-devel mailing list unattended-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/unattended-devel