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. If you haven't changed Bugzilla's mail
settings, you, as a reporter, will automatically receive email on bug updates.
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: Example description |
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.
|