Перейти к содержанию

Установка

Поставить нужно две вещи: сам Bugsaur и хотя бы один отладочный адаптер для вашего языка. Обычный способ установки — готовый архив; сборка из исходников остаётся для разработки.

Установить релиз

Откройте GitHub Releases и скачайте архив для своей машины:

Платформа Имя архива
Linux x86-64 bugsaur-v0.1.0-Linux-X64.tar.gz
macOS на Intel bugsaur-v0.1.0-macOS-X64.tar.gz
macOS на Apple Silicon bugsaur-v0.1.0-macOS-ARM64.tar.gz

В каждом архиве лежат bugsaur, встроенный php-dbgp-adapter и необязательный Neovim frontend в каталоге lua/. Распакуйте архив и выведите бинарники в PATH:

tar -xzf bugsaur-v0.1.0-macOS-ARM64.tar.gz
cd bugsaur-v0.1.0-macOS-ARM64
mkdir -p "$HOME/.local/bin"
install -m 755 bugsaur "$HOME/.local/bin/bugsaur"
install -m 755 php-dbgp-adapter "$HOME/.local/bin/php-dbgp-adapter"

Используйте имена файлов скачанного релиза; v0.1.0 выше — только пример.

Собрать из исходников

git clone https://github.com/real420og/bugsaur.git
cd bugsaur
make build

Бинарник появляется в target/debug/bugsaur. Скопируйте или слинкуйте его в каталог из PATH, чтобы вызывать просто как bugsaur.

Собирать через make, а не голым cargo

Makefile получает каталог тулчейна из rust-toolchain.toml и ставит его первым в PATH. Иначе случайный cargo постарее — например, из Homebrew — молча изменит результат сборки.

Проверить, что бинарник работает:

bugsaur

Без аргументов он печатает справку по использованию и завершается с кодом 2. Этот вывод и есть подтверждение, что бинарник на месте.

Поставить адаптер

Адаптеры ищутся через PATH, поэтому отладчик обязан их видеть.

Поставьте CodeLLDB и убедитесь, что бинарник codelldb доступен через PATH:

command -v codelldb

Если он пришёл из Mason:

export PATH="$HOME/.local/share/nvim/mason/bin:$PATH"

Поставьте Delve:

go install github.com/go-delve/delve/cmd/dlv@latest
command -v dlv

debugpy — это модуль Python, поэтому он ставится в тот интерпретатор, который выполняет ваш код, то есть обычно в venv проекта, а не в системный питон:

python3 -m pip install debugpy      # или: .venv/bin/pip install debugpy
python3 -m debugpy --version

Для PHP внешний адаптер не нужен. В релизном архиве php-dbgp-adapter лежит рядом с bugsaur; make build создаёт ту же пару в target/debug. Выведите их каталог в PATH, чтобы каталог адаптеров его нашёл:

export PATH="$PWD:$PATH"                # распакованный релизный архив
export PATH="$PWD/target/debug:$PATH"   # сборка из исходников

Со стороны PHP понадобится настроенный Xdebug — см. Языки → PHP.

Поставить плагин Neovim

По желанию. Bugsaur работает и без него; плагин добавляет сверху навигацию по исходникам и работу с точками останова.

Lua-фронтенд лежит в lua/bugsaur/init.lua и подключается к бэкенду по Unix-сокету. Релизный архив содержит полный каталог lua/, поэтому его распакованный каталог можно напрямую передать lazy.nvim:

{
  dir = "/absolute/path/to/bugsaur-v0.1.0-macOS-ARM64",
  name = "bugsaur",
  config = function()
    require("bugsaur").setup({
      binary = "/absolute/path/to/bugsaur-v0.1.0-macOS-ARM64/bugsaur",
      gui = true,
    })
  end,
}

Для checkout исходников оставьте dir направленным на репозиторий, а в binary укажите target/debug/bugsaur.

setup() несёт только настройки редактора и окна. Адаптеры, программы и launch-аргументы живут в конфиге проекта, а не здесь. Полный справочник: Neovim → Установка.

Проверить установку

Что проверяем Команда Ожидаемо
Отладчик bugsaur текст справки, код возврата 2
Rust / C / C++ command -v codelldb путь
Go command -v dlv путь
Python python3 -m debugpy --version версия
PHP command -v php-dbgp-adapter путь
Neovim есть команда :DebugStart команда дополняется в Neovim

Если command -v не напечатал ничего, адаптер не виден через PATH — это самая частая причина, по которой сессия не стартует. См. Диагностика → Адаптер не запускается.

Дальше

Быстрый старт — описать проект и открыть окно.