Линукс на телефон вместо андроид

Обновлено: 01.07.2024

Для функционирования программы необходимы права root пользователя.

Это приложение с открытым исходным кодом, предназначенное для автоматизации процесса установки, конфигурирования и запуска GNU/Linux дистрибутивов на платформе Android внутри контейнера chroot. Приложение создает образ диска на карте памяти или ином носителе, монтирует его и устанавливает туда выбранный Linux-дистрибутив. Поддерживается установка в файл, прямо на раздел карты памяти, в директорию с файловой системой ext2/ext3/ext4 и в оперативную память. Приложения из Linux-дистрибутива запускаются в chroot окружении, работают параллельно с основной системой и сопоставимы с ней по скорости. Все вносимые изменения на устройстве обратимы, т.е. приложение и созданные им компоненты можно полностью удалить. Установка Linux-дистрибутива осуществляется по сети с официальных зеркал в интернете. Поскольку работа Linux Deploy базируется на системном вызове ядра Linux, то в роли "гостевых" систем могут выступать только дистрибутивы Linux. Через интерфейс программы можно управлять процессом установки Linux-дистрибутива, а после установки можно запускать и останавливать сервисы установленной системы (есть поддержка запуска собственных сценариев). Процесс установки отображается в виде текстовых отчетов в главном окне приложения. Во время установки программа сама настраивает рабочее окружение, которое включает в себя базовую систему, сервер SSH, сервер VNC и графическую среду на выбор. Также через интерфейс программы можно управлять параметрами серверов SSH и VNC. Установка Linux-дистрибутива занимает около 30 минут. Рекомендованный минимальный размер образа диска без графического интерфейса - 512 МБ, а с графическим интерфейсом - 1024 МБ (для LXDE). После начальной установки пароль для доступа по SSH и VNC назначается как "changeme", который можно сменить стандартными средствами дистрибутива, либо через параметры приложения.

Характеристики:
Поддерживаемые дистрибутивы: Debian, Ubuntu, Kali Linux, Arch Linux, Fedora, CentOS, Gentoo, Slackware, RootFS (tgz, tbz2, txz)
Тип установки: файл, раздел, оперативная память, директория
Поддерживаемые файловые системы: ext2, ext3, ext4
Поддерживаемые архитектуры: ARM, ARM64, x86, x86_64, режим эмуляции архитектуры (ARM <-> x86)
Способы подключения к контейнеру: CLI, SSH, VNC, X-сервер, фреймбуфер
Интерфейсы управления (CLI): Android-терминал (или adb), telnet, веб-интерфейс (терминал через браузер)
Окружение рабочего стола: XTerm, LXDE, Xfce, MATE, другое (ручная настройка)
Поддерживаемые языки: мультиязычный интерфейс

ВНИМАНИЕ!
Эта программа поставляется БЕЗ ВСЯКИХ ГАРАНТИЙ, а автор не несет ответственности за любые возможные последствия ее использования. Это свободное программное обеспечение, и вы можете распространять его согласно правилам лицензии GPLv3.

Если вам нужна альтернативная операционная система для мобильного телефона, то Linux является хорошим вариантом. Но какие операционные системы для смартфонов Linux доступны для установки сегодня? Если вы хотите заменить Android на Linux, вот дистрибутивы, которые вы должны попробовать.

1. Ubuntu Touch

Первоначально выпущенный Ubuntu разработчиками Canonical, Ubuntu Touch в настоящее время поддерживается UBports. Это означает, что заброшенная мобильная операционная система Ubuntu на данный момент живет.

Поддерживаемые в настоящее время устройства включают в себя телефоны, на которые уже была установлена ​​Ubuntu Touch, а также OnePlus One, Fairphone 2 и Nexus 5 (Hammerhead). Многие другие находятся в активной разработке, такие как OnePlus 2 и OnePlus 3.

2. Sailfish OS

Sailfish OS - является продолжением заброшенной операционной системы MeeGo, основанной на Maemo и Moblin.

Последняя версия ОС Sailfish известна как Sailfish X, которая работает на устройствах Sony Xperia X. К сожалению, Sailfish OS не является с открытым исходным кодом, а бесплатная версия ограничена по времени.

