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
