GSoC midterm report
Welcome to the midterm report of the ‘Package statistics’ project.
The goal of this project is to implement a client-server architecture
for reporting and querying package statistics of Gentoo based machines.
The client program will be used to collect package statistics from
Gentoo installations and submit them to a central server. The server
will calculate useful statistics based on the global dataset, that
developers as well as end users have access to, via an intuitive web
For the past few days, I’ve been working on the webUI, adding pages for stats.
We’ve also managed to get the webapp running (finally :D) on vulture. Thanks
to my mentor antarus, robbat2, and the rest of the infra team for helping out.
We hit a few snags, but managed to ease them out in the end. Also, apologies for
making a stupid mistake of committing my mysql password to git (:P).
- Submitting host stats using a client script
- Accessing host stats at /host/≤uuid>
- Arch stats: /arch
- Package stats:
(An optional ?top=N can be added to the url for the no. of top items)
- Repository stats: /repo
- Keyword stats: /keyword
- Useflag stats:
- Portage FEATURES stats: /feature
- Language stats: /lang
- Mirror stats: /mirror
- Profile stats: /profile
What doesn’t work (yet)
- Package search
- Rating of packages
- Bugzilla, tinderbox integration
- Export the stats to JSON
What needs work
- The webUI should be prettier
- The repository and useflag stats could be improved
I think I can finish the remaining goals in another 2-3 weeks. After that, I’ll consider working on some of my stretch goals.
I’m also working on improving the packages.gentoo.org api, so that there’s an easy way to access the portage tree state, and enrich the package stats.
Help me out by submitting your stats to the server. An ebuild for the client is available in the repo. Please report bugs, exceptions etc.
Got any feature suggestions/ideas ?