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

Материал из ALT Linux Wiki
м (→‎Скиф: -очепятка)
Строка 6: Строка 6:


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


== QEMU ==
== QEMU ==

Версия от 08:43, 17 ноября 2023

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

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

rk3399s

Поддерживаются устройства на базе rk3399s, в частности Pinephone Pro и совместимая модель от F+ tech.

Скиф

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

QEMU

Есть сборки образов виртуалок для архитектур x86_64, aarch64, riscv.

Они вполне достаточны для работ над мобильным интерфейсом, адаптацией приложений. При подключении внешнего модема, поддерживаемого 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.

Установка

На железо

1. На телефоне должен быть установлен загрузчик tow-boot на SPI flash. На большинстве моделей tow-boot штатно установлен на SPI; если это не так, то установите его по следующей инструкции: https://tow-boot.org/devices/pine64-pinephonePro.html

Примечание: Рекомендуется всегда использовать последнюю версию tow-boot, чтоб не спотыкаться об уже исправленные проблемы.


2. Образ можно установить и на emmc, и на microsd. Как таковая "прошивка" не требуется, достаточно скопировать распакованный образ на носитель.

Для загрузки телефона в режиме экспорта emmc как usb-диска, нужно при загрузке зажать кнопку Volume Up до загорания синего индикатора LED. После этого emmc будет доступно как /dev/sdX. Аналогично можно подключить и microsd через любое устройство чтения таких носителей.

3. Копирование на носитель:

xzcat pinephone-phosh-latest-aarch64.img.xz | dd of=/dev/sdX oflag=direct,sync iflag=fullblock bs=1M status=progress

4. Изменение раздела файловой системы

Рекомендуется (но не обязательно) расширить файловую систему образа на весь носитель. Сделать это можно следующими командами:

echo ", +" | sfdisk -N 1 /dev/sdX
resize2fs -p /dev/sdX1

где sdX — устройство, куда был записан образ.

5. Загрузка.

Для загрузки с emmc достаточно включить телефон, для загрузки с microsd нужно при загрузке зажать кнопку Volume Down до смены цвета индикатора LED на бирюзовый.

В виртуальной машине

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Преамбула

В этом разделе будет описано, как попробовать ALT Mobile в виртуальной машине. Разумеется, возможности работать с телефонией, камерой и прочими аппаратными устройствами при этом не будет, но такую среду можно использовать для адаптации приложений под мобильный интерфейс.

Получение образа диска

Качаем отсюда:

http://beta.altlinux.org/mobile/latest/

образ вида

phosh-20231004-x86_64.img.xz

Примечание: Обратите внимание, нам нужен x86_64! Но также поддерживаются архитектуры aarch64 и risc-v, действия для них аналогичны.

Распаковываем образ диска, куда-нибудь, например в /home/petr/images/phosh-20231004-x86_64.img

Qemu

С ускорением

Установка Qemu-KVM
# apt-get install /usr/bin/qemu-kvm
Запуск системы

От обычного пользователя, не от рута, в консоли должен быть $, а не #, запускаем следующую команду:

$ kvm -m 4G -k en-gb -hda /home/petr/images/phosh-20231004-x86_64.img

Здесь:

  • kvm - указывает, что запускаем при помощи qemu-kvm
  • -m 4G - для машины будет выделено 4 ГБ ОЗУ
  • -k en-gb - будет использоваться английская раскладка
  • -hda /home/petr/images/phosh-20231004-x86_64.img - путь к нашему образу

Вы можете подправить данные параметры под свои.

Инструкции по запуску в qemu образов для aarch64 и riscv64:

https://www.altlinux.org/Ports/aarch64/QEMU

https://www.altlinux.org/Ports/riscv64/QEMU

Запуск GUI

Устанавливаем viewer:

# apt-get install /usr/bin/remote-viewer

Открываем адрес:

$ remote-viewer vnc://localhost:5900

Без ускорения

Установка Qemu

Ставим Qemu и интерфейс на SDL. Если его не поставить, а у вас установлен lbvirt, Qemu вместо GUI будет стучаться на 127.0.0.1:5900.

# apt-get install qemu-system-x86 qemu-ui-sdl
Запуск системы

От обычного пользователя, не от рута, в консоли должен быть $, а не #, запускаем следующую команду:

$ qemu-system-x86_64 -m 4G -k en-gb -hda /home/petr/images/phosh-20231004-x86_64.img -smp cpus=4 -net user

Здесь:

  • qemu-system-x86_64 - указывает, что мы эмулируем x86_64 компьютер
  • -m 4G - для машины будет выделено 4ГБ ОЗУ
  • -k en-gb - будет использоваться английская раскладка
  • -hda /home/petr/images/phosh-20231004-x86_64.img - путь к нашему образу
  • -smp cpus=4 - будет использовано 4 ядра процессора
  • -net user - будет использована сеть компьютера

Вы можете подправить данные параметры под свои.

Результат

Управлять можно мышкой, симулируя ввод пальцами или вводить символы с физической клавиатуры.


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

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

Логины по-умолчанию: 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 ("магазин" приложений из Сизифа).

Статус ПО

На данный момент программное обеспечение находится в состоянии Альфа-версии и предназначено для разработки и тестирования опытными пользователями. В проекте используется свободное ПО, в т.ч. наработки проектов PureOS, Mobian, PostmarketOS.

Пользовательский интерфейс

Поддерживается пользовательское окружение на базе phosh (phone shell). Ведутся работы по поддержки SWMO.

Пользовательские приложения

Звонки

Gnome calls — приложение звонков

phosh-antispam — инструмент блокирования спам-звонков

SMS/MMS

Chatty

Контакты

Gnome contacts

Браузеры

Firefox, chromium.

Telegram

Доступен telegram-desktop. Для того, чтоб в вертикальной ориентации приложение помещалось в экран, рекомендуется запускать с -scale 80% (можно и 85%).

Карты

gnome-maps

Фото/камера

megapixels, cheese — есть поддержка камер смартфона.

Gnome camera, snapshot — есть проблемы работы с камерой.

Видео

mpv, totem — неполная адаптация под мобильный интерфейс

clapper — хорошо адаптирован под мобильный интерфейс

Музыка

amberol — простой музыкальный проигрыватель

lollypop — проигрыватель и средство управления альбомами

shortwave — интернет радио

Чтение

evince — PDF

foliate — электронные книги (epub, fb2,…)

Терминал

gnome-console, gnome-terminal, xterm

Подручные инструменты

gnome-clocks — часы

gnome-calendar — календарь

gnome-calculator — калькулятор

gnome-weather — погодный виджет

Инструменты тонкой настройки

gnome-control-center, phosh-mobile-settings, alt-tweaks.

TODO

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

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

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

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

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

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

Галерея

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

Контакты

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

Телеграм канал Alt Linux Mobile.

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