1 |
Dale posted on Sun, 18 Dec 2011 22:48:27 -0600 as excerpted: |
2 |
|
3 |
> Ulrich Mueller wrote: |
4 |
>> On Sun, 18 Dec 2011, Alexandre Rostovtsev wrote: |
5 |
>>> The problem is that ($PN, $CATEGORY) pairs are not unique. |
6 |
|
7 |
>> Thinking about it a little more, I believe that ${CATEGORY} shouldn't |
8 |
>> appear anywhere in the path of installed files, for the following |
9 |
>> reasons: |
10 |
>> |
11 |
>> 1. Users may not know the category of a package |
12 |
|
13 |
> I like the logic in #1 as a user. What if two packages have the same |
14 |
> name but different categories tho? It is rare but I do run into this |
15 |
> from time to time. I try to emerge something but am informed by emerge |
16 |
> that I have to include the category for emerge to know exactly which |
17 |
> package I want installed. |
18 |
|
19 |
At present that's semi-accounted-for by including version-revision. |
20 |
Luckily, $PN clashes don't often have the same versions installed at the |
21 |
same time, so including it helps avoid clashes on $PN only. The proposal |
22 |
removes version-revision, which would ordinarily be good, but in the |
23 |
context of $PN clashes causes problems. |
24 |
|
25 |
I believe that's the rock upon which most previous similar proposals have |
26 |
foundered. |
27 |
|
28 |
> I do agree that docs are sometimes hard to find. The only way I have |
29 |
> any success is equery files <package name> then see where it put them or |
30 |
> if there is none to find. |
31 |
|
32 |
For docs, I used to have problems too, but it's been awhile, I think |
33 |
because I've learned to work with the system, in this case, tab- |
34 |
completion (the next point), not against it. I do sometimes use equery |
35 |
files or equery belongs to find where a package put files, but seldom for |
36 |
docs in the docdir, since I know where to look and can tab-complete for |
37 |
them. But for what manpages a package includes, certainly, and over the |
38 |
years I've found a number of commands I didn't know about, that way. =:^) |
39 |
|
40 |
>> 2. It doesn't play well with bash completion. When searching for |
41 |
>> documentation of a specific package (and only knowing PN), one can |
42 |
>> currently type the pathname up to PN and press tab which will |
43 |
>> complete PVR. With CATEGORY _before_ PN this would no longer work. |
44 |
|
45 |
I often find myself doing equery list, simply to find the category, as |
46 |
when reporting bugs or checking to see which binpkg versions I still have |
47 |
around, etc. But the various package trees (ebuild, binpkg, installed- |
48 |
db) are on filesystems that aren't normally mounted unless I'm working on |
49 |
them, on mds that likewise aren't normally assembled, and having to |
50 |
assemble an md and mount a filesystem just to be able to do an equery |
51 |
list, so I can lookup a doc of a package that's under some category name |
52 |
I don't remember, just because someone broke the previously working bash- |
53 |
completion lookup method... |
54 |
|
55 |
Very much ungood! |
56 |
|
57 |
>> 3. CATEGORY and SLOT are Gentoo specific [and n]either of them should |
58 |
>> appear in the directory structure of installed packages. |
59 |
|
60 |
>> Leave things as they are. It's not perfect, but IMHO your approach |
61 |
>> would create at least as many problems as it would solve. |
62 |
|
63 |
Indeed. |
64 |
|
65 |
If a method allowing permanent bookmarking is desired, scripts that |
66 |
create and update a tree of symlinks and/or uses existing portage phase |
67 |
hooks has already been mentioned. Someone can package such a script and |
68 |
as with any other package, people that want/need it can emerge and run it |
69 |
as necessary, without getting into the quagmire of confusing category |
70 |
names, broken tab-completion and potential doc-file collisions that this |
71 |
proposal is opening up. |
72 |
|
73 |
-- |
74 |
Duncan - List replies preferred. No HTML msgs. |
75 |
"Every nonfree program has a lord, a master -- |
76 |
and if you use the program, he is your master." Richard Stallman |