我只使用Nix
作为包管理器并且不使用所有NixOS
。我想要一个可复制的nix-env -i
打包安装,可以共享和备份。
我知道使用config.nix
对于对于NixOS
但我正在寻找类似的功能Nix
包。
从 Nixpkgs 您可以使用buildEnv
构建符号链接场的功能类似于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,probably没有这样命名的东西。
另一种选择可能是家庭经理.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)