Что такое termux android для чего

Программирование на телефоне используя эмулятор терминала Termux

Приветствую читателей! В этой статье я расскажу о том, как можно, имея android телефон, писать программы. Говорю сразу — root права не нужны.

Что нам понадобится?

Первое, что нам понадобится — андроид телефон со установленным на него приложением Termux (есть в Google Play). Для полноценной работы с терминалом, нам нужно достаточно памяти. У меня с десятками установленных пакетов приложение занимает 1.5 ГБ памяти.
Так же, для комфортного кодинга желательно, чтобы телефон был с поддержкой OTG, и у вас была клавиатура с подключением по USB, чтобы писать код на клавиатуре (куда удобнее). Если уж нет этого, то качаем клавиатуру Hacker’s Keyboard. В ней есть клавиша Ctrl, что нам важно.

Почему именно Termux?

Termux имеет в арсенале достаточно пакетов для работы с языками программирования: C/C++, Python, Golang, PHP, Lua.
Так же присутствуют базы данных, я знаю только о mariadb и postgresql.

Начало


При каждом запуске приложения мы видим приветствие, в котором указаны основные команды для работы с терминалом:

  • pkg search — команда для поиска пакетов. Пример: pkg search vim
  • pkg install — команда для установки пакета. Пример: pkg install vim

Для кодинга нам понадобится текстовой редактор. Здесь есть разные варианты, я выбирал Vim и вкратце расскажу, как с ним работать.
Установка vim:

Для примера работы с vim напишем «Hello World» на С.

После этого запустится Vim. Чтобы начать писать код, нужно нажать на клавишу «i».
Пишем код:

После этого нажимаем на клавишу «Esc», ставим двоеточие и пишем wq («:wq»). Это сохранит наш файл и изменения в нём (w — write) и закроет его (q — quit).

Важно знать!

w — сохранить изменения в файле
wa — сохранить изменения во всех файлах
q — закрыть файл
qa — закрыть все файлы
wq — сохранить изменения и закрыть файл

Теперь нам нужно скомпилировать этот код. Для начала установим компилятор:

Далее пишем следуюющее:

main.c — файл с нашим кодом
program — наша програмка.

Теперь можем запустить нашу програмку и посмотреть, работает ли она:

Источник

Что такое termux android для чего

Краткое описание:
Termux сочетает в себе мощные эмуляцию терминала с обширной коллекцией пакетов Linux.

Termux combines powerful terminal emulation with an extensive Linux package collection.

• Enjoy the bash and zsh shells.
• Edit files with nano and vim.
• Access servers over ssh.
• Compile code with gcc and clang.
• Use the python console as a pocket calculator.
• Check out projects with git and subversion.
• Run text-based games with frotz.

At first start a small base system is downloaded — desired packages can then be installed using the apt package manager known from the Debian and Ubuntu Linux distributions. Access the built-in help by long-pressing anywhere on the terminal and selecting the Help menu option to learn more.

Читайте также:  Что значит сбросить до заводских настроек андроид

Want to ask questions, report bugs or give feedback?
See https://termux.com/community

