3 个不稳定版本

0.3.0 2024 年 2 月 18 日
0.2.1 2024 年 2 月 17 日
0.2.0 2024 年 2 月 17 日

#1175 in 命令行工具

LGPL-3.0-or-later

305KB
1.5K SLoC

Progress In Nix

Crates.io License Crates.io Version

Pinix 是一个受 Pacman 启发的 Nix 前端。它封装了常规 Nix 命令,并用一个更现代、更信息丰富的界面替换了输出。

asciicast

它应该对大多数命令透明工作,包括当启动交互式外壳时。

安装

使用 Nix

该仓库定义了一个 flake,因此您可以通过将其添加到您的 flake.nix 中来获取可用的 pinix 软件包。

inputs = {
  pinix.url = github:remi-dupre/pinix;
};

使用 Cargo

您也可以通过使用 cargo 从源代码中安装 pinix。

cargo install pinix

# This will only install the main binary so you might want to add aliases for
# common nix commands.
alias pix="pinix --command nix"
alias pix-shell="pinix --command nix-shell"
alias pixos-rebuild="pinix --command nixos-rebuild"

用法

nix 软件包为您提供了常用 nix 命令的即插即用替代品

$ pix-shell -p htop
$ pixos-rebuild switch --flake .

Pinix 有自己的一套参数,所有参数都以 --pix- 为前缀,必须在任何常规参数之前指定。您可以通过帮助信息获取支持的参数列表

$ pinix --pix-help
Wrap a Nix command to display rich logs while it is running

Usage: pinix [OPTIONS] [EXT]...

Arguments:
  [EXT]...  Arguments forwared to actual Nix command

Options:
      --pix-help               Display this help message
      --pix-command <COMMAND>  Specify the nix command that must be run
      --pix-debug              Display a debug bar
      --pix-log-downloads      Display a log line when a download is finished
      --pix-record <RECORD>    Save timestamped logs to a file

如果您想运行一个没有可用的别名的命令,您可以调用 pinix 然后跟您的常规命令

$ pinix nix-shell -p htop

类似工具

我不是第一个尝试改进 nix 输出的人。以下是我所知的工具

  • nix-output-monitor:将您的 nix-build 输出通过 nix-output-monitor(又名 nom)传递,以在构建时获取更多信息。
  • nvd:Nix/NixOS 软件包版本差异工具。
  • #4296:有关 nix 中更丰富本机进度指示器的某些旧建议。

依赖关系

~11–23MB
~314K SLoC