Как установить asdf для управления версиями времени выполнения нескольких языков программирования на Ubuntu 22.04

Введение

asdf – это инструмент интерфейса командной строки, или CLI-инструмент, для управления различными версиями времени выполнения на разных языках программирования. Он объединяет все среды выполнения под одним конфигурационным файлом и использует структуру плагинов для управления всем этим одним инструментом. В качестве примера, вы можете установить Node.js, а затем использовать asdf в качестве центрального репозитория плагинов, причем каждый плагин поддерживается либо официально, либо сообществом.

В этом руководстве вы установите ядро asdf и плагин Node.js с зависимостями для сборки, что является минимальным необходимым для функциональности. Затем вы установите Node.js и управляете версией, которую хотите использовать, в зависимости от вашего желаемого объема.

Предварительные требования

Шаг 1 — Установка ядра asdf

asdf зависит от установки ядра, которое само по себе не обладает функциональностью. Ядро asdf зависит от отдельных плагинов, которые специфичны для определенного языка программирования или программы. Обычно его используют для установки и управления несколькими версиями определенного языка программирования. Рекомендуется загрузить ядро asdf с использованием git, который поставляется вместе с Ubuntu 22.04. Чтобы получить последнюю версию asdf, клонируйте последнюю ветку из репозитория asdf:

  1. git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2

asdf требует уникальной установки в зависимости от сочетания типа оболочки и способа его загрузки. По умолчанию Ubuntu использует Bash для своей оболочки, которая использует файл ~/.bashrc для конфигурации и настройки. Чтобы включить использование команды asdf, вам нужно добавить следующую строку:

  1. echo ". $HOME/.asdf/asdf.sh" >> ~/.bashrc

Затем убедитесь, что ваши изменения применены к текущей сессии:

  1. source ~/.bashrc

Примечание: Если вы используете ZSH вместо Bash, вы можете добавить ту же строку, но в файл ~/.zshrc вместо этого.

С установленным ядром вы можете теперь устанавливать плагины.

Шаг 2 — Установка плагина Node.js для asdf и зависимостей сборки

Установка плагина для Node.js для asdf не тоже самое, что установка самого Node.js. Это произойдет на следующем шаге. Как упоминалось ранее, минимальные требования для рабочей настройки asdf включают в себя основной компонент asdf и по меньшей мере один плагин. После установки этого плагина, вы сможете использовать его для установки управляемого им времени выполнения.

Каждый плагин asdf поддерживается отдельно. Некоторые поддерживаются основной командой asdf, но большинство поддерживается сообществом. У каждого плагина asdf есть свой репозиторий и зависимости, которые необходимо установить. Вы должны проверить репозиторий каждого плагина, например, с репозиторием плагина Node.js. Этот конкретный плагин официально поддерживается командой asdf.

Для установки плагина используйте следующую команду asdf plugin add:

  1. asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git

Для этого плагина Node.js зависимости указаны в разделе «Использование» файла «README». В этом разделе явно указаны зависимости, которые связаны с разделом официальных репозиториев Node.js по сборке Node.js. Это необходимо выполнять вручную, потому что asdf представляет собой решение, ориентированное на несколько операционных систем, каждая из которых имеет свои уникальные зависимости и методы их установки. Это также может различаться от плагина к плагину. Для этого плагина на Ubuntu вам нужно установить эти зависимости. Начнем с обновления индекса исходных файлов apt:

  1. sudo apt update

Затем вы можете установить необходимые зависимости:

  1. sudo apt install python3 g++ make python3-pip

Для этого плагина Node.js, в зависимости от версии, которую вам нужно установить, выбираются либо предварительно скомпилированные бинарные файлы, либо компилируются бинарные файлы из исходного кода. Если вы выбрали версию, которая требует компиляции из исходного кода, требуются упомянутые зависимости.

После успешной установки плагина вы можете установить Node.js.

Шаг 3 — Установка Node.js

Вы можете установить несколько версий Node.js, выбрав последнюю или любую указанную версию. Чтобы установить последнюю версию Node.js, введите следующее:

  1. asdf install nodejs latest
Output
Trying to update node-build... ok Downloading node-v18.10.0-linux-x64.tar.gz... -> https://nodejs.org/dist/v18.10.0/node-v18.10.0-linux-x64.tar.gz Installing node-v18.10.0-linux-x64... Installed node-v18.10.0-linux-x64 to /home/sammy/.asdf/installs/nodejs/18.10.0

Установка latest версии – это быстрый способ, предоставленный asdf, это не специальная версия. asdf определяет и применяет версии по их точным номерам. Чтобы установить определенную версию Node.js, выполните следующее:

  1. asdf install nodejs 16.16.0
Output
Trying to update node-build... ok Downloading node-v16.16.0-linux-x64.tar.gz... -> https://nodejs.org/dist/v16.16.0/node-v16.16.0-linux-x64.tar.gz Installing node-v16.16.0-linux-x64... Installed node-v16.16.0-linux-x64 to /home/sammy/.asdf/installs/nodejs/16.16.0

После установки этих двух версий вы можете проверить все версии, которые у вас есть, используя следующее:

  1. asdf list nodejs
Output
16.16.0 18.10.0

Кроме того, если вы когда-нибудь захотите удалить версию, вы можете использовать команду uninstall с указанием конкретной версии:

  1. asdf uninstall nodejs 16.16.0

Теперь, когда Node.js установлен, вы можете выбрать активную версию.

Шаг 4 — Выбор активной версии Node.js

asdf может устанавливать версию Node.js на трех разных уровнях: local, global и shell. Если вы хотите установить версию Node.js только для рабочего каталога вашего проекта, выполните следующее:

  1. asdf local nodejs latest

Установка текущей версии на уровне global действует на уровне пользователя для вашей системы:

  1. asdf global nodejs latest

Если вы хотите установить версию только для текущей оболочки, введите следующее:

  1. asdf shell nodejs latest

Теперь у вас полностью установлена Node.js с использованием asdf, с возможностью переключения на нужную версию в нужном вам диапазоне.

Заключение

В этом руководстве вы установили ядро asdf, плагин asdf для Node.js, а затем сам Node.js. asdf позволяет устанавливать несколько версий среды выполнения, и вы можете выбрать версию на разных уровнях области от глобальной до рабочего каталога проекта. Если вас интересует стандартная установка Node.js, посмотрите наше руководство по установке Node.js на Ubuntu 22.04 здесь.

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-asdf-to-manage-multiple-programming-language-runtime-versions-on-ubuntu-22-04