with the joined patch, i managed to get unattended/linux copy the drivers selected during questions phase. for now, i didn't manage to have an oemdir var in _meta where i can say where to look for drivers so i can remove the symlink i put in I386\$OEM$ and windows stops to copy all my drivers tree on each install.

could anyone help me on this ?

thanks
Regards

                Julien

note: two advantages
- less copy (only needed drivers)
- less copy problem during windows copy which could interrupt the whole
process
--- install.pl.1        2004-12-15 07:21:04.000000000 +0100
+++ install.pl  2004-12-15 08:11:32.000000000 +0100
@@ -1221,6 +1221,13 @@
     };
 
 $u->{'Unattended'}->{'OemPnPDriversPath'} = \&ask_oem_pnp_drivers_path;
+#$u->{'Unattended'}->{'OemPnPDriversPath'} =
+#    sub {
+#       my $oemdir = $u->{'_meta'}->{'oemdir'};
+#       defined $oemdir or
+#           return \&ask_oem_pnp_drivers_path;
+#       return $oemdir;
+#    }; 
 
 my $product_key_q =
     "Enter your product key now.\n"
@@ -1488,9 +1495,29 @@
 
 # Batch script to run after this script exits.
 my $doit = "$netinst\\doit.bat";
+# <- insert driver copy: no, prefer copying to /c (which is y:\)
+#push @doit_cmds, 'dir y:';
+#push @doit_cmds, 'pause';
 $is_linux
     and push @doit_cmds, 'xcopy /s /e /y Y:\\ C:\\';
 push @doit_cmds, split /;/, $u->{'_meta'}->{'doit_cmds'};
+
+# Adding only needed drivers copy
+use Data::Dumper;
+#print Dumper([EMAIL PROTECTED]);
+#print Dumper(\$u->{'Unattended'}->{'OemPnPDriversPath'});
+print "oem pnp: ".$u->{'Unattended'}->{'OemPnPDriversPath'}."\n";
+my @oem_dirs = split /;/, $u->{'Unattended'}->{'OemPnPDriversPath'};
+foreach my $tmp_dir(@oem_dirs) {
+       $tmp_dir =~ s/\\/\//g;
+       print "creating /c/$tmp_dir\n";
+       print `mkdir -p "/c/$tmp_dir"`;
+       print "copying driver /z/$tmp_dir to /c/$tmp_dir\n";
+       print `cp -R '/z/$tmp_dir' '/c/$tmp_dir'`;
+
+}
+#print Dumper(\$u);
+
 print "Creating $doit...";
 write_file ($doit, @doit_cmds);
 print "done.\n";
@@ -1523,6 +1550,7 @@
 
 write_file ($unattend_txt, @unattend_contents);
 print "done.\n";
+#print Dumper([EMAIL PROTECTED]);
 
 while ($u->{'_meta'}->{'edit_files'}) {
     my $file = menu_choice (@edit_choices,

Reply via email to