[[!template id=project
title="Emulating android programs"
contact="""
[port-arm](mailto:port-arm@NetBSD.org)
"""
category="kernel"
difficulty="hard"
duration="3-6 months"
description="""
Android is an extremely popular platform, with good software support.
NetBSD has some `COMPAT_LINUX` support, and it might be possible to leverage this to run Android applications.
This is only done for GNU/Linux platforms right now (SUSE / Debian).
We need to start with Android x86, as `COMPAT_LINUX` for x86 already exists and is known to work.
As this is a difficult project, the project will need adjustments with time.
* Create an anbox chroot on linux/x86, experiment with running it with NetBSD.
* Experiment with running simplest Android program
* Implement missing syscall emulation as needed
* ??? (gap for difficulties we will find from this)
* Package anbox-chroot in pkgsrc
Resources:
* [Anbox](https://github.com/anbox/anbox) makes it possible to run things on regular linux, and is worth exploring.
* [This page details changes done on Android](https://elinux.org/Android_Kernel_Features#List_of_kernel_features_unique_to_Android)
* [The source code of Android is open.](https://github.com/aosp-mirror)
"""
]]
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb