trynix.dev: любой пакет Nix прямо в браузере
Разработчик Фарид Закария представил проект, который сам называет своим «главным трудом» в работе с Nix. Сервис trynix.dev — это виртуальная машина x86_64 Linux, работающая целиком внутри браузера. За кулисами трудится qemu-wasm, скомпилированный в WebAssembly: никаких серверов, только вкладка браузера.
Пакеты по ссылке
Главная особенность в том, что в этой машине можно загрузить любой пакет из экосистемы Nix за последние тринадцать лет. Причём пакеты адресуются прямо через URL. Например, перейдя по ссылке вида https://trynix.dev/?pkg=python3@3.6.2 и нажав «Load», вы получаете интерактивную оболочку с Python 3.6.2 — той самой версией, что вышла ещё в 2017 году.
Для разработчиков это удобный способ мгновенно проверить поведение старой версии инструмента, не разворачивая окружение локально и не поднимая контейнеры. Достаточно поделиться ссылкой — и собеседник откроет ровно то же самое у себя.
Ревью прямо в браузере
На этой основе Закария строит и более прикладные вещи. Один из свежих примеров — trynix-preview: GitHub Action, который оставляет в pull request комментарий со ссылкой. По ней сборку из этого PR можно загрузить и запустить прямо в браузере через trynix.dev.
Идея подкупает своей простотой: чтобы посмотреть, как ведёт себя предложенное изменение, рецензенту не нужно клонировать репозиторий, собирать код и настраивать зависимости. Он открывает ссылку — и работает с живой сборкой. Как лаконично формулирует сам автор, «никаких серверов, только браузеры».
Проект наглядно демонстрирует, насколько далеко продвинулась связка WebAssembly и воспроизводимых сборок Nix: полноценная эмуляция Linux с доступом к огромному архиву пакетов теперь умещается в одной вкладке.
Источник: Simon Willison
Комментарии
Войдите, чтобы комментировать.