1 |
>>>>> On Fri, 13 Jul 2018, Rich Freeman wrote: |
2 |
|
3 |
> I'd suggest refactoring this a bit. We have a couple of directories. |
4 |
> We need to establish the base, and then the directory name under that. |
5 |
|
6 |
> We have: |
7 |
> distfiles |
8 |
> packages |
9 |
> main repo |
10 |
> overlays |
11 |
|
12 |
> These can go under: |
13 |
> /var/db |
14 |
> /var/cache |
15 |
> /var/lib |
16 |
|
17 |
> You have just about every sane permutation of these as options, so I |
18 |
> suggest considering the two separately. |
19 |
|
20 |
> I think the pros/cons of the second question have already been hashed |
21 |
> out. I tend to agree with the /var/lib arguments for all but |
22 |
> distfiles (FHS directly gives the example of browser cache in |
23 |
> /var/cache, and that is very much what distfiles is). |
24 |
|
25 |
Agreed, so far. |
26 |
|
27 |
> For the directory under each I suggest a gentoo/portage parent |
28 |
> directory, and then a tree underneath: |
29 |
> .../gentoo/repos/gentoo (this is PMS) |
30 |
> .../gentoo/repos/myoverlay (this is PMS) |
31 |
> .../gentoo/packages (I'm not sure if this is PMS - move to portage if not) |
32 |
> .../gentoo/distfiles (I don't think this is PMS, but it is so |
33 |
> generic that it probably should be considered shared) |
34 |
|
35 |
Why the "gentoo" path component? That's not a package, and therefore |
36 |
not compliant with the FHS. (Or even worse, it actually _is_ a |
37 |
package, namely app-misc/gentoo.) |
38 |
|
39 |
> .../portage/edb (I think this is portage-specific) |
40 |
> .../portage/pkg (I think this is also portage-specific) |
41 |
|
42 |
> Stuff that is specific to portage and not specified in PMS would go in |
43 |
> .../portage. Stuff that is PMS-specified would go in .../gentoo. |
44 |
|
45 |
> Note that not all these directories need be under the same base. We |
46 |
> could have /var/lib/gentoo/repos, and /var/cache/gentoo/distfiles. |
47 |
> So, the base needs to be decided for each. |
48 |
|
49 |
> Finally, my list of final recommendations given this framework: |
50 |
|
51 |
> /var/lib/gentoo/repos/gentoo (I'm fine with cache here as well) |
52 |
|
53 |
Here we're at 5 path components again. I will likely vote against any |
54 |
proposal that would put the tree such deep in the hierarchy. And the |
55 |
double "gentoo" adds some extra ugliness. |
56 |
|
57 |
> /var/cache/gentoo/packages (These are package builds and are |
58 |
> completely reproducible.) |
59 |
> /var/cache/gentoo/distfiles (This is literally a network cache/mirror) |
60 |
> /var/cache/portage/edb (This is portage-specific, |
61 |
> but it can be regenerated) |
62 |
> /var/lib/portage/pkg (This is the must-preserve |
63 |
> metadata state of the system, in portage's internal format.) |
64 |
|
65 |
Why not keep this at /var/db/pkg? That's the path mentioned in PMS. |
66 |
|
67 |
> /var/lib/portage/world (Current state - at least |
68 |
> something is already in the right place...) |
69 |
|
70 |
Ulrich |