Student Application Template
Name
Cameron Norman
Contact/Email/IRC nick
Email: camerontnorman@gmail.com IRC: ?CameronNemo
Background
- I have contributed to numerous open source projects, including: elementary OS (mainly in Vala, a language similar in syntax and semantics to Java and C#), Debian (RC bug fixes to packaging shell scripts), LXC (mainly to the Debian template script to accommodate systemd), and cgmanager (written in C). I gained experience in Java in my school studies, and my work with Vala can transfer over to Java pretty effectively as well. I will be going to UC Berkeley next year.
Project title
Integrate debian with Android
Project details
- Lil Debi is a fairly mature application that offers easy, GUI installation of a Debian chroot environment on Android systems. This GSoC project will focus on adding an "installation profiles" feature.
Synopsis
- Improve lil' debi application, which provides a Debian chroot environment on Android
Benefits to Debian
- Packages exposed to more diverse environments, making them more robust and tested. Wider array of platforms targeted, helping spread free software to more people.
Deliverables
- Installation profiles: e.g. "basic webserver", "wireshark", "minimal SSH" (similar to tasksel tasks like task-ssh-server) Other wishlisted features that can be implemented after the above are easily found in the wiki and in github issues.
Project schedule
Application Evaluation Phase
(March 28 - April 27)
Experiment with setting up different types of installations (that correspond to main requested installation profiles) manually
- Investigate how the requested feature (installation profiles) matches up with tasksel
- Familiarize myself with codebase by reviewing / analyzing service starting code and triaging and fixing bugs (ATM, my eyes are on github issue #101 as a starting point)
Community Bonding Phase
(April 27 - May 25)
- Get familiar with any long term plans/desires regarding handling of services like ssh, web servers, privoxy, etc. so I can implement the profiles feature in a way that can tie into that effectively (e.g. is enablement/disablement of services like ssh a desired feature?)
- Settle on UI design and details
- Resolve any ambiguities about feature specifications
- Finally discuss possible additional features to be added after the main deliverable
Coding Phase
(May 26 - June 25)
- Code the basic infrastructure (no profiles added here)
- With an example profile (most likely SSH), hammer out any bugs in the design of the profile agnostic part and get feedback
- Adjust the profile agnostic infrastructure based on testing and mentor feedback
- Document work completed
(June 26 - July 3)
Mid term evaluation
(July 4 - August 24)
- Add many more profiles
- Implement other features, time permitting
- Document work completed
Exams and other commitments
All exams scattered in first two weeks of May.
Other summer plans
Possibly GNOME ?WestCoast Hackfest, June 29 to July 3. (as part of elementary OS work)
Why Debian ?
I use Debian and have contributed to Debian in the past and had a positive experience. Using Debian more, i.e. in a chroot on Android, interests me a lot.
Are you applying for other projects in SoC ?
No