|
| 1 | +# Установка Nu |
| 2 | + |
| 3 | +Существует множество способов чтобы получить Nu и работать. Вы можете скачать предварительно собранный двоичные файлы с нашей [страница релиза](https://github.com/nushell/nushell/releases), [использовать ваш любимый менеджер пакетов](https://repology.org/project/nushell/versions), или собрать из исходника. |
| 4 | + |
| 5 | +Главный двоичный файл Nushell называется `nu` (или `nu.exe` в Windows). После установки, вы можете запустить его, набрав `nu`. |
| 6 | + |
| 7 | +@[code](@snippets/installation/run_nu.sh) |
| 8 | + |
| 9 | +[[toc]] |
| 10 | + |
| 11 | +## Предварительно собранные двоичные файлы |
| 12 | + |
| 13 | +[С каждым релизом на GitHub](https://github.com/nushell/nushell/releases) публикуются двличные файлы Nu для Linux, macOS, и Windows. Просто загрузите, распакуйте двоичный файл, а затем скопируйте путь в ваше переменное окружения PATH. |
| 14 | + |
| 15 | +## Менеджер пакетов |
| 16 | + |
| 17 | +Nu доступен через нескольких пакетных менеджеров: |
| 18 | + |
| 19 | +[](https://repology.org/project/nushell/versions) |
| 20 | + |
| 21 | +Для macOS и Linux, [Homebrew](https://brew.sh/) популярный выбор (`brew install nushell`). |
| 22 | + |
| 23 | +Для Windows: |
| 24 | + |
| 25 | +- [Winget](https://docs.microsoft.com/en-us/windows/package-manager/winget/) (`winget install nushell`) |
| 26 | +- [Chocolatey](https://chocolatey.org/) (`choco install nushell`) |
| 27 | +- [Scoop](https://scoop.sh/) (`scoop install nu`) |
| 28 | + |
| 29 | +Кросс-платформенная установка: |
| 30 | + |
| 31 | +- [npm](https://www.npmjs.com/) (`npm install -g nushell` Примечание. Плагин nu не входить в комплект, если вы устанавливает их таким образом) |
| 32 | + |
| 33 | +## Образ docker контейнера |
| 34 | + |
| 35 | +Docker образ доступен из реестра контейнеров GitHub. Образ последней версии регулярно собирается |
| 36 | +для Alpine и Debian. Вы можете запустить образ в интерактивном режиме, используя: |
| 37 | + |
| 38 | +```nu |
| 39 | +docker run -it --rm ghcr.io/nushell/nushell:<version>-<distro> |
| 40 | +``` |
| 41 | + |
| 42 | +Где `<version>` - это версия Nushell, которую вы хотите запустить, а `<distro>` - это `alpine` или последний поддерживаемый выпуск Debian, например `bookworm`. |
| 43 | + |
| 44 | +Чтобы запустить определенную команду, используйте: |
| 45 | + |
| 46 | +```nu |
| 47 | +docker run --rm ghcr.io/nushell/nushell:latest-alpine -c "ls /usr/bin | where size > 10KiB" |
| 48 | +``` |
| 49 | + |
| 50 | +Чтобы запустить скрипт из текущего каталога с помощью Bash, используйте: |
| 51 | + |
| 52 | +```nu |
| 53 | +docker run --rm \ |
| 54 | + -v $(pwd):/work \ |
| 55 | + ghcr.io/nushell/nushell:latest-alpine \ |
| 56 | + "/work/script.nu" |
| 57 | +``` |
| 58 | + |
| 59 | +## Сборка из исходников |
| 60 | + |
| 61 | +Вы можете собрать Nu из исходников. Сначала, вам нужно установить инструментарий Rust и его зависимости. |
| 62 | + |
| 63 | +### Установка набора компиляторов |
| 64 | + |
| 65 | +Чтобы Rust работал правильно, в вашей системе должен быть совместимый набор комиляторов. Вот рекомендуемый набор компиляторов: |
| 66 | + |
| 67 | +- Linux: GCC или Clang |
| 68 | +- macOS: Clang (установить Xcode) |
| 69 | +- Windows: MSVC (установить [Visual Studio](https://visualstudio.microsoft.com/vs/community/) или [Visual Studio Build Tools](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2022)) |
| 70 | + - Обязательно установитье "Desktop development with C++" |
| 71 | + - Подойдет любая версия редактора Visual Studio (редакция Community). |
| 72 | + |
| 73 | +### Установка Rust |
| 74 | + |
| 75 | +Если у вас еще не нет Rust в вашей системе, лучший способ установить его через [rustup](https://rustup.rs/). Rustup - это способ управления установками Rust, включая управление использованием различных версий Rust. |
| 76 | + |
| 77 | +В настоящее время Nu требуется **latest stable (1.66.1 or later)** версию Rust. Лучший способ - позволить `rustup` найти правильную для вас верисю. Когда вы впервые откроете `rustup`, он спросит, какую версию Rust вы желаете установить: |
| 78 | + |
| 79 | +@[code](@snippets/installation/rustup_choose_rust_version.sh) |
| 80 | + |
| 81 | +Как только вы будете готовы, нажмите 1, а затем нажмите enter. |
| 82 | + |
| 83 | +Если вы не желаете устанавливать Rust через `rustup`, вы также можете установить you его другими способами (например из пакета дистрибутива Linux). Только убедитесь, что вы установили версию Rust 1.66.1 или последнюю. |
| 84 | + |
| 85 | +### Зависимости |
| 86 | + |
| 87 | +#### Debian/Ubuntu |
| 88 | + |
| 89 | +Вам потребуется установить пакеты "pkg-config", "build-essential" и "libssl-dev": |
| 90 | + |
| 91 | +@[code](@snippets/installation/install_pkg_config_libssl_dev.sh) |
| 92 | + |
| 93 | +#### Дистрибутивы на базе RHEL |
| 94 | + |
| 95 | +Вам потребуется установить "libxcb", "openssl-devel" и "libX11-devel": |
| 96 | + |
| 97 | +@[code](@snippets/installation/install_rhel_dependencies.sh) |
| 98 | + |
| 99 | +#### macOS |
| 100 | + |
| 101 | +##### Homebrew |
| 102 | + |
| 103 | +Используя [Homebrew](https://brew.sh/), вам нужно будет установить "openssl" и "cmake" используя команду: |
| 104 | + |
| 105 | +@[code](@snippets/installation/macos_deps.sh) |
| 106 | + |
| 107 | +##### Nix |
| 108 | + |
| 109 | +Если испольуете [Nix](https://nixos.org/download/#nix-install-macos) для менеджера пакетов на macOS, необходимы пакеты `openssl`, `cmake`, `pkg-config`, и `curl`. Их можно установить: |
| 110 | + |
| 111 | +- Глобально, используя `nix-env --install` (и другие). |
| 112 | +- Локально, используя [Home Manager](https://github.com/nix-community/home-manager) в конфигурации `home.nix`. |
| 113 | +- Временно, используя `nix-shell` (и другие). |
| 114 | + |
| 115 | +### Сборка из [crates.io](https://crates.io) с помощью Cargo |
| 116 | + |
| 117 | +Релизы Nushell публикуются в виде исходных текстов в популярном реестре пакетов Rust [crates.io](https://crates.io/). Это создает легкость сборки и установки последней версий Nu с помощью `cargo`: |
| 118 | + |
| 119 | +```nu |
| 120 | +cargo install nu --locked |
| 121 | +``` |
| 122 | + |
| 123 | +Инструмент `cargo` выполнит работу по загрузке Nu и его исходных зависимостей, сборке и установке cargo по пути каталога bin. |
| 124 | + |
| 125 | +Примечание что плагины по умолчанию должны быть установлены отдельно при использовании `cargo`. Смотрите раздел [Установка плагинов](./plugins.html#core-plugins) в книге инструкций. |
| 126 | + |
| 127 | +### Сборка из GitHub репозитория |
| 128 | + |
| 129 | +Вы так же можете собрать Nu из последних исходников на GitHub. Это даст вам немедленный доступ к последним функциям и исправлениям. Сначала, склонируйте репозиторий: |
| 130 | + |
| 131 | +@[code](@snippets/installation/git_clone_nu.sh) |
| 132 | + |
| 133 | +После этого мы можем собрать и запустить Nu с помощью: |
| 134 | + |
| 135 | +@[code](@snippets/installation/build_nu_from_source.sh) |
| 136 | + |
| 137 | +Вы также можете собирать и запускать Nu в режиме релиза, что позволяет использовать больше оптимизаций: |
| 138 | + |
| 139 | +@[code](@snippets/installation/build_nu_from_source_release.sh) |
| 140 | + |
| 141 | +Люди, знакомые с Rust, могут удивиться, почему мы выполняем "build", и "run", если "run" по умолчанию выполняет сборку. Это делается для того, чтобы обойти недостаток новой опции `default-run` в Cargo и убедиться, что все плагины собраны, хотя в будущем это может и не понадобиться. |
0 commit comments