为什么 nix 找不到 python39?

Why doesn't nix find python39?

我想用 nix 安装 python 3.9(我是 NixOS 19.09.2166.ce9f1aaa39e (Loris) 上的 运行 nix 2.3.3)。它在 NixOS/nixpkgs 上定义为 can be seen here:

  python39 = callPackage ./cpython {
    self = python39;
    sourceVersion = {
      major = "3";
      minor = "9";
      patch = "0";
      suffix = "";
    };
    sha256 = "0m18z05nlmqm1zjw9s0ifgrn1jvjn3jwjg0bpswhjmw5k4yfcwww";
    inherit (darwin) configd;
    inherit passthruFun;
  };

此部分最后更改于 2020-10-13,即 4 周前。 (连not yet released Python 3.10都可以在这个文件中找到)

但是我用 nix 找不到它:

$ nix search -u python38 # is found
* nixpkgs.python38 (python3-3.8.0)
  A high-level dynamically-typed programming language

* nixpkgs.python38Full (python3-3.8.0)
  A high-level dynamically-typed programming language

$ nix search -u python39nix search -u python39 # is not found
error: no results for the given search term(s)!

为什么我不能 find/install 这个包?这是“尚未发布到 nix”的问题吗?我应该怎么做(或者我应该阅读哪些文档)来安装该软件包?

默认情况下,这些 nix 命令会查看您计算机的 nixos 频道,该频道仍指向 19.09 版本。

您的 GitHub link 引用 master,而不是 nixos-19.09

NixOS 19.09 是 end-of-life,因此您可能需要更新到 20.09。