Name: Sachin Kumar
Background: Second year Computer Science and Engineering student at University Institute of Engineering and Technology, Kurukshetra University ,India. Ubuntu user since 2011. Android developer. Fluent in C, C++, Java and Python programming.
Project title: Android SDK tools in Debian
- Finish packaging all of the core development tools (lint, gradle-plugin, SDK Manager, etc.)
- Update android-tools and relevant pkg-java packages to the latest upstream version
- Update androidsdk-tools to the Android Tools Team style, and update to latest upstream version
- Package new parts of the Android upstream source, including the NDK, target platforms, emulators, Android Studio, etc.
- Make all Android Tools packages build reproducibly
- Improve package build systems to be more tightly integrated with upstream build systems
- Add Continuous Integration tests
- Package and improve related tools, like apktool, androguard, fdroidserver, drozer, etc..
Synopsis: Retrieved from the GSOC 16 page:
- The Android platform is free software, including the tools used for developing apps for Android. Debian-derivatives are already a preferred platform for Android developers, and many Android SDK tools are included in Debian as part of the Android Tools and Java teams. This project is about working towards the goal of having the entire Android toolchain and SDK in Debian so that Android apps can be developed using only free software from easy-to-use packages. In combination with Replicant, this will make the most popular operating system in the world, Android, into a 100% Free Software platform.
Benefits to Debian: Android application development on Debian and its derivatives will be made easier resulting in an increase in user base as well as resulting in Android becoming completely free.
Deliverable: Packaged Android tools, and repositories updated to latest upstream version.
April 1st - April 22nd - Submit bug fixes to familiarize myself with the coding practices used by the Debian and Android SDK developers. Learn more about C and Java packaging.
Community Bonding Period - Continue fixing bugs to become proficient in packaging.
Week 1-2 - Move the SDK-Tools to appropriate repository and update it to the latest upstream.
Week 2-3 - Package Android platform framework in android-platform-frameworks-base and android-platform-libcore.
Week 4-5 - Package SDK-Tools, including the NDK.
Week 6-7 - Package android-platform-tool-swt and fix android-platform-tools-base.
Week 8-9 - Build Android.mk either from scratch or by modifying the existing code, whichever has a better performance.
Week 10-11 - Test for bugs, add Continuous Integration Tests, improve documentation.
Week 12 - Buffer.
Exams and other commitments: End-semester exams during the first week of June. Will be able to work around 3 hours a day during that. Will cover up in the following week.
Other summer plans: No plans.
Why Debian?: Debian was the first open-source OS I ever used and I've used Ubuntu and ?LinuxMint since then. I use Ubuntu as my primary OS and hence want to help improving it any way I can. Also I get to learn how my OS is actually developed and maintained.
My previous Debian contributions: No previous contributions but there will be many in the future.
Are you applying for other projects in SoC? : Yes. I'm applying for 'Reflection-based Python-C++ language bindings: cppyy' project of CERN.