Fixes NixOS/nix#169.
L5Z6CN7MHFGRL2QPLCVQJSDECT35EW52INUV5RVI4CXH2YSDJGNAC
GTGPPGJCXTPY2VSW7ECIXY56C6JKFAPT2NNZFSZRH3DW6JAMPPHAC
PMNWRTGJ4GVSMSSAWSUD57B26PCRAHMZIQ5SIWJIK7A74ENKEQLAC
LVJKRTIK5WOWWAZ454B4DCCGETOIQJK5TLOWMZVNY2B4AEGF2GMAC
I42G2Z7PKDALZKM526VU253MZORF54KFJ3VNGXVE76LRH2RGNORQC
32LK6HFVX2KAUEY7KMNU7D25TVUW6R7EYRKUPQYBGC5XLZ2B5O7QC
UZENK33PYWZIWNJMLE2IIXKA6KOCGKGOWUMVBNXAYBOKT2H6ZT6AC
PCK2Q2VOAZBNDXVHHGOGKK4ATOA6HKARYPBFGTMH672GANWBHWWQC
PUXLEJTZQTDKE7YNGJJ2VV2T5OYDRYHGZAYV7OQ6DSMAWI5IF67QC
$res .= " # $pkg->{name}\n";
$res .= " { type = \"derivation\";\n";
$res .= " name = " . escape ($build->get_column("releasename") or $build->nixname) . ";\n";
$res .= " system = " . (escape $build->system) . ";\n";
$res .= " outPath = " . (escape $pkg->{outPath}) . ";\n";
$res .= " meta = {\n";
$res .= " description = " . (escape $build->description) . ";\n"
my $s = "";
$s .= " # $pkg->{name}\n";
$s .= " ${\escape $build->get_column('job')} = {\n";
$s .= " type = \"derivation\";\n";
$s .= " name = ${\escape ($build->get_column('releasename') or $build->nixname)};\n";
$s .= " system = ${\escape $build->system};\n";
$s .= " outPath = ${\escape $pkg->{outPath}};\n";
$s .= " meta = {\n";
$s .= " description = ${\escape $build->description};\n"
$res .= " };\n";
$res .= " }\n";
$s .= " maintainers = ${\escape $build->maintainers};\n"
if $build->maintainers;
$s .= " };\n";
$s .= " };\n\n";
$perSystem{$build->system} .= $s;
}
my $res = "{ system ? builtins.currentSystem }:\n\n";
my $first = 1;
foreach my $system (keys %perSystem) {
$res .= "else " if !$first;
$res .= "if system == ${\escape $system} then {\n\n";
$res .= $perSystem{$system};
$res .= "}\n\n";
$first = 0;
$tar->add_data("channel/channel-name", ($c->stash->{channelName} or "unnamed-channel"), {mtime => 0});
$tar->add_data("channel/default.nix", $res, {mtime => 0});
$tar->add_data("channel/channel-name", ($c->stash->{channelName} or "unnamed-channel"), {mtime => 1});
$tar->add_data("channel/default.nix", $res, {mtime => 1});