Вышел открытый проект LinuxOnTab — Linux во вкладке браузера

от автора

Разработчик под ником kilian-ai представил открытый проект под названием LinuxOnTab (репозиторий на GitHub). Это рабочий Linux (на базе ядра Linux 6.12.13) во вкладке браузера. Проект является автономным, работающим только в браузере, включая рабочий стол Linux с файловым менеджером, туннелями портов и социальной средой с публичными папками на базе Nostr. В решении загружается полноценное ядро ​​x86 + Alpine Linux во вкладке через эмулятор v86 WebAssembly — без сервера, без установки, без демона Docker.

«Настоящее ядро ​​x86 Linux + пользовательское пространство Alpine, загружаемое во вкладке браузера через WebAssembly. Никакой установки. Никакого сервера. Легковесная альтернатива Docker, ориентированная на локальное развёртывание, для мгновенного запуска одноразовых оболочек Linux», — пояснил автор проекта.

Внутри эмулятора WebAssembly v86 загружается ядро ​​Linux x86, предоставляющее оболочку Alpine Linux через xterm.js. Каждый системный вызов обращается к реальному ядру, работающему во вкладке — не к транспилированному образцу, не к удалённому контейнеру, не к облачной виртуальной машине, в которую нужно входить.

«Сетевые возможности включаются по желанию. Когда вам это нужно, гостевая система подключается к бэкэнду через WebSocket WISP v1 и получает полный исходящий TCP‑трафик. Затем вы можете открыть порты гостевой системы обратно на ваш хост через туннель с кодом сопряжения и использовать SSH, SCP, SFTP или rsync для подключения к вкладке браузера, как если бы это был любой другой компьютер с Linux», — уточнил разработчик решения.

Что доступно в проекте:

  • загрузка любого из 4 ISO-образов, сохранение/восстановление снимков в IndexedDB;

  • полный интерфейс xterm с копированием через Cmd/Ctrl+C, вставкой через Cmd+V, выделением всего текста через Cmd+A;

  • боковые панели: file viewer (toggle + draggable divider + fullscreen), social, tunnels lifecycle;

  • внутри виртуальной машины (Alpine): сеть через WISP, DoH, добавление apk, wget, curl, ssh, ftp, syncthing. Открытие любого TCP-порта из виртуальной машины (после развёртывания служб).

ссылка на оригинал статьи https://habr.com/ru/articles/1030984/