+73
lib/README.md
+73
lib/README.md
···
···+This directory contains the implementation, documentation and tests for the Nixpkgs `lib` library.+Example: `lib.lists` is a sub-library containing list-related functionality such as `lib.lists.take` and `lib.lists.imap0`.+- [`minver.nix`](minver.nix): A string of the minimum version of Nix that is required to evaluate Nixpkgs.+- [`systems`](systems): The `lib.systems` sub-library, structured into a directory instead of a file due to its complexity+- [`path`](path): The `lib.path` sub-library, which includes tests as well as a document describing the design goals of `lib.path`+The [module system](https://nixos.org/manual/nixpkgs/#module-system) spans multiple sub-libraries:+- [`modules.nix`](modules.nix): `lib.modules` for the core functions and anything not relating to option definitions+Reference documentation for library functions is written above each function as a multi-line comment.+These comments are processed using [nixdoc](https://github.com/nix-community/nixdoc) and [rendered in the Nixpkgs manual](https://nixos.org/manual/nixpkgs/stable/#chap-functions).+The nixdoc README describes the [comment format](https://github.com/nix-community/nixdoc#comment-format).+See the [chapter on contributing to the Nixpkgs manual](https://nixos.org/manual/nixpkgs/#chap-contributing) for how to build the manual.+All library tests can be run by building the derivation in [`tests/release.nix`](tests/release.nix):