In portage-2.1.8 there’s a new emerge –rebuilt-binaries option that is very useful for people who build binary packages and install them on multiple computers (using PORTAGE_BINHOST or shared PKGDIR). The option causes packages to be automatically reinstalled in cases when rebuilt binary packages are available (due to revdep-rebuild or similar cases). Rebuilds are detected by comparison of BUILD_TIME package metadata. This option is enabled automatically when using binary packages (–usepkgonly or –getbinpkgonly) together with –update and –deep.
9 thoughts on “portage-2.1.8 has new –rebuilt-binaries option”
Comments are closed.
Wow. I was looking for this feature about 2 weeks ago. Thanks.
Very nice.
I’m writting on an automatic update system for a school. One binhost with many clients syncing from it.
As I use bashrc to modify packages anyway I included a script to modify the revision number of a binary package to match the buildtime. I have to review it now if it is still needed. Hope not.
Thanks for that
Great option!!
Many thanks
Wow Thx Zac nice to see push to some binary stuff
Nice feature! Thanks Zac 🙂
Hey Zac, you mention in bug 306659 a script to add missing BUILD_TIME fields to $PKGDIR/Packages. Does that exist somewhere?
I didn’t make a script for updating $PKGDIR/Packages because it’s non-essential. If you really need it for some reason, you can just remove $PKGDIR/Packages and then run `emaint –fix binhost` to regenerate it.
I tried the emaint fix, but packages built with the older portage were still missing BUILD_TIMEs. Also, I tried recreating a package with quickpkg, and it didn’t add BUILD_TIME either. Its working well for packages rebuilt with portage-2.1.8 though.
Right, you need to build your new packages with >=portage-2.1.8, or else –rebuilt-binaries won’t help you. I have a script that uses the BINPKGMD5 metadata (which is supported by older portage) to generate a list of atoms to reinstall: