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

Reply via email to