Student Application Template
Name: Kai-Chung Yan (YIN QI CONG on passport)
Contact/Email/IRC nick:
Email: seamlikok@gmail.com (I will be always available via email)
- IRC Nikename: seamlik
Background: I am currently a grade 1 undergraduate student in Providence University of Taiwan majoring computer science and I have been using Ubuntu since I was a child (about 13 years old). I use Android phone every day and I usually flash my phone and do other tricks on it. Therefore I have great experiences in either Android and Debian. I have experiences in C#, Java, Python and C/C++. I have been watching and loving open source community for many years and I have been looking forward to contributing to open source projects. Packaging Android development tools into Debian greatly benefits both Debian users and Android developers.
Project title: Android Tools in Debian
Project details: The goal of this project is to bring the core development tools of Android SDK into Debian's software repository and update the existing packages to the latest upstream version, allowing Android developers work more conveniently on Debian or Debian-derived Linux distros. Currently only a few tools of Android SDK are in Debian's software repository, developers have to manually download the other tools (e.g. repo, adb).
Synopsis: Finish packaging core tools of Android SDK and update the existing ones.
Benefits to Debian: Both Android and Debian are the most popular open source operating systems, integrating Android development toolchain into Debian allows Android developers work more conveniently on Linux, hence promoting the use of Debian and its derived Linux distros.
Deliverables: All up-to-date Android SDK tools can be installed via apt-get or aptitude by installing a single meta package called "androidsdk-devel" or "android-tools-all" or another appropriate name. After the season I will remain as one of the package maintainers.
Project schedule:
- I can begin work as soon as I am accepted by Debian mentors (Steiner and/or others). As I do not have an intensive course schedule and my MOOC course is about to finish, I can keep working in my spare time.
- Android SDK consists of 6 parts: "tools", "platform-tools", "build-tools" (according to the location of these tools), target platforms (including system images) of all API levels, documentations of all API levels, and the proprietary Google APIs. This project only focus on the first 3 parts as well as other essential tools such as Gradle, Groovy and repo. The following schedule is only an estimated one, it may change after further discussion.
Before Coding Phase: Read Packaging guide of Debian and Ubuntu, learn how to automatically reproduce packages, and contacting Debian Java Maintainers Team for naming issues of existing Android SDK packages.
Week 1 to 3: Package/update all tools in the "platform-tools" directory.
Week 4 to 6: Package/update all tools in the "build-tools" directory.
Week 7 to 9: Update Groovy, Gradle and package repo.
Week 10 to 13: Package/update all tools in the "tools" directory.
Exams and other commitments: I will have final exams at the end of June.
Other summer plans: No major plans.
Why Debian? I have been using Ubuntu since I was about 13 years old and I like it. Since Ubuntu is based on Debian, all changes to Debian will affect Ubuntu and other Debian-derived distros. I also prefer DEB rather than RPM.
- I am not applying for other projects in Summer of Code.
Link to Melang proposal: http://www.google-melange.com/gsoc/proposal/review/student/google/gsoc2015/seamlik/5629499534213120
