test-driver: Use netpbm instead of imagemagick

Imagemagick pulls in 100s of megabytes of dependencies.

+4 -4
+1 -1
nixos/lib/test-driver/Machine.pm
··· 482 my $name = basename($filename); 483 $self->nest("making screenshot ‘$name’", sub { 484 $self->sendMonitorCommand("screendump $tmp"); 485 - system("convert $tmp ${filename}") == 0 486 or die "cannot convert screenshot"; 487 unlink $tmp; 488 }, { image => $name } );
··· 482 my $name = basename($filename); 483 $self->nest("making screenshot ‘$name’", sub { 484 $self->sendMonitorCommand("screendump $tmp"); 485 + system("pnmtopng $tmp > ${filename}") == 0 486 or die "cannot convert screenshot"; 487 unlink $tmp; 488 }, { image => $name } );
+3 -3
nixos/lib/testing.nix
··· 27 cp ${./test-driver/Logger.pm} $libDir/Logger.pm 28 29 wrapProgram $out/bin/nixos-test-driver \ 30 - --prefix PATH : "${pkgs.qemu_kvm}/bin:${pkgs.vde2}/bin:${imagemagick}/bin:${coreutils}/bin" \ 31 --prefix PERL5LIB : "${lib.makePerlPath [ perlPackages.TermReadLineGnu perlPackages.XMLWriter perlPackages.IOTty ]}:$out/lib/perl5/site_perl" 32 ''; 33 }; ··· 41 42 requiredSystemFeatures = [ "kvm" "nixos-test" ]; 43 44 - buildInputs = [ pkgs.libxslt ]; 45 46 buildCommand = 47 '' ··· 153 startAll; 154 $client->waitForUnit("multi-user.target"); 155 ${preBuild} 156 - $client->succeed("env -i ${pkgs.bash}/bin/bash ${buildrunner} /tmp/xchg/saved-env >&2"); 157 ${postBuild} 158 $client->succeed("sync"); # flush all data before pulling the plug 159 '';
··· 27 cp ${./test-driver/Logger.pm} $libDir/Logger.pm 28 29 wrapProgram $out/bin/nixos-test-driver \ 30 + --prefix PATH : "${qemu_kvm}/bin:${vde2}/bin:${netpbm}/bin:${coreutils}/bin" \ 31 --prefix PERL5LIB : "${lib.makePerlPath [ perlPackages.TermReadLineGnu perlPackages.XMLWriter perlPackages.IOTty ]}:$out/lib/perl5/site_perl" 32 ''; 33 }; ··· 41 42 requiredSystemFeatures = [ "kvm" "nixos-test" ]; 43 44 + buildInputs = [ libxslt ]; 45 46 buildCommand = 47 '' ··· 153 startAll; 154 $client->waitForUnit("multi-user.target"); 155 ${preBuild} 156 + $client->succeed("env -i ${bash}/bin/bash ${buildrunner} /tmp/xchg/saved-env >&2"); 157 ${postBuild} 158 $client->succeed("sync"); # flush all data before pulling the plug 159 '';