id summary reporter owner description type status priority milestone component resolution keywords cc fix_version see_also 1156 Entirely new thirdparty infrastructure jdreed bbaren "We spend way too much time and effort on updating thirdparty, and have to play stupid games to work around broken dependency resolvers, and the whole thing is just too fragile. I propose a new design for thirdparty that makes everyone's lives easier (where ""everyone"" is me and alexp), and fixes #372: Basically, we supply a list of packages (possibly separated into dependencies and recommendations), but I think we can do away with those concepts. This list can be a global list, or it can be per-distro. debathena-thirdparty is a package that knows where to find these lists, copies them locally, and iterates over the packages, apt-get installing each one (presumably not in its postinst, but rather as a cron job, or a trigger at the end of auto-update, or something). If a package fails, it retries. After 3 consecutive failures, it whines, either via athinfo (which we can add a new Nagios check for, or use update-status, or something) or syslog, or whatever. When someone uninstalls thirdparty, we can either remove those packages (again, failing if there are dependency issues), or perhaps mark them as auto-installed or something? Benefits: - Changing the membership of thirdparty is as simple as editing a plain text file, no rebuilds are necessary. - We don't have to play stupid dependency games - Removal of metapackages is far less likely. - Fixes #372 - Installs possibly go faster as we can relegate this to firstboot or something? Cons: - We're reverting to what are essentially control files. (Counterpoint: They worked.) - There's no longer a hard guarantee that all of thirdparty must be installed for a machine to call itself cluster. I'm fully aware that using APT is the Right(tm) way to do this. But it causes more trouble than it's worth, IMHO. " enhancement closed high Current Semester -- fixed