A modern, delicious implementation of the Nix package manager, focused on correctness, usability, and growth — and committed to doing right by its community
Find a file
Lunaphied 7a1054fa5f repl: improve :doc builtin repl command to support lambdas.
For a long time `nix repl` has supported displaying documentation set on
builtins, however, it has long been convention to use Markdown comments
on Nix functions themselves for documentation. This exposes that
information to `nix repl` users in a nice and formatted way.

NixOS/rfcs#145 doc-comments are primarily what this feature is intended
to consume, however, support for lambda documentation in the repl is
experimental. We do our best effort to support the RFC here.

These changes are based on [the nix-doc library](https://github.com/lf-/nix-doc) and
are licensed under the terms described in the relevant source files.

Change-Id: Ic6fe947d39a22540705d890737e336c4720b0a22
2024-04-03 13:47:22 -06:00
.github Add pre-commit checks 2024-03-29 22:57:40 -07:00
clang-tidy clang-tidy check infrastructure 2024-03-18 16:10:29 -07:00
contrib function-trace: always show the trace 2019-09-18 23:23:21 +02:00
doc repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
m4 Merge pull request #6258 from obsidiansystems/gcc-bug-ergonomics 2024-03-04 05:24:33 +01:00
maintainers repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
meson Add pre-commit checks 2024-03-29 22:57:40 -07:00
misc Add pre-commit checks 2024-03-29 22:57:40 -07:00
mk Build with traps on signed overflow 2024-03-27 23:54:04 -07:00
nix-doc repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
perl meson: implement perl bindings 2024-04-02 11:22:42 -06:00
scripts meson: install shell files 2024-03-29 20:10:33 +00:00
src repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
tests Merge pull request #9920 from 9999years/forbid-nested-debuggers 2024-03-31 17:28:25 +00:00
.clang-format Add pre-commit checks 2024-03-29 22:57:40 -07:00
.clang-tidy Add basic clang-tidy config 2024-03-29 20:26:38 -07:00
.dir-locals.el .dir-locals.el: Set c-block-comment-prefix 2020-07-10 11:21:06 +02:00
.editorconfig Add .editorconfig 2017-06-05 22:57:28 +01:00
.envrc Set MAKEFLAGS=-j and GTEST_BRIEF in .envrc 2024-03-28 18:17:28 -07:00
.gitignore Merge "Delete autoconf generated code from tree" into main 2024-04-01 17:34:29 +00:00
.version Update version to 2.90.0 2024-03-07 19:57:39 -07:00
boehmgc-coroutine-sp-fallback.diff Add pre-commit checks 2024-03-29 22:57:40 -07:00
boehmgc-traceable_allocator-public.diff Add pre-commit checks 2024-03-29 22:57:40 -07:00
configure.ac Stop vendoring toml11 2024-03-27 21:04:00 -04:00
CONTRIBUTING.md Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
COPYING Add pre-commit checks 2024-03-29 22:57:40 -07:00
default.nix add flake-compat to flake.nix and use sha256 in default.nix 2023-03-06 21:11:24 +01:00
docker.nix fix "add an option to include flake-registry..." 2023-05-16 14:35:31 +02:00
flake.lock Use upstream cachix/git-hooks.nix for pre-commit 2024-04-01 10:38:50 -07:00
flake.nix repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
justfile Add a justfile to make meson friendly :) 2024-03-30 03:03:46 +00:00
local.mk Build with traps on signed overflow 2024-03-27 23:54:04 -07:00
Makefile un-ups your start 2024-03-18 18:28:08 -07:00
Makefile.config.in repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
meson.build repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
meson.options meson: add switch to disable docs 2024-04-01 20:15:28 +00:00
package.nix repl: improve :doc builtin repl command to support lambdas. 2024-04-03 13:47:22 -06:00
precompiled-headers.h Config: Use nlohmann/json 2020-08-20 11:02:16 +02:00
README.md Improve hacking.md 2023-02-13 12:00:00 +04:00
shell.nix Remove url literals 2022-01-24 13:28:21 +01:00
treefmt.toml Add treefmt pre-commit hook 2024-03-29 22:57:43 -07:00

Nix

Open Collective supporters Test

Nix is a powerful package manager for Linux and other Unix systems that makes package management reliable and reproducible. Please refer to the Nix manual for more details.

Installation

On Linux and macOS the easiest way to install Nix is to run the following shell command (as a user other than root):

$ curl -L https://nixos.org/nix/install | sh

Information on additional installation methods is available on the Nix download page.

Building And Developing

See our Hacking guide in our manual for instruction on how to to set up a development environment and build Nix from source.

Additional Resources

License

Nix is released under the LGPL v2.1.