24 de fevereiro de 2019

Usando terminal e programando em Python no Android


O terminal é uma das ferramentas mais poderosas que temos ao manipular informações no computador, desde o desenvolvimento de software até o hacking, passando por manipulação de texto, administração de sistemas e também para algumas brincadeiras. O acesso ao terminal é simples quando você está dentro de um Linux no computador (e até no Windows agora), porém nem sempre temos um notebook por perto, que por mais que seja portátil, não é simples de carregar por ai. Então, nas pesquisas pela internet, buscando uma alternativa para o tablet e smartphone, eu encontrei o Termux.

O Termux emula um terminal dentro do seu Android, porém ao contrário de alguns aplicativo que apenas emulam alguns comandos, ele tem um sistema completo de terminal, ainda permitindo instalar pacotes de maneira similar ao Debian:

Instalando um pacote do sistema com o comando apk install

Aproveitando todo esse poder, também instalei o Python 3.7.2 e diversas dependências de bibliotecas de sistema (openssl-dev, libffi-dev e etc) junto com o Git e clonei um projeto do Github. A aplicação funcionou normalmente, sendo um bot para Telegram que faz scrap da API do Reddit, usando as libs telegram-bot, requests e click, além de outras dependências como pytest, pytest-cov e muito mais. Você pode conferir o projeto aqui.

Rodando os testes junto com a cobertura

Uma das limitações que percebi no Termux, que na verdade é uma limitação do Android, é que como ele não permite a criação de links simbólicos no sistema e a definição de executáveis (o que acredito que ser fácil de superar quando o aparelho está "rooteado"), você não pode criar virtualenv's dentro do sistema, o que pode ser facilmente ser superado pelo fato de você criar suas virtualenv's na home do Termux.

Um comentário: