On 03/14/2015 11:35 AM, Joakim Tjernlund wrote:
> On Sat, 2015-03-14 at 10:58 -0700, Zac Medico wrote:
>> On 03/14/2015 05:55 AM, Joakim Tjernlund wrote:
>>> On Fri, 2015-03-13 at 10:51 -0700, Zac Medico wrote:
>>>> On 03/13/2015 05:08 AM, Joakim Tjernlund wrote:
>>>>> On Thu, 2015-03-12 at 17:51 -0700, Zac Medico wrote:
>>>>>> On 03/12/2015 02:43 PM, Joakim Tjernlund wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>>> Why is --dynamic-deps=y default? This feels like lying about your 
>>>>>>>>> true deps, I am probably 
>>>>>>>>> missing
>>>>>>>>> something here, an example would be great:)  
>>>>>>>>
>>>>>>>> It's a legacy behavior, since portage has always behaved this way, and 
>>>>>>>> ebuild developers have 
>>>>>>>> relied 
>>>>>>>> upon 
>>>>>>>> it (resulting in broken dependency calculations without it).
>>>>>>>
>>>>>>> Here is odd difference:
>>>>>>>
>>>>>>> emerge --dynamic-deps=n changed-deps=y -a1 vanilla-sources
>>>>>>> ...
>>>>>>>    Nothing to merge
>>>>>>>
>>>>>>
>>>>>> That's normal, because --changed-deps implies --selective (a number of 
>>>>>> options do this). If you add 
>>>>>> --
>>>>>> selective=n to the above command, you'll get the same result regardless 
>>>>>> of the --changed-deps 
>>>>>> option.
>>>>>
>>>>> I just did a sync and "emerge -aNDu --dynamic-deps=n --changed-deps=y 
>>>>> --selective=n world" and
>>>>> again portage wanted to rebuild > 150 pkgs.
>>>>> --selective=n seems to be the culprit, should I expect this from 
>>>>> --selective=n ?
>>>>
>>>> Yes --selective=n is the opposite of --noreplace, so for the above 
>>>> command, it will rebuild everything 
>>>> in 
>>>> /var/lib/portage/world.
>>>
>>> hmm, this kind of a bummer
>>
>> I don't understand your motivation for using --selective=n with that 
>> command. Isn't the command useful 
>> without it?
> 
> I have it my default emerge options 
> 
>>
>>> --dynamic-deps=n implies --changed-deps=y which implies --selective=n
>>> and this makes the whole world to rebuild.
>>
>> No, don't use --selective=n. I only mentioned it in order to explain the 
>> behavior that you observed.
>>
>>> Using just --dynamic-deps=n was not really safe if I understood corretly?
>>
>> It's safe, but you may need --changed-deps in order for your dependency 
>> calculations to work (depends on 
>> how the dependencies of your installed packages have changed).
> 
> I am trying to find out what to put in emerge default options and this "may 
> need"
> does relay compute in terms of default options.

Right, options that imply --selective are not well suited for
EMERGE_DEFAULT_OPTS unless you also put --selective=n in
EMERGE_DEFAULT_OPTS, and then use --selective just for the commands that
require it.

As an alternative, we can add support for command-specific default
options, as discussed here:

https://bugs.gentoo.org/show_bug.cgi?id=540250#c1

> Does --dynamic-deps=n only work reliable with emerge -NDu world ?

No, it's well suited for EMERGE_DEFAULT_OPTS. It's just that you may
find that you encounter dependency conflicts for some calculations
unless you use --changed-deps. I use --changed-deps for all of my world
updates.
-- 
Thanks,
Zac

Reply via email to