hydra/src/root/product-list.tt

198 lines
7.1 KiB
Plaintext
Raw Normal View History

2008-11-27 20:33:17 +00:00
[% USE mibs=format("%.2f") %]
2008-11-27 18:27:19 +00:00
[% BLOCK renderProductList -%]
[% # Work around a strange bug: build.buildproducts.size returns 3 when the actual size is 1.
nrProducts = 0; FOREACH product IN build.buildproducts; nrProducts = nrProducts + 1; END
%]
2008-11-27 18:27:19 +00:00
<ul class="productList">
[% FOREACH product IN build.buildproducts -%]
[% uri = "${c.uri_for('/build' build.id 'download' product.productnr)}"
_ (product.name ? "/" _ product.name : "")
_ (product.defaultpath ? "/" _ product.defaultpath : "") %]
[% contents = c.uri_for('/build' build.id 'contents' product.productnr) %]
2008-11-27 18:27:19 +00:00
[% SWITCH product.type %]
[% CASE "nix-build" %]
2009-02-23 13:23:55 +00:00
<li class="product">
2009-02-25 15:39:51 +00:00
[% uri = c.uri_for('/build' build.id 'nix' 'pkg' "${build.nixname}-${build.system}.nixpkg") %]
<a href="[% uri %]">
2009-02-23 13:23:55 +00:00
<img src="/static/images/nix-build.png" alt="Source" />
One-click install of Nix package <tt>[% build.nixname %]</tt>
</a>
[<a class="productDetailsToggle" href="javascript:">help</a>, <a href="[% contents %]">contents</a>]
2009-02-23 13:23:55 +00:00
<div class="help productDetails">
<p>If you have Nix installed on your machine, you can
install this package and all its dependencies automatically
by clicking on the link above. This requires that you have
the <tt>application/nix-package</tt> MIME type associated
with the <tt>nix-install-package</tt> program in your web
browser. Alternatively, you can install it from the
2009-03-04 15:25:35 +00:00
command-line:</p>
2009-02-23 13:23:55 +00:00
<pre>$ nix-install-package --non-interactive --url [% uri %]</pre>
2009-02-23 13:23:55 +00:00
<p>If you get an error message “Permission denied”, you
should make sure that you have sufficient access rights to
the Nix store, e.g., run the command as <tt>root</tt>.
</p>
</div>
</li>
<li class="product">
2009-02-25 14:34:29 +00:00
[% filename = "${build.nixname}.closure.gz" %]
[% uri = c.uri_for('/build' build.id 'nix' 'closure' filename ) %]
<a href="[% uri %]">
2008-11-27 18:27:19 +00:00
<img src="/static/images/nix-build.png" alt="Source" />
2009-02-23 13:23:55 +00:00
Nix closure of path <tt>[% product.path %]</tt>
2008-11-27 18:27:19 +00:00
</a>
2009-02-23 13:23:55 +00:00
2008-11-27 18:27:19 +00:00
[<a class="productDetailsToggle" href="javascript:">help</a>]
<div class="help productDetails">
2009-02-23 13:23:55 +00:00
<p>If you have Nix installed on your machine, this build and
all its dependencies can be unpacked into your local Nix
store by doing:</p>
2008-11-27 18:27:19 +00:00
2009-02-25 14:34:29 +00:00
<pre>$ gunzip &lt; [% filename %] | nix-store --import</pre>
2008-11-27 18:27:19 +00:00
2009-03-04 15:25:35 +00:00
<p>or to download and unpack in one command:</p>
2008-11-27 18:27:19 +00:00
2009-02-25 14:34:29 +00:00
<pre>$ curl [% uri %] | gunzip | nix-store --import</pre>
2008-11-27 18:27:19 +00:00
<p>The package can then be found in the path <tt>[%
2009-03-04 15:25:35 +00:00
product.path %]</tt>. Youll probably also want to do</p>
2008-11-28 14:36:04 +00:00
2008-11-29 00:56:40 +00:00
<pre>$ nix-env -i [% product.path %]</pre>
2008-11-28 14:36:04 +00:00
2009-03-04 15:25:35 +00:00
<p>to actually install the package in your Nix user environment.</p>
2008-11-28 14:36:04 +00:00
<p>If you get the error message “imported
2008-11-27 18:27:19 +00:00
archive lacks a signature”, you should make sure that you have
sufficient access rights to the Nix store, e.g., run the
command as <tt>root</tt>.</p>
</div>
2009-02-23 13:23:55 +00:00
</li>
2008-11-27 18:27:19 +00:00
[% CASE "file" %]
2009-02-23 13:23:55 +00:00
<li class="product">
<a href="[% uri %]">
2008-11-27 18:27:19 +00:00
[% SWITCH product.subtype %]
[% CASE "source-dist" %]
<img src="/static/images/source-dist.png" alt="Source" /> Source distribution <tt>[% product.name %]</tt>
[% CASE "rpm" %]
<img src="/static/images/rpm.png" alt="RPM" /> RPM package <tt>[% product.name %]</tt>
2009-10-21 13:48:47 +00:00
[% CASE "srpm" %]
<img src="/static/images/rpm.png" alt="Source RPM" /> Source RPM package <tt>[% product.name %]</tt>
2008-11-27 18:27:19 +00:00
[% CASE "deb" %]
<img src="/static/images/debian.png" alt="RPM" /> Debian package <tt>[% product.name %]</tt>
2008-12-17 15:59:28 +00:00
[% CASE "iso" %]
<img src="/static/images/iso.png" alt="ISO" /> ISO-9660 CD/DVD image <tt>[% product.name %]</tt>
2008-11-27 18:27:19 +00:00
[% CASE DEFAULT %]
File <tt>[% product.name %]</tt> of type <tt>[% product.subtype %]</tt>
[% END %]
</a>
[<a class="productDetailsToggle" href="javascript:">details</a>, <a href="[% contents %]">contents</a>]
2008-11-27 18:27:19 +00:00
<div class="productDetails">
<table>
<tr>
<th>URL:</th>
<td><a href="[% uri %]"><tt>[% uri %]</tt></a></td>
</tr>
[% IF latestRoot %]
<tr>
<th>Links to latest:</th>
2008-11-27 18:27:19 +00:00
<td>
[% IF nrProducts > 1 %]
[% uri2 = "${c.uri_for(latestRoot.join('/') 'download-by-type' product.type product.subtype)}" %]
<a href="[% uri2 %]"><tt>[% uri2 %]</tt></a>
<br />
[% uri2 = "${c.uri_for(latestRoot.join('/') 'download' product.productnr)}" %]
<a href="[% uri2 %]"><tt>[% uri2 %]</tt></a>
[% ELSE %]
[% uri2 = "${c.uri_for(latestRoot.join('/') 'download')}" %]
<a href="[% uri2 %]"><tt>[% uri2 %]</tt></a>
[% END %]
2008-11-27 18:27:19 +00:00
</td>
</tr>
[% END %]
2008-11-27 18:27:19 +00:00
<tr><th>File size:</th><td>[% product.filesize %] bytes ([% mibs(product.filesize / (1024 * 1024)) %] MiB)</td></tr>
2008-11-27 20:33:17 +00:00
<tr><th>SHA-1 hash:</th><td><tt>[% product.sha1hash %]</tt></td></tr>
<tr><th>SHA-256 hash:</th><td><tt>[% product.sha256hash %]</tt></td></tr>
2008-11-27 18:27:19 +00:00
<tr><th>Full path:</th><td><tt>[% product.path %]</tt></td></tr>
</table>
</div>
2009-02-23 13:23:55 +00:00
</li>
2008-11-27 18:27:19 +00:00
[% CASE "report" %]
2009-02-23 13:23:55 +00:00
<li class="product">
<a href="[% uri %]">
2008-11-27 18:27:19 +00:00
<img src="/static/images/report.png" alt="Report" />
[% SWITCH product.subtype %]
[% CASE "coverage" %]
Code coverage analysis report
[% CASE DEFAULT %]
Report of type <tt>[% product.subtype %]</tt>
[% END %]
</a>
2009-02-23 13:23:55 +00:00
</li>
2008-11-27 18:27:19 +00:00
2009-05-07 13:15:10 +00:00
[% CASE ["doc", "doc-pdf"] %]
2008-11-27 18:27:19 +00:00
2009-02-23 13:23:55 +00:00
<li class="product">
<a href="[% uri %]">
2009-05-07 13:15:10 +00:00
[% IF product.type == "doc-pdf" %]
<img src="/static/images/pdf.png" alt="PDF document" />
[% ELSE %]
<img src="/static/images/document.png" alt="Document" />
[% END %]
2008-11-27 18:27:19 +00:00
[% SWITCH product.subtype %]
[% CASE "readme" %]
“README” file
[% CASE "manual" %]
Manual
2008-11-29 00:56:40 +00:00
[% CASE "release-notes" %]
Release notes
2008-11-27 18:27:19 +00:00
[% CASE DEFAULT %]
Documentation of type <tt>[% product.subtype %]</tt>
[% END %]
</a>
2009-02-23 13:23:55 +00:00
</li>
2008-11-27 18:27:19 +00:00
[% CASE DEFAULT %]
2009-02-23 13:23:55 +00:00
<li class="product">
2008-11-27 18:27:19 +00:00
Something of type <tt>[% product.type %]</tt>
2009-02-23 13:23:55 +00:00
</li>
2008-11-27 18:27:19 +00:00
[% END %]
2009-02-23 13:23:55 +00:00
2008-11-27 18:27:19 +00:00
[% END -%]
</ul>
[% END %]
2009-03-04 15:25:35 +00:00
<script type="text/javascript">
2008-11-27 18:27:19 +00:00
$(document).ready(function() {
$('.productDetailsToggle').toggle(
function () { $(".productDetails", $(this).parents(".product")).fadeIn(); },
function () { $(".productDetails", $(this).parents(".product")).hide(); }
);
});
</script>