I realize Nix isn’t known for good documentation or friendly error messages, but I can’t even run the simplest examples from the “nix shell” docs:
https://releases.nixos.org/nix/nix-2.19.1/manual/command-ref/new-cli/nix3-shell.html
First example from the wiki:
$ nix shell nixpkgs#youtube-dl
error: experimental Nix feature 'nix-command' is disabled; use '--extra-experimental-features nix-command' to override
Okay…
$ nix --extra-experimental-features nix-command shell nixpkgs#youtube-dl
error: experimental Nix feature 'flakes' is disabled; use '--extra-experimental-features flakes' to override
Still more? Why are all these overrides needed to run the most basic functionality and aren’t even mentioned in the docs?
Then taking the first shebang example from that same page:
$ cat test.sh
#! /usr/bin/env nix
#! nix shell github:tomberek/-#python3With.prettytable --command python
import prettytable
# Print a simple table.
t = prettytable.PrettyTable(["N", "N^2"])
for n in range(1, 10): t.add_row([n, n * n])
print t
$ chmod +x test.sh
$ ./test.sh
error: './test.sh' is not a recognised command
Try 'nix --help' for more information.
What kind of error is that? If the basic interface is really changing that much, why aren’t the docs being updated??