Integrate Debian with Android
Description of the project: Lil' Debi is an easy Debian chroot running on Android designed to do trusted installs. It builds up a whole Debian chroot on your phone entirely using cdebootstrap. The user chooses the release, mirror, and size of the disk image, and clicks install. It validates every package using the official Debian repository keys, which are included in the app. It will also check and update a SHA1 checksum to make sure your debian install has not be tampered with. Then it has a simple chroot manager that fscks your disk, mounts/unmounts things, starts/stops sshd if you have it installed, etc. Lil' Debi works with as few modifications to the Android system as possible. Currently, it only adds a /bin symlink, and a /debian mount directory. It does not touch /system at all.
Important feature required for the project is to add "installation profiles". On the install screen, there should be a menu of profiles to choose from, example "basic webserver", "wireshark", "minimal SSH", etc. The user would just choose one of those profiles, and then Lil' Debi would make that setup. In addition to above feature we have bunch of feature which are required to be implemented like adding support for arm64 and x86. Check wiki page and issues list to find more about missing features.
Confirmed Mentor: Kumar Sukhani
How to contact the mentor: mailto:email@example.com and IRC: sdkie on oftc and freenode
Confirmed co-mentors: Hans-Christoph Steiner
How to contact the mentor: mailto:firstname.lastname@example.org and IRC: _hc on oftc and freenode
Deliverables of the project:
Desirable skills: chroot, the Debian boot process, Android programming, Java, sh scripting.
What the student will learn: The student will learn about running native processes in Android apps, how to build up Debian installs from scratch using cdebootstrap, the details of the Debian boot process and how to customize it. Working on this project will be useful for anyone interested in learning more details on how the core of Debian works, how to integrate native/C code into Android apps, and managing chroots and other things similar to Virtual Machines.