Description of the project: Debian is famously the base of many other distributions, including popular ones such as Ubuntu. This project aims at reviving and improving existing integration of derivatives into Debian's community and infrastructure. Information about derivatives is collected in the census and processed for integration into various parts of the Debian infrastructure. In addition, derivatives are informed about important changes and events within the Debian in order to build awareness of and integration with the Debian community. The processing is currently offline due to some blocking issues so the project will be to resolve them, improve the service and its integration as well as work on and improve the community building aspects.
Confirmed Mentor: Paul Wise
Confirmed co-mentors: Raju Devidas
Deliverables of the project: The deliverables of this project will be that the issues blocking the derivatives census service will be resolved, it will be running again, the scope of the service will be increased, further integrations with Debian infrastructure will be implemented and community building work will be done. Specific tasks that are suggested to be worked on are listed below in the "Project tasks" item.
Desirable skills: attention to detail, communication skills and experience with or willingness to learn some git, Python, Django, SQL, Shell, Make and Perl would be helpful to prospective applicants.
What the intern will learn:
- wrangling and integration of disparate data sources
- how Debian source packages are constructed and compared
- how Debian apt repositories are constructed and inspected
internals and APIs of the Debian wayback machine
- an overview of the main parts of the Debian development infrastructure
- an overview of the kinds of Debian derivatives that exist
- ways the Debian community communicates with itself
- one of the ways community building happens in Debian
Application tasks: Please co-ordinate each of these with the mentors to avoid applicants duplicating tasks, complete most of the task categories at least once and at most three times
invite one derivative from the lists to the census that is not yet present and hasn't been invited recently. Please also search the list archives for discussions about your chosen derivative and co-ordinate with the mentors so that duplicate invites are not sent and any other issues can be discussed.
pick a derivative already in the census, run the census codebase for that derivative, fix one or two easy issues (either error output or contents of the check-* files) and or communicate with one page maintainer about issues that are not easy to fix
add one idea for further integrating derivatives info into Debian infrastructure
read through the census template and discuss with the mentors any possible additions
- Project tasks:
- The blockers include:
- designing/implementing a replacement option for subscribing to the census processing output.
- crafting/discussing/implementing a policy for expiring/removing source packages and corresponding patches.
- Other integration tasks include:
- Other social tasks include:
- Notifying derivatives about events within Debian
- Inviting derivatives found through Distrowatch/etc
- Welcoming derivatives recently added to the census
- Reconnecting derivatives to the census (some pages have no maintainer)
- Annual pings of possibly-inactive derivatives
- Other tasks include:
- Maintenance of census wiki pages as errors occur
Completing the FIXMEs within the census codebase
Porting compare-source-package-list to the snapshot API
Switch from faking out SecureApt to verifying repositories using their OpenPGP keys
- Add checks that the OpenPGP keys are secure and not expired
Update apt repository checks against the format documentation
- Optimise disk space usage via compressed apt indexes and investigate performance impact
- Compress patches on-disk and configure Apache to send compressed files when possible and decompress when not possible
- Add Facebook to RSS translation
- Save URLs to archive.org
Add monitoring for each of the lists for new and newly inactive derivatives
Compare census status field with distrowatch status & wikipedia discontinued fields
Detect inactive websites using DUCK
- Icons and descriptions in the census output
- Check for issues in the reprepro config (duplicate/obsolete suites etc)
Other TODO items
- The blockers include: