On Sun, Nov 11, 2018 at 12:31 PM M. J. Everitt <m.j.ever...@iee.org> wrote: > > Binpkgs are also a popular component of a few downstream distro's based on > Gentoo (thinking pentoo right now as an easy example). > > So we don't want to break existing users of this format without considering > the ramifications for these scenarios, as you'll have some very grumpy devs... >
I'd argue that they'd be more important for Gentoo if they were more useful. IMO the main limitation with them is the inability to auto-download them from a repository, detecting the binpkg USE flags BEFORE downloading. This is why I suggested hashing the USE flags or similar and sticking that in the filename. Obviously you can't host a repository with all the USE combinations. However, you could have a reference repo and the package manager could check it before doing a build. If you get a hit then you can install the binpkg. If you don't then you can do a source build. Portage already checks the USE flags inside the binpkg before merging it and by default doesn't use a non-matching binpkg. The problem with the current approach is: 1. You have to download the package to check this (could be a big file). 2. You can't host multiple versions of a binpkg with different USE flags since the filenames collide. I suggested a content hash because you can use it for an arbitrary amount of metadata, vs having to cram arch/USE/multilib and I'm sure something I'm missing into a filename. Make the hash as short as is economical - it isn't like we have THAT many permutations, the PM can still check the internal metadata, and this isn't a security feature. -- Rich