Полная версия Sailfish X обойдется вам примерно в 50 долларов, и она доступна только в Европейском Союзе, Норвегии и Швейцарии. Как отмечено на сайте:

В Sailfish OS есть поддержка приложений Android, поэтому, если вам это нравится, стоит попробовать эту ОС.

3. Plasma Mobile

Получив большое внимание в течение 2017 года (в основном из-за отказа Ubuntu от Ubuntu Touch), цель Plasma Mobile - стать «полной и открытой программной системой для мобильных устройств».

В настоящее время совместимая с Nexus 5 (Hammerhead) и OnePlus One, Plasma Mobile (на основе Kubuntu) также доступна для ПК и планшетов на базе Intel, благодаря версии на основе Arch Linux.

Также есть поддержка multiROM для Nexus 5 (Hammerhead), позволяющая запускать Plasma Mobile вместе с предпочитаемым вами пользовательским ПЗУ для Android.

Возможно, лучшая вещь в проекте Plasma Mobile заключается в том, что вы можете запускать настольные приложения и виджеты Plasma, а также приложения Ubuntu Touch. Это дает проекту более широкий выбор приложений, чем Ubuntu Touch.

Приложения, которые устанавливают Linux на Android

Если вы отчаянно хотите иметь Linux в своем кармане, но у вас нет ни одного из устройств, перечисленных выше, есть альтернативы.

Они позволяют вам запускать Linux (или создавать видимость запуска Linux), не выходя из вашего Android-устройства как приложения. В большинстве случаев необходимо будет получить root права .

KBOX

Средство KBOX, которое не требует root, описывается как «проект по созданию миниатюрного дистрибутива Linux для некорневых (то есть немодифицированных) устройств Android, обеспечивающий консольное окружение в стиле Linux».

Прошло совсем немного времени с момента выпуска первых смартфонов под управлением ОС Android до того, как энтузиасты научились запускать на них полноценные дистрибутивы Linux. Сегодня методики установки Linux-дистрибутивов на Android-устройства широко известны, а в репозитории Google Play есть даже автоматизированные системы установки и запуска Linux. В этой статье я попытаюсь аккумулировать весь накопленный опыт работы с Linux на смартфонах, расскажу, зачем это нужно, и покажу, как избежать возможных подводных камней при переносе Linux на смартфон или планшет.

Зачем?

На первый взгляд может показаться странным, что кто-то пытается запустить на мобильном устройстве операционную систему, в принципе не предназначенную для работы с экраном небольших размеров и без достаточно точного манипулятора (мышь) и клавиатуры. Однако не стоит делать поспешных выводов. Дистрибутив Linux может дать владельцу смартфона достаточно много преимуществ, среди которых набор старых проверенных инструментов, таких как утилиты командной строки, продвинутые редакторы, FTP- и SSH-серверы, сетевые инструменты и средства разработки приложений. Запустив Linux без графической оболочки на смартфоне с хардварной клавиатурой (Motorola Droid, к примеру), можно достаточно комфортно всем этим пользоваться прямо на ходу без необходимости покидать сам Android. Все инструменты доступны в любой момент, а смартфон продолжает оставаться смартфоном, позволяя принимать звонки и слушать интернет-радио.

Второй аргумент за установку Linux на смартфоне — это возможность использовать его в качестве переносной рабочей станции, которую можно подключить к любому ПК и тут же получить доступ к терминалу с помощью SSH/Telnet-клиента либо клиента VNC/RDesktop. Это по определению лучше, чем флешки с установленным Linux, так как нет необходимости, во-первых, перезагружать машину, а во-вторых, гонять туда-сюда данные; результаты твоей работы будут доступны сразу после того, как отключишь смартфон от компа.

Наконец, наибольший выигрыш Linux дает на планшетах, экран которых позволяет более-менее сносно работать в графической среде, а возможность подключить мышь и клавиатуру через OTG-кабель так и вообще дает шанс превратить планшет в полноценную рабочую станцию. При этом никакой особой разницы между установкой дистрибутива Linux на планшет и смартфон нет.

