Skip to content

Документация

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

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

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

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

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

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

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

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

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

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

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

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

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

Rockchip

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

rk3399

Игровая приставка Anbernic RG552

rk3399s

Телефон PinePhone Pro

rk3566

Планшет PineTab2, игровые приставки ANBERNIC RG ARC-D/RG ARC-S, Anbernic RG353M

Скиф

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

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

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

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

Образы

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

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

Сборка

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

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

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

NOTE

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

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

Установка

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

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

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

Логины по умолчанию: root (пароль: altlinux), altlinux (пароль: 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)

Авторы

The avatar of contributor named as Олег Щавелев Олег Щавелев
The avatar of contributor named as x1z53 x1z53
The avatar of contributor named as Oleg Shchavelev Oleg Shchavelev
The avatar of contributor named as Ubuntigroid Ubuntigroid
The avatar of contributor named as NixXiz Lab NixXiz Lab

История изменений