The Darwin nix still assigns to `binutils`, even though the
builder itself was updated to point to `bintools` in
ce931b9697. Fixing this ensures
the hello example actually builds on Darwin.
Link to today's permalink at github instead of master. When this was originally written, ~/.nixpkgs/config.nix was loaded by all-packages.nix. But this was moved to pkgs/top-level/default.nix and then to pkgs/top-level/impure.nix
ad317834054af2bf6663
In pill 13 `callPackage` and `pkgs` are defined co-recursively. The
author notes thas this is possible due to lazy evaluation, but for some
readers this may be confusing (as if lazy evaluation was some kind of
magic that makes infinite recursion not a problem).
Currently, "1.2. Rationale for this series" starts out with the following sentence, which seems a bit odd:
The Nix, Nixpkgs, and NixOS manuals; and wiki are excellent resources for explaining how Nix/NixOS works, how you can use it, and the number of cool things being done with it.
Turns out 4d0c1d2 removes an item followed by a semicolon. This commit fixes the issue by removing the semicolon and also adds a link to the current NixOS Wiki.
Command 'nix-store -q --referrers `which hello`' should list two
environments as described in the text: "Two environments were listed..."
Add a second environment and a manifest to the command output (hashes
were taken from the command output when trying to replay pill 3 steps on
a local system).
If a user follows along in the repl, the error won't occur as in section 4.6 the number 4 is assigned to `b`. To make this slightly less confusing and have the error appear as the user is following along we have to use a new variable.
The previous link leads to the top of the guide whereas the updated link
leads to Section *15.3 Operators* where one can quickly find the row in
the table that presents the `//` operator.
The install command `nix-env -i man` does not work as `man` is the
*attribute name* meanwhile the command expects the derivation name which
is `man-db`. If using the attribute name then the command should use the
`{--attr | -A}` option and pass the attribute path, e.g.:
`nix-env -iA nixpkgs.man`.
`stdenv` has not yet been mentioned in this tutorial and the target audience (people new to nix) will not know what it is. It shouldn't be mentioned until it is properly described (as it is in pill 19).