NetBSD остаётся последней из крупных BSD-систем без поддержки Vulkan — но это скоро изменится. Разработчик под ником segaboy довёл портирование программного стека Vulkan (Mesa / Lavapipe) до бета-статуса. Сборка, установка и регистрация драйвера Lavapipe на NetBSD 10.1 amd64 с LLVM 19.1.7 уже работают.
Драйвер (libvulkan_lvp.so, около 17 МБ) устанавливается в /usr/pkg/lib, а его ICD-манифест, сообщающий о поддержке Vulkan API 1.4, — в /usr/pkg/share/vulkan/icd.d/. Vulkan-загрузчик в системе может его обнаружить. ldd показывает чистую цепочку зависимостей без ошибок. Весь процесс — от настройки окружения до финальной установки — полностью автоматизирован и воспроизводим на чистой системе.
Скоро появятся готовые бинарники. Инструменты для сборки, снятия отпечатка и публикации артефактов уже готовы. Скрипты умеют загружать и устанавливать готовую сборку вместо компиляции из исходников. Как только появится билд-машина, установка драйвера сведётся к простому скачиванию вместо многочасовой компиляции.
Важное ограничение: пока не работает рантайм. Проект собирает и устанавливает именно драйвер (ICD). Чтобы запускать Vulkan-программы, нужен ещё загрузчик (libvulkan.so.1) — его добавление следующая цель. Фактический запуск приложений пока не проверен.
Временная заглушка осталась: сборка применяет -Wno-error=format, чтобы обойти ошибку GCC на спецификаторе %m под NetBSD. Планируется корректный фикс через strerror(errno). Документация и скрипты будут меняться по мере добавления загрузчика и пайплайна релизов.
Всё заточено на свежую минимальную установку NetBSD 10.1 (amd64) в VirtualBox. ГП-ускорение под VirtualBox недоступно, но цель — программный рендеринг через Lavapipe. Репозиторий содержит скрипты setup-env.sh, build-glslang.sh, build-mesa.sh, install-mesa.sh и другие. Если сборка прервалась — достаточно перезапустить тот же скрипт, он подхватит уже сделанное.
Проект ещё сырой, документация ведётся как полевые записи — с описанием того, что реально сработало, а что нет. Оригинальная работа выпущена под MIT-лицензией. Сторонние компоненты (Mesa, glslang, LLVM) остаются под своими лицензиями — при распространении бинарников нужно сохранять их атрибуцию.