Buff Development
Buff Code

Установка

Консоль buff одной командой на Linux, macOS и Windows; приложение — пакетом со страницы «Скачать». Проверка подписи, обновления и массовая раскатка.

Buff Code существует в двух видах, с одним и тем же входом и одними и теми же возможностями:

  • консоль buff — программа в терминале; ставится одной командой;
  • приложение — окно для Linux, macOS и Windows; ставится пакетом.

Можно поставить оба: приложение работает с тем же входом и тем же рабочим контекстом.

Консоль

Linux и macOS (и Windows в Git Bash):

curl -fsSL https://buff.systems/install | bash

Скрипт определяет систему и процессор (в том числе старые процессоры без AVX2 и системы на musl, например Alpine), скачивает нужную сборку, сверяет контрольную сумму и кладёт buff в ~/.buff/bin, дописав путь в профиль оболочки. Ключи и переменные:

Ключ или переменнаяЧто делает
--version 2.0.11-buff.16 (или -v)поставить конкретную версию
--no-modify-pathне трогать профиль оболочки
BUFF_INSTALL_DIRпоставить в другой каталог
BUFF_VERSIONто же, что --version, но переменной окружения

Проверка:

buff --version

Откройте новый терминал, если команда не найдена: путь дописан в профиль, но текущая оболочка его ещё не прочитала.

Приложение

Пакеты для Linux (AppImage, deb, rpm), macOS (Apple Silicon и Intel) и Windows — на странице «Скачать». Приложение ставится рядом с консолью и использует тот же вход.

Первый запуск на macOS и Windows

Приложение подписано нашим ключом (проверка — ниже), но пока не заверено Apple и Microsoft. Поэтому при первом запуске скачанного пакета система предупредит:

  • macOS — «Не удаётся проверить разработчика». Откройте Системные настройки → Конфиденциальность и безопасность и нажмите «Всё равно открыть» напротив Buff Code. Или снимите отметку о загрузке из интернета: xattr -dr com.apple.quarantine "/Applications/Buff Code.app".
  • Windows — окно SmartScreen «Система Windows защитила ваш компьютер». Нажмите «Подробнее» → «Выполнить в любом случае».

Это спрашивается один раз; обновления ставятся без вопросов. Консоль, установленная командой выше, предупреждений не вызывает.

Проверка подписи

Рядом с каждым выпуском лежат SHA256SUMS и его подпись. Ключ проверки тот же, что у коннектора:

V=2.0.11-buff.16
curl -fsSLO https://buff.systems/downloads/$V/SHA256SUMS
curl -fsSLO https://buff.systems/downloads/$V/SHA256SUMS.sig
curl -fsSLO https://buff.systems/downloads/cosign.pub
cosign verify-blob --key cosign.pub --signature SHA256SUMS.sig SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing

Обновления

Консоль и приложение сами узнают о новом выпуске и обновляются из того же места, откуда ставились. Вручную:

buff upgrade            # до последнего выпуска
buff upgrade 2.0.11-buff.16   # до конкретного

Удалить консоль вместе с её файлами — buff uninstall.

Массовая раскатка

Чтобы разработчикам не вводить адрес коннектора, задайте его заранее переменной окружения: форма входа тогда не спросит адрес.

export BUFF_CONNECTOR_URL=https://connector.company.local:8767

Переменную удобно задать в профиле оболочки, в образе рабочей станции или в скрипте установки. Остальное — код входа, организация и проект — разработчик выбирает сам при первом запуске (см. Вход и рабочий контекст).

Что ставится на машину

  • Консоль: каталог ~/.buff/bin с одним исполняемым файлом и строка в профиле оболочки.
  • Приложение: обычный пакет системы.
  • Данные Buff Code — вход, ключ устройства, рабочий контекст и локальная история сессий — в каталоге данных пользователя. В системное хранилище сертификатов ничего не добавляется, прав администратора не требуется.

On this page