add vendor about pdef

This commit is contained in:
Johannes Kirschbauer 2024-01-01 16:47:02 +01:00 committed by Johannes Kirschbauer
parent 52758ae423
commit 338136eb55
3 changed files with 29 additions and 15 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
pdefs.nix linguist-vendored

View File

@ -3,9 +3,6 @@
![Website](https://img.shields.io/website?down_message=noogle.dev&up_message=noogle.dev&url=https%3A%2F%2Fnoogle.dev) ![Website](https://img.shields.io/website?down_message=noogle.dev&up_message=noogle.dev&url=https%3A%2F%2Fnoogle.dev)
![GitHub top language](https://img.shields.io/github/languages/top/hsjobeki/noogle) ![GitHub top language](https://img.shields.io/github/languages/top/hsjobeki/noogle)
![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/hsjobeki/noogle/main.yml) ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/hsjobeki/noogle/main.yml)
![built-with-dream2nix](https://img.shields.io/badge/built%20with-dream2nix-blue)
Connect with us on matrix: [#noogle:matrix.org](https://matrix.to/#/#noogle:matrix.org)
### Noogle is a Nix API search engine. It lets you search nix functions. ### Noogle is a Nix API search engine. It lets you search nix functions.
@ -13,29 +10,40 @@ Connect with us on matrix: [#noogle:matrix.org](https://matrix.to/#/#noogle:matr
- [x] Beginners-friendly search for nix and nix-related functions - [x] Beginners-friendly search for nix and nix-related functions
- Render documentation comments optimized for readability - Render documentation comments optimized for readability
- We are working on a [standard]() for in-code-documentation - [x] Filter by **type** signatures.
- [x] fuzzy-search. - Function types are parsed and interpreted.
- show why/what terms matched.
- Share results with a direct URL.
- [x] Noogle also knows stuff that is not officially documented. - [x] Noogle also knows stuff that is not officially documented.
- Types of builtins. (including builtins.derivation) - Types of builtins. (including builtins.derivation)
- Can be extended via markdown contributions to noogle. - Can be extended via markdown contributions to noogle.
- Always shows the latest docs based on the main branch of nixpkgs. - Always shows the latest docs based on the main branch of nixpkgs.
- [x] Search by **type** signatures. - [x] Outputs Pre-rendered static html that is indexable by other search engines.
- Function types are parsed and interpreted. - [x] Wasm based performant instant search.
- We are working on a standard way to write type-documentation: [typednix.dev](https://typednix.dev)
## Available data ## Available data
There are the following subsets of nix functions available: There are the following subsets of nix functions available.
- nix/**builtins** Recursively Indexed:
- nixpkgs/**lib**
- nixpkgs/build-support/**trivial-builders** - lib
- pkgs.rustPackages
Normally Indexed:
- builtins
- pkgs.stdenv
- pkgs.dockerTools
- pkgs.writers
- pkgs.pythonPackages
- pkgs.haskell.lib
- pkgs.dockerTools
## Contribute ## Contribute
Contributions are very welcome to file a PR or issue. Contributions are very welcome just file a PR or issue.
Indexed data can be added very easily in ./pasta/src/eval.nix
> Note: Indexed data must evaluate!
### Build this page ### Build this page

View File

@ -22,6 +22,8 @@ let
# Contains seperate sets of metadata. # Contains seperate sets of metadata.
# which then allows running seperate evaluations. Once at a time for better error tracing and memory management. # which then allows running seperate evaluations. Once at a time for better error tracing and memory management.
docs = { docs = {
############# Recusive analysis sets ############# Recusive analysis sets
lib = collectFns lib { initialPath = [ "lib" ]; }; lib = collectFns lib { initialPath = [ "lib" ]; };
@ -42,6 +44,9 @@ let
builtins = builtins =
getDocsFromSet builtins [ "builtins" ]; getDocsFromSet builtins [ "builtins" ];
}; };
all = builtins.foldl' (acc: name: acc ++ docs.${name}) [ ] (builtins.attrNames docs); all = builtins.foldl' (acc: name: acc ++ docs.${name}) [ ] (builtins.attrNames docs);
# generate test_data for pesto # generate test_data for pesto