Dale posted on Sun, 18 Dec 2011 22:48:27 -0600 as excerpted:

> Ulrich Mueller wrote:
>> On Sun, 18 Dec 2011, Alexandre Rostovtsev wrote:
>>> The problem is that ($PN, $CATEGORY) pairs are not unique.

>> Thinking about it a little more, I believe that ${CATEGORY} shouldn't
>> appear anywhere in the path of installed files, for the following
>> reasons:
>>
>> 1. Users may not know the category of a package

> I like the logic in #1 as a user.  What if two packages have the same
> name but different categories tho?  It is rare but I do run into this
> from time to time.  I try to emerge something but am informed by emerge
> that I have to include the category for emerge to know exactly which
> package I want installed.

At present that's semi-accounted-for by including version-revision.  
Luckily, $PN clashes don't often have the same versions installed at the 
same time, so including it helps avoid clashes on $PN only.  The proposal 
removes version-revision, which would ordinarily be good, but in the 
context of $PN clashes causes problems.

I believe that's the rock upon which most previous similar proposals have 
foundered.

> I do agree that docs are sometimes hard to find.  The only way I have
> any success is equery files <package name> then see where it put them or
> if there is none to find.

For docs, I used to have problems too, but it's been awhile, I think 
because I've learned to work with the system, in this case, tab-
completion (the next point), not against it.  I do sometimes use equery 
files or equery belongs to find where a package put files, but seldom for 
docs in the docdir, since I know where to look and can tab-complete for 
them.  But for what manpages a package includes, certainly, and over the 
years I've found a number of commands I didn't know about, that way. =:^)

>> 2. It doesn't play well with bash completion. When searching for
>>     documentation of a specific package (and only knowing PN), one can
>>     currently type the pathname up to PN and press tab which will
>>     complete PVR. With CATEGORY _before_ PN this would no longer work.

I often find myself doing equery list, simply to find the category, as 
when reporting bugs or checking to see which binpkg versions I still have 
around, etc.  But the various package trees (ebuild, binpkg, installed-
db) are on filesystems that aren't normally mounted unless I'm working on 
them, on mds that likewise aren't normally assembled, and having to 
assemble an md and mount a filesystem just to be able to do an equery 
list, so I can lookup a doc of a package that's under some category name 
I don't remember, just because someone broke the previously working bash-
completion lookup method...

Very much ungood!

>> 3. CATEGORY and SLOT are Gentoo specific [and n]either of them should
>>     appear in the directory structure of installed packages.

>> Leave things as they are. It's not perfect, but IMHO your approach
>> would create at least as many problems as it would solve.

Indeed.

If a method allowing permanent bookmarking is desired, scripts that 
create and update a tree of symlinks and/or uses existing portage phase 
hooks has already been mentioned.  Someone can package such a script and 
as with any other package, people that want/need it can emerge and run it 
as necessary, without getting into the quagmire of confusing category 
names, broken tab-completion and potential doc-file collisions that this 
proposal is opening up.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman


Reply via email to