[Nix-dev] Displaying package parameters
Fabian Schmitthenner
nix-dev at schmitthenner.eu
Tue Mar 8 16:46:55 CET 2016
I've added a few features:
- Search in 15.09 as well as 16.03
- Search in parameters
- A few more packages with parameters are recognized, e. g. firefox now
shows parameters
- Better error handling: If a parameter fails while trying to determine
what kind it is, it's simply not displayed, but anything else is
As before, demo can be foud here:
http://schmitthenner.eu/nixos-homepage/nixos/packages.html. (compare to
official version: https://nixos.org/nixos/packages.html). You might need
to clear your cache to see the new version.
I've also added a pull request:
https://github.com/NixOS/nixos-homepage/pull/78. Feel free to comment
either on the list or on github.
Have a great day!
Fabian
On 02/29/2016 03:59 AM, Fabian Schmitthenner wrote:
> Hi!
>
> I just wanted to share that I tried displaying package parameters on the
> nixos homepage and the current result can be seen here:
> http://schmitthenner.eu/nixos-homepage/nixos/packages.html.
>
> When you click on a package, you hopefully see its parameter. This uses
> a heruristic to try to figure out which parameters are packages (and
> thus not displayed) and which are not (and thus displayed) that goes
> roughly as follows:
>
> - If the parameter is instantiated - either implicitly or explicitly -
> by callPackage, we look at the value and if it's a derivation, or a list
> or attrset set of derivations, or a function it's not displayed
> - Otherwise, it's displayed
>
> I think there was a discussion about this a short while ago, but I
> couldn't find it.
>
> Please let me know what you think and if we might want a (more elaborate
> version, e. g. also displaying the value of default arguments that
> aren't changed by callPackage, which requires an other change to nix
> because this info is currently not available, we only know if the
> argument is optional or not afaik) of this on our official website.
>
> Source code can be found on
> https://github.com/NixOS/nixos-homepage/compare/master...fkz:master
> Technically, I patched nixpkgs customization, so we not only get the
> override... functions, but also the original parameters and the original
> function.
> Furthermore, this uses a patched version of nix which allows catching
> errors inside nix (added a primop __catch) that also seems useful more
> generally (when polished) (see https://github.com/fkz/nix/tree/catch-throw).
>
> Fabian
>
More information about the nix-dev
mailing list