doc: remove optional builtins prefixes from prelude functions (#447401)

This commit is contained in:
Philip Taron
2025-09-30 15:55:43 +00:00
committed by GitHub
6 changed files with 18 additions and 18 deletions

View File

@@ -3,7 +3,7 @@
Building software with Nix often requires downloading source code and other files from the internet. Building software with Nix often requires downloading source code and other files from the internet.
To this end, we use functions that we call _fetchers_, which obtain remote sources via various protocols and services. To this end, we use functions that we call _fetchers_, which obtain remote sources via various protocols and services.
Nix provides built-in fetchers such as [`builtins.fetchTarball`](https://nixos.org/manual/nix/stable/language/builtins.html#builtins-fetchTarball). Nix provides built-in fetchers such as [`fetchTarball`](https://nixos.org/manual/nix/stable/language/builtins.html#builtins-fetchTarball).
Nixpkgs provides its own fetchers, which work differently: Nixpkgs provides its own fetchers, which work differently:
- A built-in fetcher will download and cache files at evaluation time and produce a [store path](https://nixos.org/manual/nix/stable/glossary#gloss-store-path). - A built-in fetcher will download and cache files at evaluation time and produce a [store path](https://nixos.org/manual/nix/stable/glossary#gloss-store-path).

View File

@@ -163,7 +163,7 @@ Nixpkgs provides the following functions for producing derivations which write t
They are useful for creating files from Nix expression, and are all implemented as convenience wrappers around `writeTextFile`. They are useful for creating files from Nix expression, and are all implemented as convenience wrappers around `writeTextFile`.
Each of these functions will cause a derivation to be produced. Each of these functions will cause a derivation to be produced.
When you coerce the result of each of these functions to a string with [string interpolation](https://nixos.org/manual/nix/stable/language/string-interpolation) or [`builtins.toString`](https://nixos.org/manual/nix/stable/language/builtins#builtins-toString), it will evaluate to the [store path](https://nixos.org/manual/nix/stable/store/store-path) of this derivation. When you coerce the result of each of these functions to a string with [string interpolation](https://nixos.org/manual/nix/stable/language/string-interpolation) or [`toString`](https://nixos.org/manual/nix/stable/language/builtins#builtins-toString), it will evaluate to the [store path](https://nixos.org/manual/nix/stable/store/store-path) of this derivation.
:::: {.note} :::: {.note}
Some of these functions will put the resulting files within a directory inside the [derivation output](https://nixos.org/manual/nix/stable/language/derivations#attr-outputs). Some of these functions will put the resulting files within a directory inside the [derivation output](https://nixos.org/manual/nix/stable/language/derivations#attr-outputs).
@@ -344,7 +344,7 @@ Write a text file to the Nix store.
`allowSubstitutes` (Bool, _optional_) `allowSubstitutes` (Bool, _optional_)
: Whether to allow substituting from a binary cache. : Whether to allow substituting from a binary cache.
Passed through to [`allowSubstitutes`](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-allowSubstitutes) of the underlying call to `builtins.derivation`. Passed through to [`allowSubstitutes`](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-allowSubstitutes) of the underlying call to `derivation`.
It defaults to `false`, as running the derivation's simple `builder` executable locally is assumed to be faster than network operations. It defaults to `false`, as running the derivation's simple `builder` executable locally is assumed to be faster than network operations.
Set it to true if the `checkPhase` step is expensive. Set it to true if the `checkPhase` step is expensive.
@@ -355,7 +355,7 @@ Write a text file to the Nix store.
: Whether to prefer building locally, even if faster [remote build machines](https://nixos.org/manual/nix/stable/command-ref/conf-file#conf-substituters) are available. : Whether to prefer building locally, even if faster [remote build machines](https://nixos.org/manual/nix/stable/command-ref/conf-file#conf-substituters) are available.
Passed through to [`preferLocalBuild`](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-preferLocalBuild) of the underlying call to `builtins.derivation`. Passed through to [`preferLocalBuild`](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-preferLocalBuild) of the underlying call to `derivation`.
It defaults to `true` for the same reason `allowSubstitutes` defaults to `false`. It defaults to `true` for the same reason `allowSubstitutes` defaults to `false`.

View File

@@ -24,19 +24,19 @@ let
libset = libset =
toplib: toplib:
builtins.map (subsetname: { map (subsetname: {
subsetname = subsetname; subsetname = subsetname;
functions = libDefPos [ ] toplib.${subsetname}; functions = libDefPos [ ] toplib.${subsetname};
}) (builtins.map (x: x.name) libsets); }) (map (x: x.name) libsets);
flattenedLibSubset = flattenedLibSubset =
{ subsetname, functions }: { subsetname, functions }:
builtins.map (fn: { map (fn: {
name = "lib.${subsetname}.${fn.name}"; name = "lib.${subsetname}.${fn.name}";
value = fn.location; value = fn.location;
}) functions; }) functions;
locatedlibsets = libs: builtins.map flattenedLibSubset (libset libs); locatedlibsets = libs: map flattenedLibSubset (libset libs);
removeFilenamePrefix = removeFilenamePrefix =
prefix: filename: prefix: filename:
let let
@@ -46,7 +46,7 @@ let
in in
substr; substr;
removeNixpkgs = removeFilenamePrefix (builtins.toString nixpkgsPath); removeNixpkgs = removeFilenamePrefix (toString nixpkgsPath);
liblocations = builtins.filter (elem: elem.value != null) (lib.lists.flatten (locatedlibsets lib)); liblocations = builtins.filter (elem: elem.value != null) (lib.lists.flatten (locatedlibsets lib));
@@ -59,19 +59,19 @@ let
}; };
}; };
relativeLocs = (builtins.map fnLocationRelative liblocations); relativeLocs = (map fnLocationRelative liblocations);
sanitizeId = builtins.replaceStrings [ "'" ] [ "-prime" ]; sanitizeId = builtins.replaceStrings [ "'" ] [ "-prime" ];
urlPrefix = "https://github.com/NixOS/nixpkgs/blob/${revision}"; urlPrefix = "https://github.com/NixOS/nixpkgs/blob/${revision}";
jsonLocs = builtins.listToAttrs ( jsonLocs = builtins.listToAttrs (
builtins.map ( map (
{ name, value }: { name, value }:
{ {
name = sanitizeId name; name = sanitizeId name;
value = value =
let let
text = "${value.file}:${builtins.toString value.line}"; text = "${value.file}:${toString value.line}";
target = "${urlPrefix}/${value.file}#L${builtins.toString value.line}"; target = "${urlPrefix}/${value.file}#L${toString value.line}";
in in
"[${text}](${target}) in `<nixpkgs>`"; "[${text}](${target}) in `<nixpkgs>`";
} }

View File

@@ -89,7 +89,7 @@ buildDhallPackage {
# ./example.nix # ./example.nix
let let
nixpkgs = builtins.fetchTarball { nixpkgs = fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/94b2848559b12a8ed1fe433084686b2a81123c99.tar.gz"; url = "https://github.com/NixOS/nixpkgs/archive/94b2848559b12a8ed1fe433084686b2a81123c99.tar.gz";
hash = "sha256-B4Q3c6IvTLg3Q92qYa8y+i4uTaphtFdjp+Ir3QQjdN0="; hash = "sha256-B4Q3c6IvTLg3Q92qYa8y+i4uTaphtFdjp+Ir3QQjdN0=";
}; };

View File

@@ -316,7 +316,7 @@ buildNpmPackage {
`importNpmLock` uses the following fetchers: `importNpmLock` uses the following fetchers:
- `pkgs.fetchurl` for `http(s)` dependencies - `pkgs.fetchurl` for `http(s)` dependencies
- `builtins.fetchGit` for `git` dependencies - `fetchGit` for `git` dependencies
It is possible to provide additional arguments to individual fetchers as needed: It is possible to provide additional arguments to individual fetchers as needed:

View File

@@ -374,7 +374,7 @@ stdenv.mkDerivation (finalAttrs: {
pname = "maven-demo"; pname = "maven-demo";
version = "1.0"; version = "1.0";
src = builtins.fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz"; src = fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz";
buildInputs = [ maven ]; buildInputs = [ maven ];
buildPhase = '' buildPhase = ''
@@ -445,7 +445,7 @@ stdenv.mkDerivation (finalAttrs: {
pname = "maven-demo"; pname = "maven-demo";
version = "1.0"; version = "1.0";
src = builtins.fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz"; src = fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz";
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
buildInputs = [ maven ]; buildInputs = [ maven ];
@@ -538,7 +538,7 @@ stdenv.mkDerivation (finalAttrs: {
pname = "maven-demo"; pname = "maven-demo";
version = "1.0"; version = "1.0";
src = builtins.fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz"; src = fetchTarball "https://github.com/fzakaria/nixos-maven-example/archive/main.tar.gz";
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
buildInputs = [ maven ]; buildInputs = [ maven ];