1 |
Hello, developers. |
2 |
|
3 |
Since Gentoo is quite an aging technical community, a lot of wording |
4 |
has accumulated to describe various ebuild-related aspects, some of it |
5 |
rather confusing and/or outdated. Therefore, I would like to suggest |
6 |
that we establish some 'proper' vocabulary for use in official |
7 |
documentation, and deprecate some of the outdated concepts. |
8 |
|
9 |
This is meant to serve two goals particularly: |
10 |
|
11 |
1. Reduce user/developer confusion. In particular, the long-time |
12 |
confusing two uses of 'Portage', but also working towards vocabulary |
13 |
consistent with other tools and distributions. |
14 |
|
15 |
2. Put more emphasis on flexibility of Gentoo -- which I believe should |
16 |
be advertised as its major advantage. |
17 |
|
18 |
|
19 |
Now what I suggest: |
20 |
|
21 |
A. Portage vs the package manager |
22 |
--------------------------------- |
23 |
|
24 |
I don't know many distributions that officially support more than one |
25 |
distinct package manager. Even some of the Gentoo derivatives (e.g. |
26 |
Funtoo) don't do that. As I see it, we should be proud of that. |
27 |
|
28 |
For this reason, the official docs should treat Portage |
29 |
as the reference package manager rather than the only package manager. |
30 |
That is: |
31 |
|
32 |
- use 'the package manager' whenever the relevant action or information |
33 |
can be applied to any Gentoo package manager conforming to the PMS, |
34 |
|
35 |
- use 'Portage' whenever the relevant information applies purely to |
36 |
Portage the package manager. |
37 |
|
38 |
|
39 |
B. Ebuild vs package |
40 |
-------------------- |
41 |
|
42 |
'Ebuild' is the script. If you say 'install an ebuild', that ends up |
43 |
a bit confusing. Also note that a binary package is not an 'ebuild', |
44 |
yet it is roughly equivalent to one. So: |
45 |
|
46 |
- use 'ebuild' when referring directly to the .ebuild file, |
47 |
|
48 |
- use 'package' whenever referring to the generic magic thing that |
49 |
results of combining ebuild with eclasses, profiles and other stuff. |
50 |
|
51 |
So: 'send me the ebuild' but 'install the package'. |
52 |
|
53 |
|
54 |
C. Repository vs tree vs overlay vs Portage... |
55 |
---------------------------------------------- |
56 |
|
57 |
This one is harsh since it has a lot of historic context. Long story |
58 |
short, none of the Gentoo package managers work in pure 'overlay' logic |
59 |
anymore, so best to stop using that term. Also, better to leave 'trees' |
60 |
to the forests. |
61 |
|
62 |
And finally, Portage is the package manager and let's leave it at that. |
63 |
No need to cause users to confuse developers even further. |
64 |
|
65 |
Therefore: |
66 |
|
67 |
- Don't use 'Portage', 'tree', 'overlay' or any other thing. Just call |
68 |
it a 'repository' (or 'ebuild repository', if you want to be more |
69 |
specific and distinguish it from 'binary package repository'). |
70 |
|
71 |
- When referring to the main Gentoo repository, call it the 'Gentoo |
72 |
repository'. That's how it is named these days (read repo_name!), |
73 |
and that's the least confusing name you can use. |
74 |
|
75 |
- When referring to other repositories, you can call them 'third-party |
76 |
repositories' or alike. No point in calling them 'overlays' since |
77 |
they are not laid over anything anymore. |
78 |
|
79 |
This is a great step towards decentralization and a good emphasis on |
80 |
the fact that Gentoo is flexible and can work with many different |
81 |
repositories. |
82 |
|
83 |
|
84 |
Your thoughts? |
85 |
|
86 |
-- |
87 |
Best regards, |
88 |
Michał Górny |