Google Summer of Code/2012/Ideas/Extend packages.gentoo.org New gentoo packages
This project was retroactively added to the wiki in 2022, since it was mysteriously missing, but is clearly visible as 1 of the 9 main GSoC projects from the year 2012. This description is pieced together from their final report.
Creating new packages.gentoo.org with rich web interface and advanced features. Port it to django.
gentoo-packages is new version of packages.gentoo.org site written on Python using Django framework.
You could find sources on GitHub or here. https://github.com/bacher09/gentoo-packages
- implemented package scanning utility, that collect info about herds, maintainers, packages, use flags, licenses. It could collect info about overlays. Scanning tool support collection packages data through portage or pkgcore. For that was developed backends mechanism. It also could validate some data on database.
- implemented web interface with many server pages: Ebuilds view for fresh ebuilds, packages views for searching packages, repositories view for show all available repositories, repository view for displaying repository info and stats, licenses and license view for showing info about license, maintainers view for displaying info about maintainers, categories view for showing categories list, package view for displaying info about package (changelog, use flags, keywords, depends, herds, maintainers, metadata, etc), ebuild view for showing info just about that ebuild. In packages view they could be sorted by update or created time, that allows show newest packages. User could choice info about what arches would be showed to him. Also user could search packages by many params like herd, use flag, license, category, overlay. For ebuild also available rss and atom feeds. For performance boost some data are cached.
Plans for the future:
- Extending package search, allow search by arch.
- Use solr for searching.
- Use celery for scanning tasks.
- Add the ability to show packages screenshots (some thing similar to screenshots.debian.net).
- Extend rss and atom feeds.
- Deploy server to packages.gentoo.org site.
- Some other minor plans, I will add TODO list on next week.
I want thank my mentor Matthew Summers, Brian Dolbec and all other who helped me working on my project.