$kp = "need-kernel-deb-wheezy-backports" if $kp eq "need-kernel-deb-armmp";
$kp =~ s/need-kernel-deb-$ho->{Suite}-// or next;
- my $kern = "$d_i/$kp.deb";
- my $kurl = create_webfile($ho, "kernel", sub {
- copy($kern, $_[0])
- or die "Copy kernel $kern failed: $!";
- });
-
- my $ird = "$d_i/initramfs-tools.deb";
- my $iurl = create_webfile($ho, "initramfs-tools", sub {
- copy($ird, $_[0])
- or die "Copy initramfs-tools $ird failed: $!";
- });
-
- preseed_hook_command($ho, 'late_command', $sfx, <<END);
+ my $cmds = <<END;
#!/bin/sh
set -ex
r=/target
-$preseed_wget -O \$r/tmp/kern.deb $kurl
-$preseed_wget -O \$r/tmp/initramfs-tools.deb $iurl
+END
+
+ my @kdebs;
+ my $kdeb = sub {
+ my ($what, $file) = @_;
+
+ logm("for late_command using $what $file");
+ my $furl = create_webfile($ho, $what, sub {
+ copy($file, $_[0]) or die "Copy $what $file failed: $!";
+ });
+ my $tmpfn = "/tmp/$what.deb";
+
+ $cmds .= <<END;
+$preseed_wget -O \$r$tmpfn $furl
+END
+ push @kdebs, $tmpfn;
+ };
+
+ my $kern = "$d_i/$kp.deb";
+ $kdeb->("kernel", $kern);
+
+ my $ird = "$d_i/initramfs-tools.deb";
+ $kdeb->("initramfs-tools", $ird);
+
+ $cmds .= <<END;
# This will fail due to dependencies...
-in-target dpkg -i /tmp/kern.deb /tmp/initramfs-tools.deb || true
+in-target dpkg -i @kdebs || true
# ... Now fix everything up...
in-target apt-get install -f -y
END
+
+ preseed_hook_command($ho, 'late_command', $sfx, $cmds);
}
if ( $ho->{Flags}{'need-uboot-bootscr'} ) {