Перенести Linux на Android действительно просто, и главную роль здесь играет ядро Linux. Любой Linux-дистрибутив представляет собой набор приложений и библиотек, работающих поверх ядра Linux, а так как Android сам основан на почти неизмененном ядре Linux, эти приложения и библиотеки можно без каких-либо проблем запустить внутри среды Android. Достаточно лишь подыскать дистрибутив, для которого существует порт на платформу ARM (не забываем, что 99% всех Android-девайсов работают на ARM), установить его с помощью ARM-эмулятора на виртуальный жесткий диск (то есть в файл), скинуть этот файл на SD-карту устройства, открыть терминал, смонтировать образ в качестве loopback-устройства и сделать chroot внутрь. Все! Это так же просто, как запуск FTP-сервера в chroot-окружении — простой и проверенный десятилетиями метод.

Единственный камень преткновения, когда ты решаешь запустить дистрибутив Linux внутри Android, — графическая среда. В то время как с доступом к консоли никаких трудностей не возникает благодаря наличию полноценного эмулятора терминала, с графическими приложениями начинаются проблемы — нативного X-сервера для Android нет, а запустить обычный X-сервер внутри самого дистрибутива невозможно из-за коренных отличий в архитектуре графической подсистемы зеленого робота. Несмотря на то что в основе она использует стандартный Linux Framebuffer, поверх которого можно запустить X-сервер, эксклюзивное право его использования изначально принадлежит более высокоуровневым библиотекам Android, поэтому остается либо загружать Linux-дистрибутив вместо Android (что совершенно непрактично), либо придумывать обходные пути.

Проверка работы необходимых модулей

Имей в виду, что поддержка loopback-устройств и файловых систем ext2/ext3, необходимых для подключения образа, имеется далеко не во всех ядрах Linux, установленных на смартфонах под управлением Android. Проверить наличие поддержки можно с помощью команды lsmod | grep -e loop -e ext2.

Энтузиасты вышли из этой ситуации, используя простой метод «удаленного» подключения к рабочему столу с помощью любого доступного для Android VNC-клиента. Внутри chroot-окружения запускается X-сервер Xvnc, и все приложения работают под его управлением. Пользователю остается лишь установить VNC-клиент, вбить локальный адрес — и вуаля, на экране появляется полноценный рабочий стол.

Единственное узкое место при использовании удаленного рабочего стола — это производительность. Даже работая локально, VNC не может обеспечить должный ее уровень, которого бы хватило для плавной прокрутки или перемещения окон без лагов. Решить эту проблему пока не удалось, проекты разработки нативного X-сервера, который бы использовал графическую подсистему Android, еще очень сыры и не могут быть использованы для запуска полноценных графических сред. Впрочем, никто не запрещает их использовать; к примеру, X Server от Darkside Technologies Pty Ltd (goo.gl/ap3uD) вполне сгодится для запуска простого софта.

Изначально Linux для Android существовал только в виде образа с уже установленной системой, а также пояснительной инструкции, как этот образ подключить и использовать. Затем появились скрипты, которые автоматизировали процесс подключения образа и запуска Linux, но и они требовали некоторой работы головой. Наконец, в последнее время появились инсталляторы, доступные в Google Play (например, goo.gl/RSA1j), в некоторой степени автоматизирующие процесс запуска дистрибутива, хотя, по сути, это все то же руководство по установке, но интерактивное, с прямыми ссылками на скачивание образов и скриптов.

Альтернативные варианты

Выше я уже упомянул о том, что дистрибутив Linux вполне может быть загружен вместо Android, благодаря чему удастся задействовать Framebuffer для прямого доступа к видеоадаптеру и существенно ускорить работу графического интерфейса. Однако делать это на смартфоне практически бессмысленно — Linux непригоден в качестве основной системы на небольших экранах, к тому же принимать звонки и пользоваться интернетом будет невозможно. А вот на планшете Linux будет выглядеть вполне достойно.

Обычно на устройство, изначально работающее под управлением Android, так называемая нативная версия Linux-дистрибутива устанавливается следующим образом. На внутреннем NAND-накопителе планшета создается дополнительный раздел, на который копируется Linux-дистрибутив. Затем загрузчик U-Boot (он применяется в большинстве планшетов) настраивается таким образом, чтобы использовать этот раздел в качестве загрузочного. В результате планшет будет автоматически загружать Linux-систему после включения питания.