Версия: 0.102 Termux (digmavip)
Версия: 0.101 от 29/09/2020 (iMiKED)
Версия: 0.99 от 15/09/2020 (iMiKED)
Версия: 0.98 от 09/08/2020 (RiddickABSent)
Версия: 0.95 от 13/06/2020 (iMiKED)
Версия: 0.94 от 25/03/2020 (iMiKED)
Версия: 0.92 от 09/02/2020 (iMiKED)
Версия: 0.88 от 18/01/2020 (iMiKED)
Версия: 0.84 (7.0+)(f-droid) Сообщение №3704, автор blackeangel
Версия: 0.75 Оригинал (Ultra119)
Версия: 0.75 GP (Ultra119)
Версия: 0.73 04.08.19 GP (hackdog)
Версия: 0.72 Termux (Displax)
Версия: 0.71 Termux (Displax)
версия: 0.68 Termux (Пост Farthah #84737189)
версия: 0.66 Сообщение №1619, автор алекс12
версия: 0.65 Сообщение №785, автор алекс12
версия: 0.64 Сообщение №639, автор алекс12
версия: 0.63 Сообщение №635, автор алекс12
версия: 0.61 Сообщение №623, автор Evbuley
версия: 0.60 Termux (Пост алекс12 #69631056)
Версия: 0.59 Termux (Пост алекс12 #67845982)
Версия: 0.56 Termux (Пост алекс12 #67233087)
Версия: 0.54 Termux (Пост алекс12 #66459493)
Версия: 0.53 Termux (Пост алекс12 #62674540)
Версия: 0.52 Termux (Пост алекс12 #62332662)
версия: 0.51 Termux (Пост алекс12 #62106399)
версия: 0.48 Termux (Пост алекс12 #58901446)
версия: 0.47 Termux (Пост Ramzes26 #58821225)
версия: 0.46 Termux (Пост алекс12 #56940751)
версия: 0.42 Termux (Пост ilyaor #53212592)
версия: 0.34 com.termux_0.34.apk ( 149.44 КБ )

Сообщение отредактировал iMiKED — 20.07.21, 20:43

Примечательно, что хотя некоторые плагины платные, на странице автора есть ссылки на исходный код на github-e https://github.com/termux, т.е. можно самому собрать как само приложение так и все плагины; термукс из маркета надо будет удалить и собрать и установить руками потому что подписи должны совпадать.

Если кому-то лень самому собирать, в прицепе моя сборка с плагинами. Отдельно плагины из этой сборки не будут работать с версией из маркета, так как я все подписал своим серификатом, который ессно не совпадает с сертификатом автора.

Если кто-то хочет собрать из исходников, то помимо android sdk также потребуется ndk.

Хотя исходники платных плагинов открыты, я один плагин купил по-любому, потому что очень уж хочется поддержать разработчика за такой мега-подарок.

*ВАЖНО*: Только для андроид версии 5.х и выше!

Сообщение отредактировал ccpizz — 13.05.16, 08:26

Сообщение отредактировал LVware — 29.07.16, 18:50

Termux v0.46:
• Work better with the stock CyanogenMod and AOSP keyboards.
• Remove the shaking of the terminal on a bell character introduced in v0.44.
• Restore the ability to press Enter on the on-screen Android TV keyboard.
termux-app_v0.46.apk ( 176.21 КБ )

Termux:API v0.12:
• For use with termux-api version 0.21 or later. Run apt update && apt upgrade to ensure that the latest packages are installed.
• Run any command with a -h flag to learn more.
• Support the new termux-notification-remove command to remove a notification.
• Add several options to termux-notification.
• Add new commands for wifi information: termux-wifi-connectioninfo and termux-wifi-scaninfo.
termux-api_v0.12.apk ( 68.38 КБ )

Termux:Styling v0.16:
• Add monochrome White on Black and Black on White color schemes.
termux-styling_v0.16.apk ( 1.72 МБ )

Termux:Widget v0.7:
• Update app icon.
termux-widget_v0.7.apk ( 54.1 КБ )

Termux:Task v0.1:
• Initial release for testing and feedback.
termux-task_v0.1.apk ( 942.95 КБ )

Termux:Boot v0.1:
• Initial release for testing and feedback.
termux-boot_v0.1.apk ( 26.4 КБ )

Termux:Float v0.7 (Original)

Сообщение отредактировал rezvorck — 20.01.17, 18:07

Источник

Termux Wiki (на русском)

Contents

The Termux Wiki

Информация по использованию Termux и его пакетов.

Читайте также:  What android sdk contains

Введение

Termux — приложение реализующее Linux-подобную среду взаимодействие с которой происходит посредством консоли без необходимости иметь root-права на устройстве.

Минимальный набор программ устанавливается автоматически, дополнительные пакеты можно установить при помощи пакетного менеджера.

С чего начать Информация для новичков. Пользовательский интерфейс Как пользоваться приложением. Настройки Как настроить приложение. Программы Работа с программной средой (пакетами). Оборудование Использование аппаратной мыши, клавиатуры и USB-OTG.

Установка

  • Android 7.0 — 12.0 (известные проблемы)
  • CPU: AArch64, ARM, i686, x86_64.
  • Минимум 200 MB свободного места на внутренней памяти.

Обратите внимание что Termux не поддерживает устройства на ARM без NEON SIMD, например устройства на процессорах Nvidia Tegra 2.

Официально доступен для установки с данных источников:

Дополнения

Функциональность Termux может быть расширена при помощи установки следующих дополнений:

Termux:API Использование возможностей предоставляемых ОС Android. Termux:Boot Автоматический запуск скриптов после загрузки ОС. Termux:Float Запуск приложения во всплывающем окне. Termux:Styling Изменение шрифтов или цветовой схемы терминала. Termux:Tasker Обеспечивает возможность выполнения команд Termux приложением Tasker. Termux:Widget Позволяет запускать пользовательские скрипты при помощи виджетов.

Сообщество

Не нашли решение в FAQ ?

Просто хотите познакомиться с нами ?

Хотите помочь разработчикам и пользователям Termux, внося свой вклад в проект ?

Посмотрите страницы сообщества. Будь то для удовольствия или серьезной работы, пожалуйста, присоединяйтесь к нам.

Источник

С чего начать

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

Contents

Как это работает?

Фактически это приложение которое просто запускает бинарник утилиты командной строки при помощи системного вызова execve(2) и перенаправляет стандартные потоки ввода, вывода и ошибок на текстовый экран. Termux не является ни виртуальной машиной, ни иным видом эмулированной/симулированной системы. Программы выполняются прямо на устройстве, что обеспечивает максимально возможную производительность.

Так как набор стандартных утилит командной строки Android весьма ограничен, мы портировали более 1000 пакетов програмного обеспечения которые вы можете встретить в системах GNU/Linux. Все пакеты скомпилированы при помощи Android NDK и имеют лишь патчи совместимости для корректной работы на Android OS.

Так как операционная система не имеет директории определяемые стандартом FHS или же не предоставляет к ним доступ на запись, Termux не может использовать такие директории как /bin, /etc, /usr, /var. Вместо этого, все файлы находятся в приватной директории приложения, которая находится здесь:

Мы называем эту директорию «префикс» и обычно ссылаемся на нее как «$PREFIX» что также является переменной окружения командной оболочки. Префикс всегда постоянен и не может быть перенесен на карту SD, как минимум при обычных условиях. И на это есть причины:

  • Многие бинарники используют статические пути для обращения к файлам в /etc, /bin, /var и тд.
  • Заголовки исполняемых файлов формата ELF используют DT_RUNPATH установленый как $PREFIX/lib. Используется для динамической компоновки зависимостей.
  • Файловая система должна поддерживать параметры доступа (chmod) и специальные файлы, такие как сокеты и символьные ссылки. То есть ФС должна быть EXT4 или F2FS например, а не какой-нибудь там FAT32.

Также есть отдельная директория для пользовательских данных, то есть домашняя директория или $HOME. Она находится здесь:

Читайте также:  Андроид проблемы с вайфаем

Конечно, отличий среды Termux от GNU/Linux немного больше, чем перечислено здесь. Смотрите Differences from Linux для более подробной информации.

Является ли Termux таким же как дистрибутив Linux?

Termux предоставляет пакетную экосистему, как в дистрибутивах Linux. Однако Termux таковым не является и более того, он просто обычное приложение Android OS.

Это приводит к нескольким отличиям:

1. Как сказано выше, все устанавливается в $PREFIX, а не в стандартные директории вроде /bin или /etc.

2. Среда является однопользовательской. Будьте осторожны если работаете с правами root. Можно очень легко нарушить параметры доступа к файлам и контексты SELinux — это приведет к неприятным последствиям, разгребать которые придется вам самим.

3. Динамический компоновщик и libc предоставляются Android OS.

Все эти три отличия могут вызвать проблемы, если вы попытаетесь запустить в Termux программу скомпилированную под GNU/Linux систему.

Что я могу сделать при помощи Termux?

Типичные варианты использования:

  • Обработка данных при помощи Python.
  • Среда разработки.
  • Загрузка и управление файлами.
  • Изучение командной строки.
  • SSH клиент.
  • Синхронизация и резервное копирование данных.

Естественно, это далеко не все варианты использования приложения. У нас более 1000 пакетов в репозиториях. Если этого недостаточно, вы можете сами скомпилировать необходимое ПО прямо на устройстве. У нас есть пакеты различных компиляторов и интерпретаторов языков программирования, например C, C++, Go, Rust, Python, Ruby, Node.js.

Ну и для особо одаренных: Termux не является программой для рутования, хакинга и тд. Конечно, это все возможно при помощи Termux, если у вас есть необходимые навыки, для приобретения которых вам придется прилично потрудиться.

Нужны ли права root?

Для обычного использования права суперпользователя вам не понадобятся. Termux нацелен в первую очередь на пользователей устройств без root.

Права суперпользователя необходимы лишь в том случае, если вы собрались выполнять действия, перечисленные ниже:

  • Модификация системных файлов.
  • Изменение параметров ОС или ядра.
  • Установка приложений при помощи «pm» или «cmd».
  • Доступ на чтение/запись ко всем файловым системам устройства.
  • Полный доступ к аппаратному обеспечению, портам и тд.
  • Создание полноценного окружения chroot, а также контейнеризация.
  • Полноценный контроль над устройством.

В подавляющем большинстве случаев, вам root не нужен!

Есть ли какие-нибудь туториалы?

This section or list is incomplete. Please help to improve it.

Мы не можем поддерживать в актуальном состоянии подробную информацию о таких общих вещах как команды, shell-скриптинг и тд, по этому данная информация не размещается на Termux Wiki. Здесь предоставлены ссылки на сторонние ресурсы.

Команды

Изучите основные команды используемые в консоли Linux:

Shell скриптинг

Shell скриптинг является ключевым навыком для работы с терминалом. Без этого вы не сможете делать что-либо серьезное в Termux, да и в GNU/Linux системах вообще.

Эти ресурсы могут быть полезны также и для продвинутых пользователей командной оболочки:

  • https://wiki-dev.bash-hackers.org/ — справочник с примерами для встроеных команд интерпретатора Bash.

Могу ли я сотрудничать?

Вот вам предложения, если решите внести свой вклад в развитие проекта:

  • Написание страниц Termux Wiki: исправляйте ошибки, дополняйте и поддерживайте в актуальном состоянии уже имеющуюся информацию.
  • Информируйте об ошибках. Пожалуйста, шлите отчеты об ошибках которые относятся только к приложению или пакетам. Нас не волнуют баги в скриптах, которые вы нашли где-то в Интернете.
  • Шлите предложения о пакетах, которые вы бы хотели видеть в официальном репозитории.
  • Шлите патчи с исправлениями и улучшениями.

Источник

Оцените статью