diff --git a/mirror-nixos-branch.pl b/mirror-nixos-branch.pl index 6dd60a2..bac4cb7 100755 --- a/mirror-nixos-branch.pl +++ b/mirror-nixos-branch.pl @@ -107,8 +107,12 @@ sub fetch { my $rev = $evalInfo->{jobsetevalinputs}->{nixpkgs}->{revision} or die; +# Get commit date of $rev as unixtime and formatted string +my $revUnix = `git show --no-patch --format='%ct' $rev` or die; +my $revDate = strftime("%F %T %Z", localtime($revUnix)); + print STDERR "\nRelease information:\n"; -print STDERR " - release is: $releaseName (build $releaseId)\n - eval is: $evalId\n - prefix is: $releasePrefix\n - Git commit is: $rev\n\n"; +print STDERR " - release is: $releaseName (build $releaseId)\n - eval is: $evalId\n - prefix is: $releasePrefix\n - Git commit is: $rev\n - Git commit date is: $revDate\n\n"; if ($bucketChannels) { # Guard against the channel going back in time. @@ -273,14 +277,14 @@ sub fetch { run("xz", "$tmpDir/store-paths"); } - my $now = strftime("%F %T", localtime); + my $now = strftime("%F %T %Z", localtime); my $title = "$channelName release $releaseName"; my $githubLink = "https://github.com/NixOS/nixpkgs/commits/$rev"; my $html = ""; $html .= "$title"; $html .= "

$title

"; - $html .= "

Released on $now from Git commit $rev "; + $html .= "

Released on $now from Git commit $rev from $revDate "; $html .= "via Hydra evaluation $evalId.

"; $html .= ""; @@ -357,7 +361,7 @@ sub redirect { # Update channels on channels.nixos.org. redirect($channelName, $releasePrefix); -redirect("$channelName/nixexprs.tar.xz", "$releasePrefix/nixexprs.tar.xz?rev=$rev"); +redirect("$channelName/nixexprs.tar.xz", "$releasePrefix/nixexprs.tar.xz?rev=$rev&lastModified=$revUnix"); redirect("$channelName/git-revision", "$releasePrefix/git-revision"); redirect("$channelName/packages.json.br", "$releasePrefix/packages.json.br"); redirect("$channelName/store-paths.xz", "$releasePrefix/store-paths.xz");
File nameSizeSHA-256 hash