Contributing Ebuilds
1. Getting Started
Create A Bugzilla Account
Point your web browser to http://bugs.gentoo.org. This
is the URL for the Bugzilla bug tracking database. In the list
of links, one of the items reads "Open a new Bugzilla account".
If you have not done so already (e.g. for submitting a bug),
click on this link and create a new account.
Don't Submit CPAN Ebuilds
Portage provides a tool called g-cpan.pl which installs a given CPAN
module on your Gentoo system using Portage, storing the necessary information
(such as dependencies, provided files, etc.) in the Portage database, just like
it would when you install an ebuild. It is therefore not needed (nor
recommended) to submit CPAN ebuilds.
For more information on g-cpan.pl, please consult its man page.
2. Submitting an ebuild
Create a new bug
At the bottom of the main page or login page, there is a
yellow box. Choose the New - Expert link. Or, you can just go
to the URL http://bugs.gentoo.org/enter_bug.cgi.
Either will bring you to the Enter Bug page.
Note:
In the Bugzilla system, all entries are bugs. That includes
newly submitted ebuilds. Each bug is assigned a tracking id.
Take note of the ID, especially if you have other ebuilds that
depend on this package.
|
Bugzilla can track multiple products. For example, in Gentoo,
other products may include documentation or tools used to
administrate the website. From the list of products, Ebuilds
should always be submitted to Gentoo Linux.
Clicking on the Gentoo Linux product should bring up
a new bug entry form.
Completing the bug form
The first field on the form is version. If you know
which version your package belongs in, set it here. Otherwise,
select unspecified. Next, set the component. All ebuild
scripts are of the component type Ebuilds.
Important:
Ebuilds should always be of component type
Ebuild. Categories such as GNOME,
Libraries, and Server may look like they apply to
your ebuild, but they are used for filing bugs against packages,
not submitting ebuilds.
|
The categories Platform, OS, and
Priority do not need to be set for ebuilds.
The Severity field should be set to enhancement.
Leave the Assigned To field blank, but if you'd like
to track the status of your ebuild, enter your email in the
CC field.
Fill in the Summary field with a brief note of what
package you are submitting and whether it's an update or a new
submission. Something like the following is great: foo-bar-x.y.z.ebuild
(New Package) or foo-x.y.z.ebuild (Update).
The Description field should be filled in as completely
as possible. Here's an example from Bug Number 7:
Code Listing 2.1 |
Hi!
Please find attached gramps-0.7.0.ebuild and a patch so that it will
compile against python-2.2
gramps is the Genealogical Research and Analysis Management Programming
System. It is a very cool gnome/python app. If you are in the US, you
can head over to http://www.familysearch.com/ and you can probably find a
GEDCOM file for your family tree to import into gramps. (Mormons sure do like
geneaology)
I suggest app-misc/gramps Also, this ebuild depend on Imaging and ReportLab
previously submitted
tod
|
Once the summary is complete, click Commit.
Attaching the Ebuild Script
After clicking submit on the Enter Bug page, you
will go to the Posting Bug page. Take note of the bug number.
Toward the bottom of this page, there is a link to Create a new
attachment. Click on this link.
Select the file using the text entry box or the Browse dialog.
In the Description field, type the name of the ebuild file, much
the same as you did in the Summary section of the last page.
Make sure that the content type is set to "text/plain", and that the
radiobutton for select from list is marked.
There are no other required fields on this form. Click Submit
and you are done!
3. Multiple Ebuilds
Dependencies
In cases where you might submit multiple ebuilds, and some of them
depend on others, it is very helpful if these dependencies are noted.
Viewing the bug again should allow you to enter another note. Please add
dependancy information here.
|