Vectras VM is a QEMU-based virtual machine app for Android. Create and manage virtual machines, import prepared ROM packages, and experiment with guest operating systems from your phone or tablet.
This is the original Vectras VM repository, home of the open-source GitHub Community Version. The Play Store edition is a separate product with a different runtime and a simplified experience.
.cvbi ROM packages, or use your own disk images and installation media.The QEMU version depends on the package you install; it is not fixed by the APK version.
Works fine on devices manufactured in 2021 or later and devices equipped with Snapdragon 855 CPU or better. You can try running Vectras VM on unsupported devices, but we cannot guarantee stability or support. Here are the devices tested:
| Brands | Compatibility status |
|---|---|
| Samsung | ⭐⭐⭐⭐⭐ |
| Google Pixel | ⭐⭐⭐⭐⭐ |
| Xiaomi | ⭐⭐⭐⭐⭐ |
| Redmi | ⭐⭐⭐⭐⭐ |
| Poco | ⭐⭐⭐⭐⭐ |
| ZTE | ⭐⭐⭐⭐ |
| RedMagic | ⭐⭐⭐⭐ |
| Oppo | ⭐⭐⭐ |
| Realme | ⭐⭐⭐ |
| OnePlus | ⭐⭐ |
| vivo | ⭐⭐ |
| IQOO | ⭐⭐ |
| Huawei | ⭐ |
| Honor | ⭐ |
[!TIP] If the OS you are trying to emulate crashes, try using an older version.
Download a Community Version APK from the GitHub Releases page.
universal if you are unsure.Release filenames follow this pattern: vectras-vm-github-<architecture>-<versionCode>.apk.
| APK architecture | Package |
|---|---|
| Universal | vectras-vm-github-universal-<versionCode>.apk |
| ARM64 | vectras-vm-github-arm64-v8a-<versionCode>.apk |
| ARM 32-bit | vectras-vm-github-armeabi-v7a-<versionCode>.apk |
| x86 | vectras-vm-github-x86-<versionCode>.apk |
| x86-64 | vectras-vm-github-x86_64-<versionCode>.apk |
versionCode is the numeric build identifier, not the dotted app version. The APK architecture describes your Android device, not the architecture of the guest operating system you want to run.
An alternative download listing is available on OpenAPK. Use GitHub Releases as the reference for this repository's builds and release notes.
The Community Version uses the bootstrap and Alpine Linux environment bundled in the APK. The app extracts this environment during setup, then installs QEMU using the path for your device architecture.
Our official 3dfx-patched QEMU builds are currently available only for ARM64 (arm64-v8a) and x86_64. ARMv7 (armeabi-v7a) and 32-bit x86 use standard official QEMU packages from Alpine, without the 3dfx modification, when their archive links in setupfiles.json are empty.
When prompted, choose one of the two QEMU setup options:
.tar.gz archive already saved on your device, for example in Downloads. Use a package intended for your device architecture and the bundled Alpine environment.Allow extraction and setup to finish before starting a virtual machine. Keep enough free storage for the extracted environment, the QEMU package, and your guest disks.
The ROM Store provides a catalog of prepared ROM packages. You can also import a .cvbi file that you have downloaded or exported yourself.
For a custom virtual machine, supply your own disk image or installation media and configure the guest architecture, memory, drives, and boot settings. The Software Store provides additional downloadable media and tools; attach installation ISOs as CD/DVD media in the virtual machine configuration when appropriate.
Back up important guest disks and exported packages before changing their configuration or replacing files. Only download and use operating systems and software that you are authorized to use; a store listing does not grant a license to third-party content.
The app's update, ROM Store, Software Store, and QEMU setup metadata are maintained in vectras-vm-bucket/web/data.
| Metadata file | Purpose |
|---|---|
setupfiles.json |
QEMU package download configuration |
vroms-store.json |
ROM Store catalog |
software-store.json |
Software Store catalog |
UpdateConfig.json |
App update metadata, when published |
The app reads these JSON files through GitHub's raw-content URLs. Downloadable archives and disk images are separate assets linked from the JSON, including files hosted in GitHub Releases. Updating a catalog does not require embedding its download files in this source repository.
The Play Store edition is a separate, paid, simplified ui version of Vectras VM. It runs QEMU 10 natively on Android with Spice Client instead of legacy vnc, rather than using the PROOT-based runtime of the GitHub Community Version.
This repository and its installation instructions cover the Community Version. The two editions have different runtimes and setup flows; their features and requirements should not be assumed to be identical.
:app:assembleRelease from the Gradle tool window's Execute Gradle Task action. For a debug build, run :app:assembleDebug instead.Release builds produce a universal APK and the four architecture-specific APKs listed above in app/build/outputs/apk/release/. The universal debug APK is named app-debug.apk and is written to app/build/outputs/apk/debug/.
With Java 21 configured in your environment, use the wrapper from the repository root:
# Windows
.\gradlew.bat :app:assembleRelease
# Linux / macOS
./gradlew :app:assembleRelease
When distributing your own builds, configure your own release signing key and keep its credentials private. Preserve the project's license notices and the licenses of bundled components.
Bug reports are most useful when they include the app version, device model, Android version, APK architecture, installed QEMU version, relevant VM settings, and steps to reproduce the issue. Remove personal information from logs before sharing them.
Contributions to the app belong in this repository. Catalog and downloadable-content configuration changes belong in the bucket repository.
Vectras VM is distributed under the GNU General Public License v2. Third-party components and guest software remain subject to their own licenses.
Read the Terms of Service and Privacy Policy. Both documents are also accessible from the app's About screen.
Special thanks to AnbBui2004 for his code contributions and for the time he spent maintaining the GitHub Community Version of Vectras VM. His work and maintenance efforts are appreciated as part of this project's history.
Thanks also to the projects and contributors whose work makes Vectras VM possible:
| 日期 | 榜单 | 排名 | 周期新增 | 总 STAR |
|---|