Files
notes/termux_android.md

13 KiB
Raw Blame History

Termux Android

Termux - эмулятор терминала и среда Linux без необходимости получения root на Android устройстве.

WIKI Termux (открывается через VPN) - https://wiki.termux.com/wiki/Main_Page

Termux:X11 - для отображение графического интерфейса, если будет установлена графическа среда (xfce4, lxqt, kde и т.д.)

Версия из Google Play имеет ряд ограничений, поэтому приложение необходимо устанавливать из F-Droid (рекомендуется) или GitHub.

Предварительная настройка

После установки запустить Termux и дождитесь завершения начальной инициализации

Для планшета Huawei, Termux в горизонтальной ориентации планшета отображался с широкими боковыми рамками, это решилось в настройках планшета: настройки приложений - App Multiplier - найти в списке Termux и отключить.

Эта настройка позволяет в горизонтальном положении иметь 2 окна приложения. В данном случае это только мешает

Для увеличения размера шрифта в Termux достаточно изменить масштаб двумя пальцами (раздвинуть). Размер сохранится.

Обновление пакетов и подключение репозиториев

# Обновление списка пакетов
pkg update && pkg upgrade

# Установка необходимых репозиториев (несмотря на архив на GitHub, они нужны)
pkg install root-repo x11-repo

# Ещё раз обновляем после подключения репозиториев
pkg update && pkg upgrade

Установка базового набора пакетов

pkg install -y git nano vim curl wget htop tree openssh termux-api termux-tools android-tools

Настройка ZSH с Oh-My-Zsh

Установка ZSH

pkg install zsh -y

Установка Oh-My-Zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Когда появится вопрос о смене оболочки по умолчанию, указать Y.

Установка плагинов

# zsh-autosuggestions (автодополнение из истории)
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# zsh-syntax-highlighting (подсветка команд)
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Настройка .zshrc

nano ~/.zshrc

Найти строку plugins=(git) и заменить на:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

Важно: zsh-syntax-highlighting должен быть последним в списке!

Применение настроек

source ~/.zshrc

Внешний вид - плагин PowerLevel10K

https://git.da2001.ru/da2001/dots#%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B8%D0%B9-%D0%B2%D0%B8%D0%B4-%D0%BF%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD-powerlevel10k

Настройка энергопотребления (Android)

Отключение оптимизации батареи

Настройки → Приложения → Termux → Энергопотребление

Выберите Без ограничений

Повторите то же самое для приложения Termux:X11

Разрешение фоновой активности

Настройки → Приложения → Termux → Разрешения

Добавьте разрешение Фоновая активность

Увеличение лимита процессов через ADB (Phantom Process Killer)

Подготовка

На планшете:

Включите Режим разработчика (Настройки → Об устройстве → нажмите 7 раз на "Номер сборки")

Включите Отладку по USB (Настройки → Для разработчиков)

На компьютере:

Установите ADB (android-tools)

Подключите планшет к компьютеру через USB. На планшете выбрать режим - Передача данных.

Выполнение ADB-команд

Для повышения эффективности энергосбережения Android следит за количеством запущенных процессов и периодически завершает лишние по его мнению. Из-за этого работа Termux может быть не стабильной, т.к. порождает много дочерних процессов, которые Android будет настройчиво завершать.

Такое агресивное поведение Android можно изменить, через adb попробовать увеличить лимит запущенных процессов до максимального значения.

Откройте терминал на компьютере и выполните:

adb devices

Если устройство видно как <serial_number> device — всё готово для команд ADB.

Если unauthorized — разблокируйте экран, подтвердите запрос "Разрешить отладку по USB" (поставьте галочку "Всегда разрешать")

после активации отладки и подключения, можно отправлять команды

adb shell "/system/bin/device_config set_sync_disabled_for_tests persistent"
adb shell "/system/bin/device_config put activity_manager max_phantom_processes 2147483647"
adb shell settings put global settings_enable_monitor_phantom_procs false
adb reboot

Планшет перезагрузится. Изменения сохранятся навсегда.

Установка графического окружения в Termux - XFCE4

!! ПОКА не удалось заставить работать звку !!

Для работы графических приложений необходимо настроить