Чтобы оставить возможность загрузки Android, загрузчик U-Boot перенастраивают таким образом, чтобы раздел с Linux-системой был не основным, а выполнял функцию «раздела для восстановления» (Recovery Mode), доступного с помощью включения устройства с зажатой клавишей громкости (тот самый, который используется для перепрошивки устройства и выполнения различных восстановительных операций). Таким образом удается получить устройство с двойной загрузкой: Android по умолчанию и дистрибутив Linux при загрузке в режиме восстановления. Сам Recovery Mode при этом остается доступным только с помощью специальных инструментов.

В случае если NAND-памяти оказывается недостаточно для размещения полноценной Linux-системы, ее части (обычно раздел /usr) выносят в образ или раздел на SD-карте. Кстати, ext2-раздел на карте памяти также можно использовать для установки Linux, запускаемого в chroot-окружении.

Установить нативный Linux-дистрибутив сложнее, чем работающий в chroot-окружении, но это стоит того, если у тебя есть планшет и OTG-кабель, с помощью которого можно подключить клавиатуру и мышь.

Практическое занятие

Как я уже говорил, для запуска под управлением Android пригодны только дистрибутивы, портированные на архитектуру ARM. Прежде всего это Ubuntu и Debian, причем первый по понятным причинам пользуется гораздо большим интересом среди роботоводов. Также можно установить Gentoo и несколько специализированных дистрибутивов, например Backtrack. Рассмотрим самый типичный случай, то есть установку Ubuntu по стандартной схеме, без использования каких-либо автоматизированных инсталляторов и прочего.

backtrack2

BackTrack, запущенный на планшете

BackTrack, запущенный на планшете

Для начала нам нужен образ жесткого диска с установленным дистрибутивом. Его можно создать самому, воспользовавшись эмулятором QEMU, однако в связи с тем, что процедура установки абсолютно стандартна и типична, описывать ее я не буду, а просто направлю тебя по адресу goo.gl/9nvBi. Здесь лежит архив с образом, на который предустановлен Ubuntu 12.04 с графическим окружением LXDE (было бы неразумно запускать Unity/Gnome на телефоне/планшете). Архив следует распаковать и положить файл ubuntu.img на карту памяти.

Далее надо смонтировать образ и сделать chroot в окружение дистрибутива. Для этого нужны права root, прошивка с поддержкой блочных loopback-устройств и установленный busybox (ищем в Маркете по запросу «busybox installer», в CyanogenMod есть по умолчанию). Последовательность действий:

    Открываем эмулятор терминала в Android (если нет, можно установить из Маркета Terminal Emulator). Либо подключаем смартфон/планшет к компу и получаем доступ к терминалу с помощью adb:

Собственно, на этом установка заканчивается. Теперь можно запускать консольный софт, производить обновление системы, стартовать сетевые сервисы и делать почти все, что можно сделать с обычной десктопной Linux-системой, не забывая, конечно, что некоторый софт, напрямую взаимодействующий с железом и различными специализированными псевдодевайсами, работать не будет. Также не забываем, что виртуальные ФС после завершения работы следует размонтировать.

Теперь нам необходимо установить и запустить X-сервер Xvnc, экспортирующий дисплей и устройства ввода с использованием протокола VNC. TightVNCserver уже есть в представленном образе и даже настроен, но, чтобы ты лучше понял процесс и смог решить возникшие проблемы, я подробно опишу процесс его установки и запуска.

  1. Обновляемся и устанавливаем TightVNCserver:
  2. Создаем файл /root/.vnc/xstartup и пишем в него следующее:

Чтобы не заморачиваться с ручным вводом всех команд, можно использовать скрипт ubuntu.sh, расположенный здесь: goo.gl/xSpK4. Просто положи его и образ ubuntu.img в каталог ubuntu на SD-карте и запусти скрипт командой sh ubuntu.sh, а через 5–10 секунд подключись к рабочему столу с помощью AndroidVNC. Имей в виду, что скрипт монтирует образ к каталогу /data/local/mnt.

AndroidVNC — подключаемся к рабочему столу

AndroidVNC — подключаемся к рабочему столу

Установка Gentoo на ext2-раздел

Итак, мы установили Ubuntu с помощью образа с файловой системой и шаманств с loopback-устройством и chroot-окружением. Сделать это оказалось несложно, а с применением скриптов так и вообще очень легко, но что, если пойти дальше и установить более хардкорный дистрибутив, и не с использованием образов, а на выделенный ext2-раздел на карте памяти? Так мы сможем решить проблему некоторых прошивок и ядер без поддержки loopback-устройств и к тому же сможем насладиться нормальным дистрибутивом, установленным по всем правилам.

Проект «Ubuntu for Android» в действии

Проект «Ubuntu for Android» в действии

Возьмем в качестве подопытной системы Gentoo. Чтобы установить его на ext2-раздел, нам понадобится карта памяти объемом не меньше 2 Гб и рутованный смартфон с установленным busybox. Последовательность действий следующая.

  1. Делаем бэкап данных с карты памяти и создаем на ней дополнительный раздел, объемом не меньше двух гигабайт. Сделать это можно с помощью любой программы для разбивки дисков, однако имей в виду, что если ты хочешь продолжать использовать SD-карту по прямому назначению, то создавать FAT32-раздел следует в начале карты, так, чтобы он стал первым, а дополнительный раздел для установки дистрибутива должен быть вторым.
  2. Форматируем разделы SD-карты:
  3. Берем телефон, заходим в «Настройки -> О телефоне» и смотрим, какой установлен процессор. Далее переходим на страницу goo.gl/PRfux и выкачиваем stage3 для нужной архитектуры, например stage3 для ARM v7 лежит в каталоге current-stage3-armv7a.
  4. Монтируем ext2-раздел карты памяти на компе и распаковываем в него содержимое полученного архива:

Доступ к рабочему столу производится таким же способом, как в Ubuntu, за исключением того, что теперь прямо на телефоне придется собрать кучу софта :). Впрочем, можно настроить среду для кросс-компиляции на компе, но это уже тема для отдельной статьи.

Ubuntu на Galaxy Tab 10.1

Ubuntu на Galaxy Tab 10.1

Нативная установка

Запустив Ubuntu с использованием VNC-сервера, ты заметишь неторопливость его работы, которая связана с издержками протокола VNC на передачу картинки «по сети». Чтобы избежать этой проблемы, можно установить Ubuntu в качестве основной системы рядом с Android, так, чтобы она смогла использовать видеоадаптер напрямую. К сожалению, универсального способа сделать это не существует. Каждое устройство по-своему уникально, включая различные таблицы разделов NAND-памяти, на которую производится установка, различные устройства и драйверы для их работы.

Нативный X-сервер для Android

Нативный X-сервер для Android

К счастью, процесс установки нативной версии дистрибутива хорошо описан для многих устройств в русскоязычных форумах, поэтому найти инструкцию будет несложно. Стоит, тем не менее, сразу обратить внимание на несколько особенностей такого типа установки:

  • Отдельный или основной NAND-раздел. Linux-дистрибутив может быть установлен как в заблаговременно созданный раздел в NAND-памяти, так и в основной загрузочный раздел. В первом случае разработчик прошивки обычно оставляет возможность загрузки Android с помощью специального скрипта либо через загрузку Linux-дистрибутива в режиме восстановления, во втором он будет установлен вместо Android и для возвращения возможности загрузки робота придется заново перепрошивать устройство.
  • Возможность двойной загрузки. Если Linux-дистрибутив будет установлен на отдельный раздел, разработчик может оставить возможность загрузки Android. Однако стоит сразу обратить внимание, как эта загрузка происходит: с помощью режима восстановления либо скрипта, запускаемого с обычного компа. Все-таки второй способ будет неудобен в дороге.
  • Поддержка оборудования. Оригинальное Linux-ядро Android-прошивки уже включает в себя все необходимые драйверы, которые могут понадобиться для работы полноценной Linux-системы, однако далеко не во всех Linux-прошивках все заведется само собой. Часто возникают проблемы с Wi-Fi-адаптером и сенсорным экраном, который неадекватно реагирует на прикосновения. Поэтому перед установкой прошивки стоит внимательно прочитать о возможных осложнениях.

