1 |
Hi everybody. |
2 |
|
3 |
I am pleased to announce that the first part of the enhancements to allow more |
4 |
direct user involvment into ebuild submission/testing/update/maintaince |
5 |
process is completed. |
6 |
Please take a look at #1523 |
7 |
http://bugs.gentoo.org/show_bug.cgi?id=1523 |
8 |
for the details and full description of proposed enhancements (beware - long |
9 |
read!). |
10 |
Long-lime gentoo users might remember this proposal appearing earlier under |
11 |
"distributed ebuild processing" and "unstable branch proposal" threads in |
12 |
gentoo-dev (thought this implementation should allow for even greater |
13 |
stability if desired :)). |
14 |
|
15 |
This part of the code adds ebuild stability level (AKA ebuild status) |
16 |
awareness to portage. The ebuild status is described in Status file residing |
17 |
in package directory (next to all abuilds and Changelog). Please see |
18 |
Status.skel for the format description and levels available. |
19 |
|
20 |
Should I say that testing and comments are greatly appreciated? |
21 |
|
22 |
Short install instructions: |
23 |
The code consists of: |
24 |
estatus.py module that does most of the work |
25 |
and patch to portage.py - portage.py.diff |
26 |
Additionally, since the code uses exceptions for error handling and since |
27 |
portage_exceptions.py was not incorporated yet you will need that module too |
28 |
(I attach all three + Status.skel to this message for your convinience). |
29 |
|
30 |
portage.py resides in /usr/lib/python2.2/site-packages/, you should apply the |
31 |
supplied patch against it. Other two python modules should go into the same |
32 |
dir (or somewhere else where python can find them). File Status.skel contains |
33 |
explanation of the (very easy) Status file format. |
34 |
|
35 |
After you did this you are ready to use new feature. Few words first though: |
36 |
Since none of your packages have Status file available all your ebuilds will |
37 |
default to "new" status. Default setting for STABILITY_LEVEL is "approved", |
38 |
thus emerge will not see any ebuilds! To circumvent this you should set |
39 |
STABILITY_LEVEL="new" in your make.conf or make.globals (don't forget what |
40 |
you modify!). This should bring emerge functionality back to normal (all your |
41 |
ebuilds are "new" and you instructed portage to allow all ebuilds that are |
42 |
"new" or more stable). |
43 |
|
44 |
Now you can create Status file for some certain package and play with it by |
45 |
setting different combinations of flags described in Status.skel (and |
46 |
comments to the code). You can use this as an alternative to profiles, masking |
47 |
and even creating a sub-distribution, however the intended use is different. |
48 |
Please see the proposal for the detailed description. |
49 |
|
50 |
George |