gpt4 book ai didi

nix - 可重现的 nix-env -i 只有 Nix,没有 NixOS

转载 作者:行者123 更新时间:2023-12-01 01:44:46 28 4
gpt4 key购买 nike

我只使用 Nix作为包管理器而不使用全部NixOS .我想要一个可重现的 nix-env -i可以共享和备份的软件包安装。

我知道使用 config.nixNixOS但我正在寻找与 Nix 类似的功能包。

最佳答案

在 Nixpkgs 中,您可以使用 buildEnv构造符号链接(symbolic link)场的函数类似于 nix-env生产它们。

这使您可以将包组合到要单独更新的组中。当然,如果适合您的应用程序,单个组是完全有效的。

这是一个示例 greeting-tools.nix :

let
pkgs = import <nixpkgs> {};
inherit (pkgs) buildEnv;

in buildEnv {
name = "greeting-tools";
paths = [ pkgs.hello pkgs.cowsay pkgs.figlet ];
}

您可以按如下方式安装和删除它
$ nix-env -i -f greeting-tools.nix
installing 'greeting-tools'
$ hello
Hello, world!
$ nix-env -e greeting-tools
uninstalling 'greeting-tools'
$ hello
The program ‘hello’ is currently not installed. [...]

要更新您的软件包,您必须重新运行安装命令。 nix-env -u将无法正常工作,因为这只查看 Nixpkgs,它可能没有任何类似的名称。

另一种可能是 home manager .

关于nix - 可重现的 nix-env -i 只有 Nix,没有 NixOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50802880/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com