Merge pull request #7455 from rapenne-s/documentation_fix

Add anchors and links to definition
This commit is contained in:
Eelco Dolstra 2022-12-13 17:26:52 +01:00 committed by GitHub
commit 46b3c026fc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 41 additions and 36 deletions

View file

@ -77,7 +77,7 @@ MixEvalArgs::MixEvalArgs()
branch in the `nixpkgs` repository.
The URLs of the tarballs from the official `nixos.org` channels
(see [the manual page for `nix-channel`](nix-channel.md)) can be
(see [the manual page for `nix-channel`](../nix-channel.md)) can be
abbreviated as `channel:<channel-name>`. For instance, the
following two flags are equivalent:
@ -86,7 +86,7 @@ MixEvalArgs::MixEvalArgs()
-I nixpkgs=https://nixos.org/channels/nixos-21.05/nixexprs.tar.xz
```
You can also fetch source trees using flake URLs and add them to the
You can also fetch source trees using [flake URLs](./nix3-flake.md#url-like-syntax) and add them to the
search path. For instance,
```

View file

@ -18,51 +18,56 @@ values such as packages or NixOS modules provided by the flake).
Flake references (*flakerefs*) are a way to specify the location of a
flake. These have two different forms:
* An attribute set representation, e.g.
```nix
{
type = "github";
owner = "NixOS";
repo = "nixpkgs";
}
```
## Attribute set representation
The only required attribute is `type`. The supported types are
listed below.
Example:
* A URL-like syntax, e.g.
```nix
{
type = "github";
owner = "NixOS";
repo = "nixpkgs";
}
```
```
github:NixOS/nixpkgs
```
The only required attribute is `type`. The supported types are
listed below.
These are used on the command line as a more convenient alternative
to the attribute set representation. For instance, in the command
## URL-like syntax
```console
# nix build github:NixOS/nixpkgs#hello
```
Example:
`github:NixOS/nixpkgs` is a flake reference (while `hello` is an
output attribute). They are also allowed in the `inputs` attribute
of a flake, e.g.
```
github:NixOS/nixpkgs
```
```nix
inputs.nixpkgs.url = github:NixOS/nixpkgs;
```
These are used on the command line as a more convenient alternative
to the attribute set representation. For instance, in the command
is equivalent to
```console
# nix build github:NixOS/nixpkgs#hello
```
```nix
inputs.nixpkgs = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
};
```
`github:NixOS/nixpkgs` is a flake reference (while `hello` is an
output attribute). They are also allowed in the `inputs` attribute
of a flake, e.g.
## Examples
```nix
inputs.nixpkgs.url = github:NixOS/nixpkgs;
```
is equivalent to
```nix
inputs.nixpkgs = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
};
```
### Examples
Here are some examples of flake references in their URL-like representation: