Remove nix-install-package support
[?]
Jan 15, 2018, 1:27 PM
ST4TUC3E5XU5SPRYPKWXCKHPCKHU4YXX7ZEZDI7PWN3WIKVEAVFQCDependencies
- [2]
OIS2UPQG - [3]
2DGQI6U4channel-contents: Fix display of last paragraph. - [4]
5G5PZ3TXFix 'Can't locate object method "buildstepoutputs"' - [5]
NLYDMDAX.nixpkgs: Drop obsolete manifest URI - [6]
RHMUFX4Rproduct list: convert to a proper table - [7]
YVH5SVLSMake one-click installs work for binary cache stores - [8]
IWVA2P2Y* Generate manifests on demand. Next step: generate NAR archives on - [9]
OD5FSS5A* Quick hack to allow viewing of dependency graphs (via nix-store -q - [10]
JRU2LRPZ - [11]
MNKXBLNCReturn 410 Gone (rather than 500) if an output is no longer available - [12]
NYC3LZKH* Generate NAR archives on the fly. Necessary for producing channels - [13]
ON4DDIBZ* Forgot to commit. - [14]
LVJKRTIK* Generate a Nix expression for the channel. - [15]
UZENK33P* Generate a .tar.bz2 file for the channel Nix expression, since - [16]
QE253KG4* Option to show the tail of a log. - [17]
5NO7NCKT* Refactoring. - [18]
BHZXGT2H* Channels: provide an index page that lists all the packages in the - [19]
CPSEZOSXRemove remaining references to store_mode etc. - [20]
HXBXDEFKSpeed up channel processing - [21]
OEPUOUNBUsing twitter bootstrap for more consistent looks for Hydra - [22]
KI423DCQStream logs if possible and remove size limit - [23]
UFR64PJ7Hide contents links - [24]
GIUGQKVRFix .nixpkg channel uri - [25]
UXVDOUBJ - [26]
GPRYAAFPhydra: change icon for positive failures - [27]
PKPWUHUX* Idem. - [28]
YS3AVMLCRemove buildtime and runtime dependency graph. It is useless on normal derivations. - [29]
XHVZXX6N - [30]
PZL3SZM3Give every page a consistent title - [31]
NDL67SQT* XHTML validity. - [32]
MVB7RRLT* Move NARs from the NixChannel controller to the Root controller and - [33]
GS4SFHCPtemplates: Use uri_for to reference static paths. - [34]
CQTN62OHDie tabs die - [35]
PMNWRTGJAdd multiple output support - [36]
BIVZGPUTOptimise clickable rows - [37]
6GEU36HWRemove obsolete CSS classes - [38]
5Y3XOQBRInclude the URL of the binary cache in .nixpkg files - [39]
ZRBXLKFO - [40]
IDT3SO3PGenerate *.narinfo files on the fly to support the binary cache substituter - [41]
HSVVEKTY* Start of a JSON API to get information about a specific build. - [42]
3PNG7NIBRemove trailing whitespace - [43]
3ZAJ2ZRPUse popovers for the product list help/details - [44]
D5QIOJGP* Move everything up one directory. - [*]
LBNVQXUB* Build the /build stuff in a separate controller. - [*]
JFZNAYJX* Showing releases.
Change contents
- edit in src/lib/Hydra/Base/Controller/NixChannel.pm at line 79
- edit in src/lib/Hydra/Base/Controller/NixChannel.pm at line 80
sub pkg : Chained('nix') PathPart Args(1) {my ($self, $c, $pkgName) = @_; - edit in src/lib/Hydra/Base/Controller/NixChannel.pm at line 81[8.84]→[8.1532:1639](∅→∅),[8.1639]→[8.1272:1429](∅→∅),[8.1429]→[8.1639:1786](∅→∅),[8.1639]→[8.1639:1786](∅→∅),[8.86]→[8.132:133](∅→∅),[8.1786]→[8.132:133](∅→∅),[8.132]→[8.132:133](∅→∅),[8.133]→[8.0:77](∅→∅),[8.77]→[7.30:129](∅→∅),[8.95]→[8.246:247](∅→∅),[7.129]→[8.246:247](∅→∅),[8.246]→[8.246:247](∅→∅),[8.247]→[8.178:220](∅→∅),[8.220]→[8.302:362](∅→∅),[8.302]→[8.302:362](∅→∅),[8.362]→[8.0:4](∅→∅)
if (!$c->stash->{build}) {$pkgName =~ /-(\d+)\.nixpkg$/ or notFound($c, "Bad package name.");# FIXME: need to handle multiple outputs: channelBuilds is# joined with the build outputs, so find() can return multiple# results.$c->stash->{build} = $c->stash->{channelBuilds}->find({ id => $1 })|| notFound($c, "No such package in this channel.");}gone($c, "Build " . $c->stash->{build}->id . " is no longer available.")if isLocalStore() && any { !isValidPath($_->path) } $c->stash->{build}->buildoutputs->all;$c->stash->{current_view} = 'NixPkg';$c->response->content_type('application/nix-package');} - edit in src/lib/Hydra/Controller/Build.pm at line 124
$c->stash->{binaryCachePublicUri} = $c->config->{binary_cache_public_uri}; - file deletion: NixPkg.pm NixPkg.pm
package Hydra::View::NixPkg;use strict;use base qw/Catalyst::View/;use Hydra::Helper::CatalystUtils;sub process {my ($self, $c) = @_;$c->response->content_type('application/nix-package');my $build = $c->stash->{build};my $channelUri = $c->config->{binary_cache_public_uri} // $c->uri_for('/');# FIXME: add multiple output supportmy $s = "NIXPKG1 http://invalid.org/". " " . $build->nixname . " " . $build->system. " " . $build->drvpath . " " . $build->buildoutputs->find({name => "out"})->path. " " . $channelUri;$c->response->body($s);return 1;}1; - edit in src/root/channel-contents.tt at line 26[3.25]→[8.785:786](∅→∅),[8.785]→[8.785:786](∅→∅),[8.786]→[2.0:45](∅→∅),[2.45]→[8.830:1014](∅→∅),[8.830]→[8.830:1014](∅→∅)
<p>Alternatively, if you have associated the<tt>application/nix-package</tt> MIME type with the<tt>nix-install-package</tt> program in your web browser, you caninstall the package simply by clicking on the packages below.</p> - edit in src/root/channel-contents.tt at line 47
[% uri = "${curUri}/pkg/${pkg.name}.nixpkg" %] - replacement in src/root/channel-contents.tt at line 50
<td><a class="row-link" href="[% uri %]"><tt>[% b.get_column('releasename') || b.nixname %]</tt></a></td><td><tt>[% b.get_column('releasename') || b.nixname %]</tt></td> - replacement in src/root/product-list.tt at line 74
One-Click installNix package - replacement in src/root/product-list.tt at line 77
[% uri = c.uri_for('/build' build.id 'nix' 'pkg' "${build.nixname}-${build.system}.nixpkg") %]<a href="[% uri %]"><tt>[% build.nixname %]</tt></a><tt>[% HTML.escape(build.nixname) %]</tt> - replacement in src/root/product-list.tt at line 80[6.1238]→[6.1238:1783](∅→∅),[6.1783]→[8.31272:31273](∅→∅),[8.1332]→[8.31272:31273](∅→∅),[8.31273]→[6.1784:1901](∅→∅)
[% WRAPPER makePopover title="Help" classes="btn-mini" %]<p>If you have Nix installed on your machine, you caninstall this package and all its dependencies automaticallyby clicking on the link above. This requires that you havethe <tt>application/nix-package</tt> MIME type associatedwith the <tt>nix-install-package</tt> program in your webbrowser. Alternatively, you can install it from thecommand-line:</p><pre><span class="shell-prompt">$ </span>nix-install-package --non-interactive --url [% uri %]</pre>[% WRAPPER makePopover title="Help" classes="btn-mini"%] <p>Yu can install this package using the Nix packagemanager from the command-line:</p> - replacement in src/root/product-list.tt at line 84
<p>If you get an error message “Permission denied”, youshould make sure that you have sufficient access rights tothe Nix store, e.g., run the command as <tt>root</tt>.</p><pre><span class="shell-prompt">$ </span>nix-env -i [%HTML.escape(product.path)%][% IF binaryCachePublicUri %] --option binary-caches [% HTML.escape(binaryCachePublicUri) %][% END %]</pre>