Maciej Bak
Swiss Institute of Bioinformatics
Short tutorial on how to turn your Android smartphone ( 📱) into a platform for scientific computing ( 🤖)
No root required.
The droid will have:
- GNU bash
- GNU make
- C and C++ compilers: gcc and clang
- Python interpreter as well as some useful packages: numpy, scipy, pandas, scikit-learn
- R interpreter as well as some useful packages: statmod, numDeriv, maxLik, tidyverse
- Vim text editor
- Cookiecutter template engine
- Snakemake workflow management system
Fancy runing some pipelines from your mobile?
The following commands have been assembled together from various sources over the internet. Most notably I should mention the repositories of its-pointless and a blog post by Conor Anderson.
"Termux is an Android terminal emulator and Linux environment application that works directly with no rooting or setup required."
Start with installing the app on your smartphone, preferably from Google Play.
In order to exchange files between Termux and the external world you need to grant the app access to the storage of your device. Please open Termux and type:
termux-setup-storage
Upon execution Termux will create a symbolic link named storage under its $HOME
directory. You may read more about the directory tree under the following question.
It would be convenient to have a 'shared space' where one could place input and gather output from. Create a directory that will bridge the app and the users:
mkdir storage/shared/Termux
For this and the next step we assume that the smartphone has internet access.
Open Termux and install git
with the following command:
pkg install -y git
After a successful installation please clone the repository:
git clone https://github.com/AngryMaciek/angry-droid
In order to install software specified on top please type:
bash angry-droid/setup.sh
If no errors were raised during the installation you are good to go!
You may test the compilers, interpreters and packages by running:
bash angry-droid/test/test.sh
This repository has been tested on Samsung Galaxy A5 2017 (SM-A520F); Android 8.0.0; Packages CPU architecture: aarch64.
MIT License