On Monday 27 August 2007 10:39:25 David Bonnafous wrote:
> After a sync (see below what and how) when I try to re-merge a package
> (same version) and emerge tell me that there is a dependency not
> satified I would like to know where this dependency come from. Because
> this is a "new" dependency, added after the sync by
>
> - a mistake I do (wrong /etc/portage/package.mask)

Obviously a new dependency cannot come from a package.mask. I suppose this 
question relates to how to figure out whether a hardmasked package is masked 
due to a user mask, a repository mask or a profile mask (using the terms that 
Paludis use). With Portage (at least the latest version) you can see this 
from the path to the package.mask in the mask message.

> - a minor revison (new CVS version) of a ebuild not so minor
> - a modification of a eclass
>
> And my question is "how to know is this new dependency comme from
> eclass, or more generaly what are the dependencies that come from
> eclass ?"

Stating the obvious (I think).. Any dependency that doesn't come from the 
ebuild comes from an eclass. Heh. Having said that...

I know of no tool which can show which dependencies of a package come from the 
ebuild or which eclass each of the remaining deps come from. Still there are 
a couple of tools which might be of some help. Those include qgrep 
(portage-utils), dep (udept) and of course grep.. ;)

> > What do you intend to do with this overlay?
>
> I intend to be able to maintain for a "long time" a set of package
> (ebuild and files) I use on my servers. I want to be able to recompile
> them as I need even if gentoo developers remove them from the official
> portage tree.

It's still far from clear to me what the point of this exercise is. If the 
gentoo developers remove a package from the official tree then you still have 
unlimited access to the complete version history of said tree. Even though 
cvs may be a pain to work with it's not *that* hard.

> > Why do you sync at all?
>
> In fact I have added "--backup --backup-dir='/usr/local/portage'" to
> the rsync options. Then after a sync I have in /usr/local/portage all
> the files that changed. So I clean up this tree (remove eclass
> directory, redundant package ebuild,...).

One other option you do have is to import the tree to a more useful revision 
control system and try to keep them synced (although obviously you wouldn't 
get every cvs revision)..

-- 
Bo Andresen

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to