[devel] I: gitoskop готов для замены gitweb.cgi на git.altlinux.org
Anton Farygin
rider на basealt.ru
Чт Авг 20 22:36:07 MSK 2026
Всем привет.
Кандидат в прод уже поднят, можно щупать прямо сейчас:
https://git.altlinux.org/gitoskop/
gitweb.cgi нам служит давно, но это медленный CGI на Perl образца
нулевых, который к тому же почти не сопровождается. gitoskop — замена
ему: сервис на Rust, отдающий то же дерево bare-репозиториев
(gear/gitery-зеркала) по HTTP, но быстро и с современной веб-мордой.
При этом gitoskop не заточен под наши репозитории — это универсальное
решение для просмотра любого дерева bare-репозиториев. Специфика ALT
(раскладка gear/gitery, связь people/ и gears/) задаётся просто в
конфиге, а не вшита в код.
Миграция не ломает ссылки. Это главное, почему gitoskop можно ставить
вместо gitweb, а не рядом: он понимает старые gitweb.cgi-URL. Ссылки вида
?p=...;a=blob_plain;..., a=rss, a=patch, a=atom и прочие продолжают
работать — то, что накидано в старых письмах, вики и багзилле, не
побьётся. Включается ключом gitweb_compat.
Что лучше, чем в gitweb:
- Веб-морда: дерево, поиск по индексу, файлы с подсветкой (в т.ч. RPM
spec — с переходами по секциям и макросам), blame с отслеживанием
переименований, grep по содержимому, лог, диффы рядом.
- Ссылки на конкретную строку с заметкой: навёл на номер, написал
коммент, Enter — ссылка уже в буфере. Удобнее скриншота, когда
объясняешь, где именно сломалось.
- Видно связь people/ и gears/: помечает, влит ли личный репозиторий в
сборочный.
- Работает с телефона: интерфейс подстраивается под узкие экраны, дерево
и файлы читаются с мобильного (в gitweb этого просто нет).
- Atom/RSS-фиды на историю коммитов, теги и целые каталоги —
подписался читалкой и следишь за пакетом.
- Скачивание любого дерева архивом (tar.gz / tar.bz2 / zip),
GitHub-стайл commit/<rev>.patch и .diff.
- Для LLM агентов — MCP-эндпоинт (/_/mcp), восемь read-only инструментов.
Всё ограничено (размеры блобов, каунты, конкуррентность, таймауты) —
рассчитано на недоверенных клиентов.
Как поставить. Пакет gitoskop уже в Сизифе. Ставится одним бинарником:
веб-морда вкомпилена внутрь, отдельный веб-сервер не нужен — в конфиге
ui = true, и всё. Если хочется отдавать статику своим nginx/apache —
есть подпакет gitoskop-webui.
Предлагаю обсудить замену gitweb.cgi на gitoskop на git.altlinux.org.
Пощупайте прод, накидайте, чего не хватает или что ведёт себя не так.
Issues: https://altlinux.space/rider/gitoskop/issues
Сайт проекта: https://altlinux.space/rider/gitoskop
Лицензия: AGPL-3.0-or-later
Подробная информация о списке рассылки Devel