To aid in the task of maintaining Gentoo I propose adopting a success/failure feedback system for packages emerged with Portage. This is just a concept at the moment and could certainly use refinement by experienced Gentoo developers. This enhancement suggestion is based on a message I posted to gentoo-user. Message ID: <3D2DB6B5.40707@andrewarbon.co.uk> The basic idea is this: *) When a user emerges a package Portage would submit a success or failure result back to the main Gentoo tree, depending on if the build/install went OK. These totals could then become part of the information that is sync'ed from the server to the client during an emerge rsync. *) Using the totals of the success/failure votes it would be possible to estimate the reliability of a package.. IE. A package with a significant number of failures could be backed out/masked from the main distribution and its maintainer notified that there was a problem. *) Also, by using the totals of successes and failures it may be possible to classify packages as 'stable', 'testing' and 'new' and users could be allowed to specify which classes of packages they are willing to have Portage install for them via a make variable. I am not suggesting that this system be used as the be all and end all of package verification, but I believe it could be a useful aid for both users and developers in making informed decisions in what to install/where attention is best spent. I hope I have expressed the idea clearly enough for some discussion! ;)
I like the idea, the only problem I see at a glance is the ability to skew the results, as is the case with any automatic system. The code would need to be able to record certain things like IP/subnet, or mabye to participate, one would need to register through the gentoo site and be assigned some form of unique token. This brings up all sorts of nasty privacy issues of course, but an email address and mabye optional real name should be fairly mundane, methinks we could trust the good Dr to some of our data than most of the corps out there. It might be possible to record only failures at first though, those would be less harmless to have skewed than successes, as a simple test could show that the ebuild is not susceptible. The other peice is to be effective a image of the users current portage tree would need to be synced over, to dermine if people using versionX of programY are the only ones being affected. Just a thought.
There is already gentoo-stats that is collecting information on our system. Maybe it could be extended to do more. Despite it obviously collecting information that could be seen as private (the list of packages you have installed, ...), it seem to be quite successful. So an extended version should work too. I don't see reporting which package failed a sensible private information.
Please also see http://gentoo-stable.iq-computing.de, which could be used as a starting point for this.
IIRC codebear is alreeady working on an implementation of it in the rewrite of gentoo-stable thing . Could be wrong though.
Was going to report an idea when I came over this. After experience: It is sad to do an upgrade just to discover that an application doesent work anymore. So it would be nice to have sort quanta based notification of whether or not a given ebuild will work, perhaps when using the pretend option. I got the impression that the original reporter had a fully automated system in mind. Which probably is a good idea, but I also think an manual quanta based bug system could be useful too, where an package installs just fine, but the package for some reason doesnt work. Not sure exactly how to get sort of realistic numbers on a packes success ratio with a manual system though. Maybe a bug application is needed, wich knows whats emerged on a system, and when used, reports success points and failure points, together with bugdescriptions, and maybe a bugsearch tool to prevent duplicates(if a bug already is reported, user only send away their "failure/success points"). Hehe, maybe a dead serius Portage asking user if their last emerged package(S) is working, if user refuse to answer, Portage refuse to cooperate too. Or something? Hope my post was readable, and not duplkacat or too offtopic.
Portage can't be interactive. It must work with hands off approach. Won't it bother users too much ? IIRC -stable has a voting system. One for emerged successfully, and one for working as it should.
maybe at a later point, it would require the ability to hook something into portage (ebuild.sh specifically) first anyway.
Use the pre/post hooks that are in 2.0.53 to accomplish this.
INVALID now that there are hooks to enable users to do whatever they want.