ALT Mobile: различия между версиями

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


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


Строка 9: Строка 9:
Исключение делается только для низкоуровненвых компонент, работающих на обособленных чипах: например, прошивки wifi, bluetooth и прочих периферийных устройств. Но и здесь мы отдаём предпочтение свободным прошивкам при их наличии, например, [https://github.com/the-modem-distro/pinephone_modem_sdk pinephone_modem_sdk] для модемов EG25-G.
Исключение делается только для низкоуровненвых компонент, работающих на обособленных чипах: например, прошивки wifi, bluetooth и прочих периферийных устройств. Но и здесь мы отдаём предпочтение свободным прошивкам при их наличии, например, [https://github.com/the-modem-distro/pinephone_modem_sdk pinephone_modem_sdk] для модемов EG25-G.


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


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


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


На текущий момент поддерживается ниже перечисленное оборудование:
На текущий момент поддерживается ниже перечисленное оборудование:
== Rockchip ==
=== Rockchip ===
Поддерживается оборудование на базе СнК Rockchip aarch64, для которых есть devicetree и драйвера для периферии. В частности:
Поддерживается оборудование на базе СнК Rockchip aarch64, для которых есть devicetree и драйвера для периферии. В частности:
=== rk3399s ===
==== rk3399s ====
Телефон Pinephone Pro и совместимая модель от F+ tech.
Телефон Pinephone Pro и совместимая модель от F+ tech.
=== rk3566 ===
==== rk3566 ====
Планшет Pinetab2.
Планшет Pinetab2.


== Скиф ==
=== Скиф ===
Специалистами Элвис обеспечена работа на системе на кристалле [https://elvees.ru/chip/processors-multicore/skif Скиф]. Поддержка реализована в качестве производной ALT Mobile, использует ядро, отсутствующее в Сизифе.
Специалистами Элвис обеспечена работа на системе на кристалле [https://elvees.ru/chip/processors-multicore/skif Скиф]. Поддержка реализована в качестве производной ALT Mobile, использует ядро, отсутствующее в Сизифе.


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


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


= Образы =
== Образы ==
Образы для aarch64 оборудования и qemu для поддерживаемых архитектур доступны на [http://beta.altlinux.org/mobile/latest/ ftp].
Образы для aarch64 оборудования и qemu для поддерживаемых архитектур доступны на [http://beta.altlinux.org/mobile/latest/ ftp].


Инструмент сборки образов (mkimage-profiles) доступен в [https://git.altlinux.org/people/antohami/packages/mkimage-profiles.git git].
Инструмент сборки образов (mkimage-profiles) доступен в [https://git.altlinux.org/people/antohami/packages/mkimage-profiles.git git].


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


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


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


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


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


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


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


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


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


= Статус ПО =
== Статус ПО ==


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


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


= Известные проблемы =
== Известные проблемы ==
== Полностью разряженная батарея ==
=== Полностью разряженная батарея ===
При полностью разряженной батарее телефон может не загрузиться даже при подключении к сети. Эта проблема решена с свежих версиях [https://tow-boot.org/devices/pine64-pinephonePro.html tow-boot], необходимо обновиться. Если нет батарея уже полностью разряжена и нет возможности обновить tow-boot, нужно зарядить её на внешнем устройстве, можно подать питание 5V ненадолго.
При полностью разряженной батарее телефон может не загрузиться даже при подключении к сети. Эта проблема решена с свежих версиях [https://tow-boot.org/devices/pine64-pinephonePro.html tow-boot], необходимо обновиться. Если нет батарея уже полностью разряжена и нет возможности обновить tow-boot, нужно зарядить её на внешнем устройстве, можно подать питание 5V ненадолго.


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


= Галерея =
== Галерея ==
Для увеличения изображения, кликните на превью.
Для увеличения изображения, кликните на превью.
<gallery>
<gallery>
Строка 93: Строка 93:
</gallery>
</gallery>


= Контакты =
== Контакты ==
Список почтовой рассылки [https://lists.altlinux.org/mailman/listinfo/mobile-devel mobile-devel].
Список почтовой рассылки [https://lists.altlinux.org/mailman/listinfo/mobile-devel mobile-devel].



Текущая версия от 07:15, 26 февраля 2024

В рамках проекта 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.

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