A free and open-source application that enables you to run Alpine Linux distribution in a virtual machine on your Android device. Thousands of packages available for installation from online repositories make vmConsole a powerful tool for software developers, testers, system administrators and just Linux fans. The core of application is QEMU x86_64 emulator, so you do not need superuser permissions, KVM support or other special features of device. Input and output are being performed through Xterm-compatible terminal screen.
Default installation of the Alpine Linux is diskless. The whole operating system is placed on tmpfs, so do not worry if you break something. Simply reboot and everything will get recovered. However there are drawbacks of such installation: tmpfs contents are discarded on shut down and ephemeral disk size is very limited. The solution would be just to install the OS on persistent disk using official Alpine Linux instructions.
Few ideas for what you can use vmConsole:
* Explore the world of Linux.
* Running code in Bash, C, C++, Python and other languages.
* Editing your code on the go using VIM, Nano or other command-line editors.
* Running your website demo on a local web server.
* Running Docker containers.
* Connecting to remote systems over SSH.
This application requires certain level of Linux administration skills in order to be useful. It is expected that user understands such concepts as virtual machine, serial console, terminal and is able to use utilities like Bash, Coreutils, etc.
vmConsole environment is sandboxed and does not provide a direct access to the host. Everything that is happening within the VM does not affect your device (with exception of configured host storage mount point). vmConsole cannot be used for rooting device!
This is not a terminal emulator for Android OS. If you are looking for such, please check applications like Termux or ConnectBot.
Implementation notes:
* Login MOTD shows application usage instructions.
* Long tap anywhere on screen to open context menu or copy/paste text.
* Only one terminal screen - since only one QEMU instance is running. If you need more than one terminal tab, please use a multiplexer: tmux, screen or other favorite.
Uses permissions:
* Internet: for installing packages and using certain utilities.
* Storage access: in order to work with files on device. Otherwise user will not be able to move files out of virtual machine.
Feel free to ask any questions on GitHub community discussions: https://github.com/sylirre/vmConsole/discussions