如何以声明方式将一次性包添加到配置中?

如何以声明方式将一次性包添加到配置中?

nix-build使用unstable安装软件包后,如何将其添加到configuration.nix中?

nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz idea-ultimate

fetchTarball我能想到的唯一方法是使用存档上的内置函数到某个临时位置,然后在其上使用 nix-env -f - 有更好的方法吗?

答案1

您可以将频道添加为 root

sudo nix-channel --add https://nixos.org/channels/nixos-unstable unstable
sudo nix-channel --update unstable

并将包添加为configuration.nix如下所示:

systemPackages = [ ... (import <unstable> {}).idea.idea-ultimate ];

如果您只想将其安装到您的用户配置文件中,请使用nix-env.我只是添加频道而不是摆弄fetchTarball。 (那么就简单了nix-env -iA unstable.idea.idea-ultimate。)

不确定这是最惯用的方式。

相关内容