Termux предоставляет полноценный Linux‑подобный терминал на Android‑устройствах. С его помощью можно собрать всё необходимое для разработки: от простых скриптов до сложных проектов с автодополнением, отладки и CI. В этой статье мы разберём, какие инструменты и плагины помогут превратить ваш смартфон в мобильную IDE.
Установка базовых пакетов
Для начала обновим репозитории и установим набор базовых утилит.
pkg update && pkg upgrade -y
pkg install -y git vim neovim python python-pip nodejs npm clang curl wget tar zip unzip openssh tmux
Эти пакеты покрывают большинство языков (Python, JavaScript, C/C++) и инструменты управления проектами.
Настройка редактора кода
Самый популярный выбор – neovim благодаря своей модульности и поддержке LSP. Если вам нужен более лёгкий вариант, можно использовать micro или полностью веб‑ориентированный code‑server.
# neovim
pkg install -y neovim
# micro (опционально)
pkg install -y micro
# code‑server (веб‑IDE)
curl -fsSL https://code-server.dev/install.sh | sh
После установки создайте базовый конфиг ~/.config/nvim/init.vim:
set number
syntax on
filetype plugin indent on
" Плагин‑менеджер – vim-plug
call plug#begin('~/.local/share/nvim/plugged')
Plug 'neovim/nvim-lspconfig'
Plug 'hrsh7th/nvim-cmp'
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
call plug#end()
Интеграция с LSP и автодополнением
Language Server Protocol (LSP) обеспечивает интеллектуальное автодополнение, переход к определению и диагностику кода. Установим серверы для популярных языков:
# Python
pip install pyright
# JavaScript/TypeScript
npm i -g typescript-language-server tsserver
# C/C++
pkg install -y clangd
В init.vim подключаем их через nvim-lspconfig:
lua << EOF
local nvim_lsp = require('lspconfig')
nvim_lsp.pyright.setup{}
nvim_lsp.tsserver.setup{}
nvim_lsp.clangd.setup{}
EOF
Для автодополнения используем nvim-cmp:
lua << EOF
local cmp = require'cmp'
cmp.setup({
snippet = {
expand = function(args)
vim.fn['vsnip#anonymous'](args.body)
end,
},
mapping = cmp.mapping.preset.insert({
[''] = cmp.mapping.scroll_docs(-4),
[''] = cmp.mapping.scroll_docs(4),
[''] = cmp.mapping.complete(),
[''] = cmp.mapping.confirm({ select = true }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'buffer' },
})
})
EOF
Управление версиями и зависимостями
Для контроля кода используем git. Добавьте алиасы в ~/.bashrc для ускорения работы:
alias gs='git status'
alias ga='git add .'
alias gc='git commit -m'
alias gp='git push'
Для Python‑проектов удобно использовать virtualenv или poetry:
pip install poetry
poetry new my_project
cd my_project
poetry install
Для JavaScript – npm или yarn (установим yarn):
npm i -g yarn
Для Rust – rustup (устанавливается через скрипт):
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
Контейнеризация и изоляция
Если требуется полноценный дистрибутив Linux, используем proot-distro для установки Ubuntu, Debian или Alpine внутри Termux.
pkg install -y proot-distro
proot-distro install ubuntu-20.04
proot-distro login ubuntu-20.04
Внутри контейнера можно установить любые серверные инструменты (Docker, PostgreSQL и т.д.) без влияния на основную систему.
Полезные плагины и утилиты
Для ускорения навигации и поиска кода рекомендуется:
fzf– интерактивный fuzzy‑finder.ripgrep(rg) – быстрый поиск по файлам.bat– улучшенныйcatс подсветкой синтаксиса.exa– современныйlsс цветом и git‑информацией.tmux– мультиплексор терминала для одновременной работы с несколькими сессиями.
pkg install -y fzf ripgrep bat exa tmux
Интегрируем fzf с vim:
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'junegunn/fzf.vim'
Автоматизация и настройка окружения
Для удобного взаимодействия с шеллом рекомендуется zsh + oh‑my‑zsh:
pkg install -y zsh
chsh -s zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
В ~/.zshrc добавьте полезные плагины:
plugins=(git python docker docker-compose)
source $ZSH/oh-my-zsh.sh
Не забудьте прописать алиасы для часто используемых команд (пример выше – в .bashrc, аналогично в .zshrc).
Тестирование и CI в Termux
Для локального тестирования используйте привычные инструменты:
- Python –
pytest. - JavaScript –
jestилиmocha. - C/C++ –
ctestиgoogletest.
# пример установки pytest
pip install pytest
# запуск тестов
pytest tests/
Для имитации CI‑pipeline можно установить act (GitHub Actions в локальном режиме):
curl -s https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash
act
Это позволяет проверять workflow‑ы непосредственно на мобильном устройстве.
Заключение
Termux – это мощная платформа, способная превратиться в полноценную мобильную среду разработки. С помощью правильно подобранных редакторов, LSP‑серверов, менеджеров пакетов и утилит вы получаете всё, что требуется для написания, тестирования и деплоя кода прямо на смартфоне.
Если вы хотите ускорить процесс внедрения подобных решений в свою команду, настроить CI/CD или получить индивидуальное сопровождение проекта, обратитесь в RybinskLab. Мы предоставляем услуги по настройке профессиональных dev‑окружений, автоматизации сборок и обучению команд работе с мобильными и облачными инструментами.