Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Аврора SDK внутри Termux

В этой статье расписано, как установить SDK Аврора ОС и собрать ваше первое приложение, используя устройство на Android. Описанный способ - самый прямолинейный и оттого очень медленный. Сборка проекта-шаблона ApplicationTemplate на процессоре Snapdragon 7+ Gen 2 занимает 5 минут 25 секунд. Для установки вам потребуется около 10 GB свободного места на устройстве, стабильное интернет-соединение и несколько часов свободного времени.

Часть статьи основана на https://github.com/cyberkernelofficial/docker-in-termux

Установка Aurora Platform SDK внутри ВМ Qemu с Alpine Linux

  1. Начнем. Для начала установите мобильное приложение Termux из магазина F-Droid или со страницы GitHub Releases.
  2. Откройте Termux, предоставьте все необходимые разрешения.
  3. Выберите наиболее близкое к вам или вашему провайдеру зеркало для обновления пакетной базы Termux. Выполните следующую команду, ставьте флажки-галочки нажимая на пробел, подтверждайте выделение клавишей Enter.
termux-change-repo
  1. Обновите пакетную базу Termux
pkg up -y
  1. Установите необходимые зависимости для запуска эмулятора Qemu и для скачивания нужных файлов
pkg install qemu-utils qemu-common qemu-system-x86_64-headless wget git -y
  1. Клонируйте этот репозиторий и перейдите в соответствующую папку
git clone https://github.com/Smooth-E/aurora-sdk-termux.git && cd aurora-sdk-termux
  1. Скачайте образ Alpine Linux для виртуальных машин при помощи wget. Вы можете скопировать ссылку на последнюю версию образа, перейдя в браузере на официальный сайт.
wget http://dl-cdn.alpinelinux.org/alpine/v3.20/releases/x86_64/alpine-virt-3.20.2-x86_64.iso
  1. Создайте образ диска для виртуальной машины. Учтите, что файлы Аврора SDK занимают примерно 10 GB. Файл-образ растет пропорционально заполнению виртуального диска, так что его изначальный размер примерно 500 Mb. Команда ниже создаст файл alpine.qcow2, который сможет увеличиться до 40 GB, если это потребуется.
qemu-img create -f qcow2 alpine.qcow2 40G
  1. Запустите виртуальную машину. Для параметра -m укажите количество оперативной памяти для виртуальной машины. Рекомендую выделить ВМ где-то 70% оперативной памяти вашего устройства. Если имя скачанного вами установочного образа Alpine отличается - исправьте параметр -cdrom.
qemu-system-x86_64 -machine q35 -smp cpus=$(nproc) -cpu qemu64 -drive if=pflash,format=raw,read-only=on,file=$PREFIX/share/qemu/edk2-x86_64-code.fd -netdev user,id=n1,dns=8.8.8.8,hostfwd=tcp::2222-:22 -device virtio-net,netdev=n1 -cdrom alpine-virt-3.20.2-x86_64.iso -nographic -m 6000 alpine.qcow2
  1. Войдите в лайв-систему с логином root (без пароля).
  2. Выполните следующую команду, чтобы включить поддержку сети. Нажимайте Enter, чтобы использовать параметры по умолчанию.
setup-interfaces
  1. Включите сетевой интерфейс eth0 (или тот, что вы выбрали до этого).
ifup eth0
  1. Скачайте вспомогательный файл setup-opts.
wget https://raw.githubusercontent.com/Smooth-E/aurora-sdk-termux/refs/heads/master/setup-ops

Если во время скачивания вы получили ошибку на подобии wget: bad address 'gist.githubusercontent.com', запустите следующую команду и попробуйте еще раз.

echo -e "nameserver 192.168.1.1\nnameserver 1.1.1.1" > /etc/resolv.conf
  1. Измените скрипт /sbin/setup-disk, чтобы включить вывод в серийную консоль во время запуска установленной системы.
sed -i -E 's/(local kernel_opts)=.*/\1="console=ttyS0"/' /sbin/setup-disk
  1. Установите Alpine на диск виртуальной машины.
setup-alpine -f setup-opts
  1. После завершения установки выключите виртуальную машину
poweroff
  1. Сохраним команду для запуска виртуальной машины в файл start.sh для удобства. Не забудьте изменить значение параметра -m.
echo "qemu-system-x86_64 -machine q35 -smp cpus=$(nproc) -cpu qemu64 -drive if=pflash,format=raw,read-only=on,file=$PREFIX/share/qemu/edk2-x86_64-code.fd -netdev user,id=n1,dns=8.8.8.8,hostfwd=tcp::2222-:22 -device virtio-net,netdev=n1 -nographic -m 6000 alpine.qcow2" > start.sh && chmod +x start.sh
  1. Запустите виртуальную машину с Alpine, используя скрипт. Учтите, что запуск виртуальной машины занимает несколько минут. После запуска вы увидите приглашение войти в систему.
./start.sh
  1. Установите пакеты, необходимые для работы скрипта-установщика.
apk add bash sudo nano coreutils util-linux tar git
  1. Создайте нового пользователя. В этой статье пользователь будет иметь имя user.
setup-user
  1. Добавьте пользователя в группу wheel.
adduser user wheel
  1. Настройте работу пользователя с sudo. Эта команда также выключит запрос пароля при активации sudo. Это очень поможет, так как установка SDK занимает несколько часов и полностью останавливается, если вовремя не ввести пароль. После выключения запроса пароля командой ниже, установку можно будет оставить без наблюдения.
echo '%wheel ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/wheel
  1. Выйдите из сессии командой exit а потом войдите, как новый пользователь.
  2. Скачайте архив с установочным скриптом Aurora PSDK.
wget https://sdk-repo.omprussia.ru/sdk/documents/Platform_SDK/CI/psdk_install-master.zip
  1. Распакуйте архив и перейдите в новую папку
unzip psdk_install-master.zip && cd psdk_install-master
  1. Далее очень важно правильно составить команду для установки.
  • В первую очередь стоит выбрать релиз SDK. Список доступных релизов можно посмотреть по ссылке.
  • Для примера возьмем релиз 5.1.5.105. Установщик для этой версии находится по пути /installers/5.1.5/5.1.5.105-release/AuroraPSDK. Некоторые релизы могут иметь другую структуру папок. Таким образом параметр --input-url для скрипта-установщика для установки конкретно релиза 5.1.5.105 будет выглядеть так
--input-url /installers/5.1.5/5.1.5.105-release/AuroraPSDK
  • Далее стоит определить значение параметра --toolchain-suffix. Перейдя по ссылке input-url посмотрите на имена расположенных там фалов. Буквы после Aurora_OS-<release>- и до -Aurora_Platform_SDK_Chroot-x86_64.tar.xz - и есть суффикс имени тулчейна. Например, для 5.1.5.105 использован суффикс MB2.
  • Параметр --install-dir определяет директорию установки SDK. Укажите абсолютный путь до папки в директории home вашего пользователя. Для примера укажем ~/AuroraPSDK.
  • Если во время установки возникают ошибки проверки контрольных сумм, добавьте параметр --ignore-md5-checks.
  • Наконец, выберите архитектуры, под которые собираетесь компилировать приложения. Для быстроты установки укажем всего одну архитектуру aarch64.
  • Вы можете подробнее почитать об этих и других опциях, запустив скрипт без аргументов.

Для правильной работы скрипта, его следует запустить внутри bash.

bash ./install_aurora_psdk.sh --input-url https://sdk-repo.omprussia.ru/sdk/installers/5.1.5/5.1.5.105-release/AuroraPSDK --toolchain-suffix MB2 --install-dir ~/AuroraPSDK --ignore-md5-checks --allowed-targets aarch64

Установка SDK в виртуальной машине занимает несколько часов. Во время установки следует поддерживать стабильное интернет-соединение, рекомендуется держать приложение Termux открытым (периодически можно сворачивать, но не желательно), использовать VPN нельзя. Во время установки (если настроено sudo без пароля) никаких действий не требуется.

Проверка работоспособности

  1. Клонируйте репозиторий с шаблоном приложения для ОС Аврора.
git clone https://gitlab.com/omprussia/demos/ApplicationTemplate
  1. Перейдите в папку с проектом, а затем запустите сборку следующей командой.
~/AuroraPSDK/sdks/aurora_psdk/sdk-chroot mb2 -t AuroraOS-5.1.5.105-MB2-aarch64 -x build

Ознакомиться с основами работы с Platform SDK ОС Аврора можно на официальном сайте: https://developer.auroraos.ru/doc/sdk/psdk

About

Установите SDK Аврора ОС на ваше Android устройство

Topics

Resources

Stars

Watchers

Forks

Contributors