В любом случае будь готов к тому, что во время установки Linux-дистрибутива все твои данные будут уничтожены. Без этого никак.

Запуск Ubuntu с помощью стартового скрипта

Запуск Ubuntu с помощью стартового скрипта

Что дальше

Linux-дистрибутив, установленный рядом с оригинальной Android-системой, может стать очень удобным рабочим инструментом, однако на данный момент «Linux внутри Android» считается скорее игрушкой и способом покрасоваться перед друзьями, нежели серьезным решением. Уверен, что в скором времени, когда для Android появится полноценная реализация графического сервера Wayland, ситуация начнет меняться и мы увидим дистрибутивы с адаптированным для небольших экранов интерфейсом, а также полноценные Linux-приложения, распространяемые в форме обычных APK-пакетов. Также не стоит забывать о проекте «Ubuntu for Android» — в его рамках идет работа над официальным портом Ubuntu для Android, который позволит использовать смартфон в качестве переносного системника, подключаемого к любому монитору.

Android использует ядро Linux, но его не причисляют к дистрибутивам Linux. А всё потому, что дистрибутив – это не только ядро, но ещё и службы и утилиты GNU. Android их не имеет, вместо этого используются свои библиотеки, вроде Android Runtime (ART). Поэтому давайте рассмотрим операционные системы, использующие Linux, не зависящие от библиотек Google.

Недавняя история с Huawei показала с какой лёгкостью можно использовать IT-компании в большой политике. С открытым программным обеспечением такой трюк провернуть не получится, а это значит, что свободные операционные системы могут стать основой для смартфонов будущего. Давайте узнаем, какие мобильные операционные системы разрабатываются на сегодняшний день.

Операционные системы для смартфонов основе Linux

1. SailfishOS

AAAAAElFTkSuQmCC

Sailfish не разрабатывается с нуля, а продолжает развитие MeeGo. В роли оболочки выступает Sailfish Silica, использующая библиотеки Qt. Несмотря на это, часть приложений будет работать только в этой операционной системе, так как они используют слой совместимости Hebris, позволяющий использовать библиотеку Bionic для Android.

Но это не единственный шаг в сторону Android. В официальных прошивках помимо прочего используется виртуальная машина Dalvik Turbo Virtual Machine, с её помощью можно запускать немало приложений Android. Но не стоит забывать о том, что многие из них завязаны на использование API и сервисов, доступных только на операционной системе от Google. К тому же Dalvik уже устарел и практически вытеснен более современным ART.

На текущий момент SailfishOS принадлежит Ростелекому, но разработчики остались те же. Таким образом она может заменить Android, если появится такая необходимость.

Тут можно вспомнить и о HarmonyOS, разработке Huawei, призванной заменить Android после введения санкций. Но их операционная система пока что не перешла на собственное микроядро и по-прежнему опирается на Android. Иными словами, это будет и не Linux и не Android.

2. Ubuntu Touch

AeUm+kBEaBTlAAAAAElFTkSuQmCC

Несмотря на то, что устройства под управлением Ubuntu Touch уже не выпускаются, операционная система по-прежнему разрабатывается. Но Canonical, ответственная за настольную Ubuntu, уже не при делах. Её место заняло сообщество разработчиков Ubports. Стоит напомнить, что Touch-версия операционной системы появилась в то время, когда использовалась оболочка Unity. Эта среда рабочего стола также перешла к сообществу. При его поддержке она развивается по сей день и даже обещают выпустить 8 версию.

К сожалению, сообщество совсем небольшое и Ubuntu Touch практически не изменилась с момента заморозки проекта компанией Canonical. Особенно это заметно по поддерживаемым устройствам, новинок среди них нет. А жаль, ведь оболочка имеет необычный интерфейс, завязанный на управление жестами.

3. Plasma Mobile (KDE)

H4ezWzCdtxgJAAAAAElFTkSuQmCC

Plasma Mobile – это среда рабочего стола для смартфонов. К ней прилагается несколько базовых приложений, вроде виртуальной клавиатуры и телефона. Её используют такие дистрибутивы, как postmarketOS и Manjaro ARM.

Пока что она находится на ранней стадии разработки, но планы разработчиков впечатляют. На следующем этапе добавится SDK для создания приложений, потом сами приложения, а финальным шагом будет эмуляция Android. Сейчас для эмуляции предлагают использовать слой совместимости Anbox. Но опять же, многим приложениям требуются родные библиотеки Android.

4. NixOS Mobile

Z

О NixOS Mobile известно не много. Разработка началась не так давно, в 2018 году. На первом этапе было использовано немало решений из postmarketOS. Этот дистрибутив интересен своим менеджером пакетом Nix. Он позволяет сохранить конфигурацию и перенести её на новое устройство. Не совсем понятно, как это будет работать с разнообразием мобильных устройств, начиная процессорами и заканчивая многочисленными сенсорами.

По сути проектом занимается всего один человек и говорить о появлении даже альфа-версии пока рано. Если NixOS Mobile сможет заинтересовать более крупного разработчика, то мы получим систему с продвинутым пакетным менеджером, решающим многие проблемы с зависимостями от библиотек.

5. PureOS

wETQn7sRueguQAAAABJRU5ErkJggg==

Purism, разработчики PureOS настроены весьма радикально, они не приемлют программное обеспечение с закрытым кодом. Намерения благие, и десктопная версия операционной системы от этого не сильно страдает, для Linux полно приложений, выпущенных под лицензией GNU GPL. Но можете ли вы представить смартфон без мессенджеров и социальных сетей? А ведь практически все такие приложения имеют проприетарный код.

Если же говорить о самом дистрибутиве, то он базируется на Debian и Phosh – адаптированной оболочке GNOME. Предустановленных приложений самый минимум, а в магазине лишь программы для настольной версии, интерфейс которых не рассчитан под управление пальцем.

Операционная система устанавливается на фирменные смартфоны Librem 5, но это скорее концепт, нежели готовое к использованию устройство. Также наработки Purism используются при создании Mobian, мобильной версии Debian, которая практически не предлагает чего-то сверх того, что есть в PureOS.

Выводы

В этой статье мы рассмотрели лучшие операционные системы Linux для смартфонов. Крупные игроки на рынке смартфонов уже доказали то, что мобильная операционная система требует немало вложений. Примеров множество, взять хотя бы Tizen от Samsung и WebOS от LG. Они существуют и по сей день, но перекочевали на более простые устройства, вроде SmartTV и умных часов. А ведь экосистема была готова, популярности и дальнейшему развитию в направлении смартфонов помешал существенный фактор – приложения. Даже Microsoft со своей Windows Phone не смогла поддерживать разработчиков должным образом и получать приложения в свой магазин.

Есть два выхода из сложившейся ситуации: создать слой совместимости или использовать универсальные веб-приложения. С первым всё более-менее понятно. SailfishOS использует виртуальную машину Dalvik, а Plasma Mobile и PureOS могут задействовать Anbox. Но это полумеры, Android не ограничивается одними лишь приложениями, не стоит забывать о сервисах Google и API.

К слову об API, ещё 5-7 лет назад ходили разговоры о создании единого API для SailfishOS, Plasma Mobile и Ubuntu Touch. Но, по всей видимости, что-то пошло не так и сейчас мы имеем несколько разрозненных проектов. Другим решением может стать повсеместное использование прогрессивных веб-приложений. Но и тут есть немало подводных камней. Во-первых, необходимо подключение к интернету, во-вторых, приложения не полностью интегрируются в систему.

И самый главный недостаток – нет такого браузера, который в полной мере может заменить отдельные приложения. Например, Android использует WebView, что в конечном счёте сводится к созданию программы в формате APK. Ведь если бы такой браузер существовал, то с ним и ещё с парой приложений базовых приложений, вроде SMS и контактов, можно было бы получить самодостаточную операционную систему.

А что вы думаете о мобильных операционных системах на базе Linux? Есть ли у них шансы завоевать рынок? По вашему мнению какие условия для этого нужны? Перейдёте ли с Android и iOS на другую операционную систему?

Читайте также: