nix包管理

在manjaro上使用nix包管理

文档

  1. 手册

普通安装

  1. 分一个ext4分区

  2. 在根目录下创建nix文件夹

  3. 使用chown username /nix 改变nix目录的所属者

  4. 使用磁盘工具,将分好的分区挂载到/nix目录

  5. 安装nix

    1
    $ sh <(curl -L https://nixos.org/nix/install) --no-daemon  #单用户
  6. 卸载nix:删除/nix目录即可

命令

查询可供安装的软件包。

1
nix-env -qa

查找软件包

1
2
3
nix-env -qa firefox

nix-env -qa | grep "firefox"

要安装软件包,通过指定软件包版本使用以下命令,例如安装火狐

1
nix-env -i firefox

在本地系统上,Nix将包存储在Nix存储中 ,默认情况下为**/ nix / store**目录,其中每个包都有自己唯一的子目录。 例如, apache-tomcat包存储在:

1
/nix/store/95gmgnxlrcpkhlm00fa5ax8kvd6189py-apache-tomcat-9.0.2

在此路径中,随机字符95gmgnxlrcpkhlm00fa5ax8kvd6189py是包的唯一标识符,它考虑了所有依赖项。

您可以使用以下命令列出已安装的软件包。

1
$ nix-env -q

要升级apache-tomcat软件包,可以使用-u upgrade开关

1
$ nix-env -u apache-tomcat

如果要删除/擦除apache-tomcat ,请使用-e标志。 这里,包不会立即从系统中删除,只会使其未使用。 这很有用,因为您想要进行回滚,或者它可能位于其他用户的配置文件中。

1
$ nix-env -e apache-tomcat

删除包后,您可以使用nix-collect-garbage实用程序进行一些垃圾回收

1
$ nix-collect-garbage

多用户安装 如何在Linux中删除Nix包管理器

要卸载Nix,请一次删除所有与nix相关的文件。

1
sudo rm -rf /etc/profile/nix.sh /etc/nix /nix ~root/.nix-profile ~root/.nix-defexpr ~root/.nix-channels ~/.nix-profile ~/.nix-defexpr ~/.nix-channels

在具有systemd的系统上,运行以下命令以停止所有与nix相关的服务并禁用它们。

1
2
3
4
5
$ sudo systemctl stop nix-daemon.socket
$ sudo systemctl stop nix-daemon.service
$ sudo systemctl disable nix-daemon.socket
$ sudo systemctl disable nix-daemon.service
$ sudo systemctl daemon-reload

如果使用的macos,你需要运行

1
2
sudo launchctl unload /Library/LaunchDaemons/org.nixos.nix-daemon.plist
sudo rm /Library/LaunchDaemons/org.nixos.nix-daemon.plist

此外,您需要删除这些文件中对Nix的任何引用: / etc / profile/ etc / bashrc和**/ etc / zshrc** 。

有关更多信息,请参阅我们已查看的上述实用程序的手册页。

1
2
$ man nix-channel
$ man nix-env

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!