安装 Nu

有很多方法可以获取并使用 Nu。你可以从我们的 发布页面open in new window 下载预编译的二进制文件,也可以 使用你喜欢的软件包管理器open in new window,或者从源码构建。

Nushell 的主要二进制文件被命名为 nu(或 Windows 下的 nu.exe)。安装完成后你可以通过输入 nu 来启动它:

$ nu
/home/jt/Source>

预编译二进制包

Nu 二进制文件在 GitHub 的 Release 页open in new window 发布,适用于 Linux、macOS 和 Windows。只需下载并解压二进制文件,然后将其复制到你的系统 PATH 上的某个位置即可。

软件包管理器

Nu 可以通过几个软件包管理器获得:

打包状态open in new window

对于 macOS 和 Linux,Homebrewopen in new window 是一个流行的选择(brew install nushell)。

对于 Windows 用户:

跨平台安装:

  • npmopen in new window (npm install -g nushell 请注意,以这种方式安装,nu 插件是不包含在内的)

从源码构建

你也可以从源代码构建 Nu。首先,你需要设置 Rust 工具链和它的依赖项。

安装编译器套件

为了使 Rust 能够正常工作,你需要在你的系统上安装一个兼容的编译器套件。以下是推荐的编译器套件:

安装 Rust

如果我们的系统中还没有 Rust,最好的方法是通过 rustupopen in new window 来安装它。Rustup 是一种管理 Rust 安装的工具,可以管理使用不同的 Rust 版本。

Nu 目前需要 最新(1.66.1 或更高)的稳定 版本的 Rust。最好的方法是让 rustup 为你找到正确的版本。当你第一次打开 rustup 时,它会询问你想安装哪个版本的 Rust:

Current installation options:

default host triple: x86_64-unknown-linux-gnu
default toolchain: stable
profile: default
modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

一旦我们准备好了,我们就按 1,然后回车。

如果你不愿意通过 rustup 来安装 Rust,你也可以通过其他方法来安装它(比如从 Linux 发行版的软件包中)。只要确保安装 1.66.1 或更高版本的 Rust 即可。

依赖

Debian/Ubuntu

你将需要安装 "pkg-config" 和 "libssl-dev" 包:

apt install pkg-config libssl-dev

对于希望使用 "rawkey" 或 "clipboard" 可选功能的 Linux 用户,需要安装 "libx11-dev" 和 "libxcb-composite0-dev" 软件包。

apt install libxcb-composite0-dev libx11-dev

基于 RHEL 的发行版

你需要安装 "libxcb"、"openssl-devel" 和 "libX11-devel":

yum install libxcb openssl-devel libX11-devel

macOS

使用 Homebrewopen in new window,你需要通过如下方式安装 "openssl" 和 "cmake" :

brew install openssl cmake

使用 crates.ioopen in new window 进行构建

Nu 发行版会作为源码发布到流行的 Rust 包仓库 crates.ioopen in new window。这使得使用 cargo 构建并安装最新的 Nu 版本变得很容易:

> cargo install nu

如此即可!cargo 工具将完成下载 Nu 及其源码依赖,构建并将其安装到 cargo bin 路径中,以便我们能够运行它。

如果你想要安装并支持 dataframes 功能,你可以在安装命令附上 --features=dataframe

> cargo install nu --locked --features=dataframe

从 GitHub 仓库构建

我们也可以从 GitHub 上的最新源码构建自己的 Nu。这让我们可以立即获得最新的功能和错误修复。首先,克隆源码仓库:

> git clone https://github.com/nushell/nushell.git

然后,我们可以用以下方式构建和运行 Nu:

> cd nushell
nushell> cargo build --workspace; cargo run

你也可以在发布模式下构建和运行 Nu,以获得更多的编译优化:

nushell> cargo build --release --workspace; cargo run --release

熟悉 Rust 的人可能会问,如果 run 默认会构建,为什么我们还要做 buildrun 这两个步骤?这是为了解决 Cargo 中新的 default-run 选项的缺陷,并确保所有插件都被构建,尽管这在将来可能不再需要。

设置登录 Shell(*nix)

DANGER

Nu 仍在开发中,对于日常使用可能并不稳定!

要设置登录 Shell,你可以使用 chshopen in new window 命令。一些 Linux 发行版有一个位于 /etc/shells 的有效 Shell 列表,在 Nu 被列入白名单之前不允许改变 Shell。如果你没有更新 shells 文件,你可能会看到类似于下面的错误:

chsh: /home/username/.cargo/bin/nu is an invalid shell

你可以通过在 shells 文件中添加你的 Nu 二进制文件来把 Nu 添加到允许的 Shells 列表中。添加的路径可以用 which nu 命令找到,通常是 $HOME/.cargo/bin/nu

设置默认的 Shell(Windows 终端)

如果你使用的是 Windows Terminalopen in new window,你可以通过添加如下内容到你的终端设置 "profiles"(JSON 文件)中来设置 nu 作为你的默认 Shell:

{
  "guid": "{2b372ca1-1ee2-403d-a839-6d63077ad871}",
  "hidden": false,
  "icon": "https://www.nushell.sh/icon.png",
  "name": "Nu Shell",
  "commandline": "nu.exe"
}

最后需要做的是将 "defaultProfile" 改为:

"defaultProfile": "{2b372ca1-1ee2-403d-a839-6d63077ad871}",

之后,nu 应该会在 Windows Terminal 启动时被加载。