Really cool, @hsjobeki!
Context: https://hoogle.haskell.org
It would be nice to also include the builtins.
Just pushed a new commit including all the builtins.
Very nice. Will the trivial builders eg symlinkJoin be in scope for this project?
Ok, but what’s Hoogle?
Ok, I can guess by reverse inference from what this site shows, but really, why assume?
Hoogle is this site but for Haskell
Damn functional programmers with their recursion…
Looks like some of the trivial builders could be added with a little work.
I thought it might make sense to extend the scope even further, because i‘d like to also explore e.g ‚stdenv.mkDerivation‘ with all the attributes explained. I will need some time to figure things out, then it might make sense to add all nixpkgs functions; one context after another until we can search really everything.
For drv-parts I already ported the interface of mkDerivation to the module system. The types are already there, just the descriptions are missing (as of now).
The modules in drv-parts could be used as a data source for noogle.
To add information about other package functions like buildPythonPackage, for example, one could just port those to drv-parts as well.
This would benefit drv-parts and noogle at the same time.
Hooray! I’ve looked for something like this a few times and just navigated to the forum to ask about it. Glad I searched once more! Thanks @hsjobeki (and @fricklerhandwerk for posting about it).
trivial-builder have been added today. Also they don’t document their typed-signatures, the examples and descriptions are indexable.
→ If you’re missing some functions from trivial-builders it may not be documented or missing the documentation strings. (in pkgs/trivial-builders.nix)
Thanks @phaer for adding openSearch to noogle.
Noogle can now be used as search-engine directly from within the browsers search field.
I just discovered this, and it’s really great - thanks! Can’t wait for more static typing