Разработчик представил открытую Linux‑среду для iPad с поддержкой десктопных приложений

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Разработчик Вали Нягу (Vali Neagu) представил LinPad — открытую Linux‑среду для iPad с поддержкой настольных приложений. Она работает локально внутри iPadOS и не требует джейлбрейка или запуска на удалённой машине.

В LinPad пользователям доступен рабочий стол с окнами и несколькими рабочими пространствами. Переключаться между ними можно с помощью клавиатуры, мыши или сенсорного экрана. Для запуска доступно около 800 приложений, включая браузер Firefox, редактор кода VS Code, файловый менеджер Thunar, медиаплеер VLC, офисный пакет LibreOffice, графический редактор GIMP, а также Git, Python и Node.js. 

В основе проекта лежит Alpine Linux 3.21 с модифицированным эмулятором iSH‑ARM64. Среда исполняет Linux‑программы для ARM64 и переводит их системные вызовы в вызовы iPadOS. Отдельное ядро Linux и гипервизор не запускаются. Благодаря такой архитектуре у iPad есть доступ к пакетам Alpine, но доступны не все возможности Linux. Например, Docker не работает из‑за отсутствия namespaces, cgroups и других механизмов ядра.

Встроенная оболочка DesktopKit написана на SwiftUI. С Linux‑приложениями она связана с помощью Wayland‑композитора ishwl. Изображение каждого окна передаётся через файлы в памяти, а события ввода возвращаются через именованные каналы.

Для ускорения предусмотрен JIT‑компилятор, который во время работы генерирует машинный код ARM64. Активация происходит через режим разработчика. Без JIT LinPad использует более медленный интерпретатор. Графическое ускорение построено на базе Mesa Venus/Zink, virglrenderer и MoltenVK. Всё при этом выводится через Apple Metal.

В системе остаются ограничения самой iPadOS. Например, ОС приостанавливает приложения в фоне, а при нехватке памяти просто закрывает программы. Большие проекты в VS Code упираются в лимит даже на iPad с 8 ГБ ОЗУ. Авторы проекта пока решают эту проблему с помощью функции восстановления сессий и несохранённого текста в редакторах, а также механизма, который автоматически завершает некоторые процессы Linux до того, как iPadOS выгрузит приложение.

Код LinPad открыт и опубликован по лицензии GPLv3. Проект работает с iPad на чипах M‑серии, а для запуска нужна iPadOS 17 или новее. Установка осуществляется через сторонние магазины приложений. Для первоначальной настройки нужен компьютер. Распакованная Linux‑система занимает около 2,3 ГБ.

Источник: https://habr.com/ru/news/1095080/


Интересные статьи

Интересные статьи

Сайт на 1С-Битрикс может месяцами работать вроде нормально, пока подключения к базе подбираются к 95%, диск незаметно заполняется логами, бэкап давно не запускался, а в логах копится одна и та же ошиб...
Воронка продаж или любая другая воронка (производства, закупок, HR) в любой CRM всегда начинается с бизнес-аналитики, т.е. надо понять процессы в бизнесе клиента и под них настроить IT инфраструктуру,...
Я — Bitrix-разработчик со стажем 8+ лет.Начинал дружить с битрой ещё с версии 12 — когда всё было максимально квадратно, можно сказать что я тот самый "проженный" битриксоид, а любой деплой превращалс...
Не раз слышал от коллег и сам сталкивался с ситуацией, когда пользователь в чате, отзыве или даже в инциденте попутно делится ценным предложением по улучшению. И что в результате? Ему вежливо предлага...
Возможно, вы ловили себя на мысли, что было бы неплохо провести для коллег-новичков в Linux небольшой курс с практическими задачками. Такой курс, чтобы после его прохождения, они могли использовать ОС...