简单使用 nix 的包管理器
前言: 在 Linux 上使用 root 安装和使用 homebrew 有一些麻烦,虽然是为了安全考虑,但是我只是单纯想要一个快捷安装包的工具,然后我看到了 nix。
nix 有许多种安装包的方式,nix-env 会永久修改已安装包的本地配置文件。它必须由用户以与传统包管理器相同的方式进行更新和维护,就和 apt 类似。
还有其他的使用方式,比如使用 nix-shell 来临时修改你的 $PATH 环境变量。在决定永久安装某个软件之前,可以用它来试用该软件。
这里使用的 nix-env 是放弃了 nix 的大部分优点和特性的一种方式,但是目前我只需要这种方式,所以其他方式这边就不过多展开了。
安装 nix (opens in a new tab)
# Multi-user installation (recommended)
sh <(curl -L https://nixos.org/nix/install) --daemon
使用 nix-env (opens in a new tab)
包查询:https://search.nixos.org/packages?query= (opens in a new tab)
一般的安装:
# nix-env {--install | -i} args… [{--prebuilt-only | -b}] [{--attr | -A}] [--from-expression] [-E] [--from-profile path] [--preserve-installed | -P] [--remove-all | -r]
nix-env -iA nixpkgs.<package-name>
卸载包:
# nix-env {--uninstall | -e} drvnames…
nix-env -e <package-name>
查看已安装的包:
# nix-env {--query | -q} names… [--installed | --available | -a] [{--status | -s}] [{--attr-path | -P}] [--no-name] [{--compare-versions | -c}] [--system] [--drv-path] [--out-path] [--description] [--meta] [--xml] [--json] [{--prebuilt-only | -b}] [{--attr | -A} attribute-path]
nix-env -q --installed
更新包:
# nix-env {--upgrade | -u} args [--lt | --leq | --eq | --always] [{--prebuilt-only | -b}] [{--attr | -A}] [--from-expression] [-E] [--from-profile path] [--preserve-installed | -P]
nix-env -u <package-name>