安装不在 `nixpkgs/pkgs/top-level/all-packages.nix` 中的包的推荐方法是什么

What is the recommended way to install packages not in `nixpkgs/pkgs/top-level/all-packages.nix`

我想安装 elementary-terminal。这个包是 不在 nixpkgs/pkgs/top-level/all-packages.nix 中,因此我认为仅将 elementary-terminal 添加到 configuration.nix

中是不够的

安装此类软件包的推荐方法是什么?

一些包被命名空间以将它们组合在一起或避免潜在的名称冲突,在这种情况下它在 pantheon.

{ config, lib, pkgs, ... }:
{
  environment.systemPackages =
    [ pkgs.pantheon.elementary-terminal
    ];
}

为了解决这个问题,使用 nix-env -qnix search 甚至 nix-index 来显示包的相应属性路径。

$ nix-env -f '<nixpkgs>' -qaP elementary-terminal
pantheon.elementary-terminal  elementary-terminal-5.3.3