On Thursday 05 July 2007 20:07:58 Arturo 'Buanzo' Busleiman wrote: > > -u means direct deps will be updated too and that the target (in this > > case claws-mail) won't be remerged unless there's an upgrade (or > > downgrade). Without -u it still merges the latest visible version of the > > target itself.. > > From man emerge: > --update (-u) > Updates packages to the best version available, which may not > always be the highest version number due to masking for testing and > development. This will also update direct dependencies which may not > be what you want. Package atoms specified on the command line are > greedy, meaning that unspecific atoms may match multiple installed > versions of slotted packages. > > You can use --nodeps, too, so you only update the specific package, with no > deps. Why are you posting this? Was I unclear about anything? If foo has a direct dependency on >=cat/bar-1.5 and you have =cat/bar-1.4 installed then `emerge foo` will upgrade both foo and bar to latest visible versions because that direct dependency on bar is not satisfied. With -u the same would happen except foo won't be remerged if there is no upgrade. With --nodeps only foo would be upgraded or remerged despite the dependency on bar not being satisfied. If instead you already had =cat/bar-1.5 installed then `emerge foo` would upgrade or remerge foo only because the dependency on bar is already satisfied. With --update bar would be upgraded if a later version is available even though it isn't necessary to satisfy the dependency. With --nodeps still only foo gets upgraded or remerged. In summary --nodeps is potentially *very* dangerous. Don't use it unless you know what you are doing. Also don't use --update or --deep if you want to minimize the number of upgrades... -- Bo Andresen