diff --git a/src/root/build.tt b/src/root/build.tt
index 6d9f474a..5ab62a9a 100644
--- a/src/root/build.tt
+++ b/src/root/build.tt
@@ -18,9 +18,10 @@
Nr | What | Duration | Machine | Status |
- [% FOREACH step IN build.buildsteps %]
+ [% FOREACH step IN build.buildsteps.reverse %]
[% IF ( type == "All" ) || ( type == "Failed" && step.status != 0 ) || ( type == "Running" && step.busy == 1 ) %]
- [% has_log = buildStepLogExists(step);
+ [% has_log = seen.${step.drvpath} ? 0 : buildStepLogExists(step);
+ seen.${step.drvpath} = 1;
log = c.uri_for('/build' build.id 'nixlog' step.stepnr); %]
[% step.stepnr %] |