On 22 January 2015 7:20:07 PM AEST, Sam Bishop <sam@cygnus.email> wrote:
>On 22 January 2015 at 17:00, Neil Bothwick <n...@digimed.co.uk> wrote:
>> On Thu, 22 Jan 2015 16:43:32 +0800, Sam Bishop wrote:
>>
>>> I'll quote from the binpkg docs:
>>> >> Next to these, portage will check if the binary package is built
>>> >> using the same USE flags as expected on the client. If a package
>is
>>> >> built with a different USE flag combination, portage will either
>>> >> ignore the binary package (and use source-based build) or fail,
>>> >> depending on the options passed on to emerge
>>>
>>> So I'm fairly sure that implies they can coexist based on the
>>> directory structure. -
>>> http://wiki.gentoo.org/wiki/Binary_package_guide#The_PKGDIR_layout
>>
>> The package name is the same as the ebuild name but with a .tbz2
>> extension, so how could portage cope with multiple variants with
>> different USE flags when there is only one name? There can be only
>one
>> package per ebuild and either the USE flags match exactly or they do
>not.
>>
>> You could get away with this with a limited set of profiles by having
>a
>> different $PKGDIR for each profile but to do it with random
>combinations
>> would require some sort of middleware to handle the requests and
>place
>> the specified packages where portage expects to find them.
>>
>> I think the check for USE flags is done using the IUSE and USE
>settings
>> in the package metadata, so even if a USE flag you don't use is added
>to
>> an ebuild, the package will no longer match. ISTR having to hack
>metadata
>> in /var/db in the past to avoid a rebuild of *Office.
>>
>
>Thank you kindly Neil. You rephrasing what was right in front of my
>face in the docs finally lead to the lightbulb going off. Happens to
>all of us I suppose. The pkdir layout diagram isn't implying multiple
>versions of a single package, it is referring to multiple packages
>with a numeric shorthand. So this would require middleware, wrappers,
>or improvements to portage to cope with having overlapping packages
>like this. So interim functionality could be achieved with separate
>bin hosts directories for each of the baseline profiles with their
>default use flags. Once the infrastructure was stable then work could
>be undertaken to build some kind of wrapper, or enhancement to
>portage.

There was a discussion recently on the portage-dev list regarding storing 
multiple versions with different use flags in a pkgdir. There's an open bug in 
bugzilla too, I believe, but I cannot find the reference right now; if I can 
I'll follow up.

I think the summary was that the Packages file is able to index multiple 
versions of a package, but the tooling to create and manage packages needs some 
improvement. (Don't quote me on that though!)


>
>>
>> --
>> Neil Bothwick
>>
>> When companies ship Styrofoam, what do they pack it in?

-- 
:b

Reply via email to