ALT Mobile

Материал из ALT Linux Wiki

В рамках проекта ALT Mobile проводится работа по поддержке мобильных устройств на базе проекта Sisyphus.

Целеполагание

Базовая система на СПО

Фундаментальной целью проекта является построение операционной системы мобильного устройства (телефон, планшет) целиком и полностью на свободном ПО. Мы считаем, что это единственный способ, при котором пользователь может получить полноценный контроль над своим устройством, а не наоборот; это работающий способ контроля над своими данными и путь к цифровому суверенитету.

В нашей системе загрузчик, ядро, базовые компоненты операционной системы (пользовательская оболочка, ядро, браузер, основные пользовательские приложения) являются СПО — таким образом, устройством можно пользоваться из коробки без проприетарного ПО на основном системном процессоре.

Исключение делается только для низкоуровненвых компонент, работающих на обособленных чипах: например, прошивки wifi, bluetooth и прочих периферийных устройств. Но и здесь мы отдаём предпочтение свободным прошивкам при их наличии, например, pinephone_modem_sdk для модемов EG25-G.

А как же проприетарное ПО?

Его вполне можно использовать при желании и наличии совместимости, но его использование не должно быть обязательным для нормального функционирования устройства. Безусловно, это может негативно сказаться на безопасности и приватности.

Полноценный Linux на телефоне

Наша цель — предоставить на мобильном устройстве полноценный Линукс, точно тот же Альт, что есть и на других устройствах, но с оболочкой и приложениями, поддерживающими мобильный интерфейс. Это не какая-то отдельная операционная система, не клон Android, а самый обычный Альт Линукс.

Поддерживаемое оборудование

Построение базовой системы на СПО позволяет легко добавить поддержку нового оборудования при условии наличия devicetree и исходников драйверов устройств.

На текущий момент поддерживается ниже перечисленное оборудование:

Rockchip

Поддерживается оборудование на базе СнК Rockchip aarch64, для которых есть devicetree и драйвера для периферии. В частности:

rk3399s

Телефон Pinephone Pro и совместимая модель от F+ tech.

rk3566

Планшет Pinetab2.

Скиф

Специалистами Элвис обеспечена работа на системе на кристалле Скиф. Поддержка реализована в качестве производной ALT Mobile, использует ядро, отсутствующее в Сизифе.

Дисковые образы

Есть сборки образов для архитектур x86_64, aarch64, riscv. Их можно как запускать на оборудовании, поддерживаемом ядром un-def, так и с помощью QEMU.

Они вполне достаточны для работ над мобильным интерфейсом, адаптацией приложений. При подключении внешнего модема, поддерживаемого ModemManager (в идеале Quectel EG25-G) возможна и работа с мобильными сетями и сопутствующей телефонией).

Образы

Образы для aarch64 оборудования и qemu для поддерживаемых архитектур доступны на ftp.

Инструмент сборки образов (mkimage-profiles) доступен в git.

Сборка

Для самостоятельной сборки образов следует склонировать вышеуказанный git и перейти в ветку next.

Затем следует на целевой архитектуре собрать соответствующую цель сборки. Например, для сборки образа для pinephone pro нужно на aarch64 хосте выполнить:

make vm/pinephone-phosh.img ARCH=aarch64 DEBUG=1

Кросс-компиляция образов не поддерживается.

Для изменения состава пакетов см. pkg.in/lists/mobile. Параметры и сценарий сборки настраиваются в conf.d/phone.mk. Детальная информация по работе с инструментом сборки содержится в документации mkimage-profiles.

Установка

  • Подробнее про установку ALT Mobile на поддерживаемые устройства и виртуальные машины можно прочитать в статье ALT Mobile Установка

Использование

На данный момент использование предназначено только в целях разработки, повседневное применение как основного смартфона пока что не рекомендуется.

Логины по умолчанию: root, pwd:altlinux; user:altlinux, pwd:271828.

Обновление

Обновлять следует методом, который гарантирует работоспособность среды обновления в процессе обновления. Например, если запустить обновление в GUI консоли phosh и в процессе обновления будет перезагружен phosh, обновление прервётся и система может оказаться неработоспособной.

Поддерживаемые способы:

screen

Стандартный apt-get update && apt-get dist-upgrade -a рекомендуется выполнять в менеджерах терминалов screen или tmux, гарантирующих продолжение работы при прерывании родительских процессов. Рекомендуется использовать ssh или последовательный порт для контроля над процессом.

В таком сценарии пользователь сам должен перезагрузить устройство по необходимости (например, при обновлении ядра).

packagekit

Packagekit работает путём скачивания обновлений, перезагрузки и установки всех пакетов в контроллируемом окружении и последующей перезагрузки для полноценной работы. Интерфейсом для работы с packagekit является Gnome Software ("магазин" приложений из Сизифа).

Статус ПО

Доступно всё программное обеспечение из репозитория Сизиф. Детальная информация на отдельной странице.

TODO

Перечень открытых задач достаточно большой, поэтому его можно найти на отдельной странице.

Известные проблемы

Полностью разряженная батарея

При полностью разряженной батарее телефон может не загрузиться даже при подключении к сети. Эта проблема решена с свежих версиях tow-boot, необходимо обновиться. Если нет батарея уже полностью разряжена и нет возможности обновить tow-boot, нужно зарядить её на внешнем устройстве, можно подать питание 5V ненадолго.

Система перестала загружаться в ходе обновления

Обновляться следует рекомендуемыми способами. Если система уже сломана, следует записать новый образ, перед этим необходимо сохранить все важные пользовательские данные (в первую очередь ~/.local и ~./config).

Галерея

Для увеличения изображения, кликните на превью.

Контакты

Список почтовой рассылки mobile-devel.

Телеграм канал ALT Mobile.

О проблемах в конкретных пакетах можно открывать баги в багзилле.