# Установка XFCE4
pkg install xfce4 xfce4-goodies

# Установка Termux:X11 (графический сервер)
pkg install termux-x11-nightly

# Установка PulseAudio (для звука)
pkg install pulseaudio

Пакет xfce4-goodies включает полезные плагины и приложения для рабочего стола

Запуск XFCE4 через Termux:X11

Способ А: Прямая команда (простой)

termux-x11 :1 -xstartup "dbus-launch --exit-with-session xfce4-session"

Способ Б: С флагом для Kirin (рекомендуется для вашего планшета)

termux-x11 :1 -legacy-drawing -xstartup "dbus-launch --exit-with-session xfce4-session"

После выполнения команды:

Откройте приложение Termux:X11 на планшете

Вы должны увидеть рабочий стол XFCE

Создание скрипта для быстрого запуска

Чтобы каждый раз не вводить длинную команду, создайте скрипт в Termux:

cat $PREFIX/bin/startx
#!/data/data/com.termux/files/usr/bin/bash

# 1. Жёстко останавливаем старые процессы сервера
pkill -9 termux-x11 2>/dev/null
rm -f /data/data/com.termux/files/usr/tmp/.X11-unix/X1 2>/dev/null

# 2. Небольшая пауза для освобождения ресурсов
sleep 1

# 3. Устанавливаем необходимую переменную окружения
export XDG_RUNTIME_DIR=${TMPDIR}
#export PULSE_SERVER=127.0.0.1

# 4. Запускаем сам X-сервер Termux с флагом для Kirin
termux-x11 :1 -legacy-drawing > /dev/null 2>&1 &

# 5. Ждём, пока создастся сокет (индикатор, что сервер готов)
timeout=5
while [ ! -e /data/data/com.termux/files/usr/tmp/.X11-unix/X1 ] && [ $timeout -gt 0 ]; do
    sleep 1
    ((timeout--))
done

# 6. Открываем графическое окно Termux:X11 на экране планшета
am start --user 0 -n com.termux.x11/.MainActivity > /dev/null 2>&1 &

# 7. Запускаем саму среду рабочего стола XFCE
env DISPLAY=:1 dbus-launch --exit-with-session xfce4-session > /dev/null 2>&1 &

echo "✅ Готово! Терминал и X-сервер запущены, окно Termux:X11 открыто."

Теперь запуск одной командой:

startx

TUR (Termux User Repository)

TUR — это пользовательский репозиторий Termux, созданный по аналогии с AUR в Arch Linux. Он существует, потому что официальный репозиторий Termux не может включить все существующие пакеты — некоторые из них слишком нишевые, сложные в сборке или имеют специфические лицензионные ограничения

https://github.com/termux-user-repository/tur

В чём разница между официальным репозиторием и TUR?

Характеристика Официальный репозиторий TUR
Поддержка Разработчики Termux Сообщество
Пакеты Только проверенные и одобренные Практически любые, включая Firefox, Chromium, VSCode
Установка pkg install <имя> pkg install tur-repo → затем pkg install <имя>
Надёжность Высокая (строгий контроль качества) Средняя (пакеты собираются сообществом)

В TUR есть несколько компонентов-категорий:

  • tur — основной компонент с большинством пакетов
  • tur-continuous — пакеты, которые долго компилируются (например, браузеры на Chromium)
  • tur-on-device — пакеты, требующие сборки прямо на устройстве
  • tur-hacking — инструменты для безопасности

Популярные пакеты есть в TUR?

Пакет Команда установки Что это
Firefox pkg install firefox Браузер
Chromium pkg install chromium Браузер от Google
VS Code (code-oss) pkg install code-oss Редактор кода без телеметрии Microsoft
VLC pkg install vlc Медиаплеер

Полный список пакетов TUR можно посмотреть на официальной странице репозитория — https://repology.org/repository/tur

Установка Firefox

# Шаг 1: Подключение TUR репозитория
pkg install tur-repo

# Шаг 2: Обновление списка пакетов (чтобы Termux "увидел" новые пакеты)
pkg update

# Шаг 3: Установка Firefox
pkg install firefox

После этого Firefox будет доступен для запуска из XFCE4