aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr
diff options
context:
space:
mode:
authorstuebinm <stuebinm@disroot.org>2024-04-05 23:41:44 +0200
committereldritch horrors <pennae@lix.systems>2024-04-06 13:14:14 +0000
commita33c95be5b2a993d3e39477b5793b6836aedafdb (patch)
tree5d18c04e04982aa8f30fbf9beb691355a8965f4b /src/libexpr
parentfae48884c53f3f3a65c36ffb8e0399bd6334a65f (diff)
avoid markdown which the repl's :doc cannot handle
code blocks, if not surrounded by empty lines, have the language tags (in these cases, always `nix`) show up in the output of :doc. for example: nix-repl> :doc builtins.parseFlakeRef Synopsis: builtins.parseFlakeRef flake-ref Parse a flake reference, and return its exploded form. For example: nix builtins.parseFlakeRef "github:NixOS/nixpkgs/23.05?dir=lib" evaluates to: nix { dir = "lib"; owner = "NixOS"; ref = "23.05"; repo = "nixpkgs"; type = "github"; } is now instead: nix-repl> :doc builtins.parseFlakeRef Synopsis: builtins.parseFlakeRef flake-ref Parse a flake reference, and return its exploded form. For example: | builtins.parseFlakeRef "github:NixOS/nixpkgs/23.05?dir=lib" evaluates to: | { dir = "lib"; owner = "NixOS"; ref = "23.05"; repo = "nixpkgs"; type = "github"; } (closes #225) Change-Id: I0741aeb1006a5376bb2f663d202c7a4da7e38cce
Diffstat (limited to 'src/libexpr')
-rw-r--r--src/libexpr/flake/flake.cc6
-rw-r--r--src/libexpr/primops.cc2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/libexpr/flake/flake.cc b/src/libexpr/flake/flake.cc
index e573e53b4..4cc2ab43b 100644
--- a/src/libexpr/flake/flake.cc
+++ b/src/libexpr/flake/flake.cc
@@ -823,10 +823,13 @@ static RegisterPrimOp r3({
Parse a flake reference, and return its exploded form.
For example:
+
```nix
builtins.parseFlakeRef "github:NixOS/nixpkgs/23.05?dir=lib"
```
+
evaluates to:
+
```nix
{ dir = "lib"; owner = "NixOS"; ref = "23.05"; repo = "nixpkgs"; type = "github"; }
```
@@ -875,12 +878,15 @@ static RegisterPrimOp r4({
Convert a flake reference from attribute set format to URL format.
For example:
+
```nix
builtins.flakeRefToString {
dir = "lib"; owner = "NixOS"; ref = "23.05"; repo = "nixpkgs"; type = "github";
}
```
+
evaluates to
+
```nix
"github:NixOS/nixpkgs/23.05?dir=lib"
```
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
index 77601e457..33a2688f1 100644
--- a/src/libexpr/primops.cc
+++ b/src/libexpr/primops.cc
@@ -1871,11 +1871,13 @@ static RegisterPrimOp primop_outputOf({
*`derivation reference`* must be a string that may contain a regular store path to a derivation, or may be a placeholder reference. If the derivation is produced by a derivation, you must explicitly select `drv.outPath`.
This primop can be chained arbitrarily deeply.
For instance,
+
```nix
builtins.outputOf
(builtins.outputOf myDrv "out)
"out"
```
+
will return a placeholder for the output of the output of `myDrv`.
This primop corresponds to the `^` sigil for derivable paths, e.g. as part of installable syntax on the command line.