Contents:
   About
   Support
   Getting A Package Into Addons
   Getting A Package From Addons Into The Main Tree

------------------------------------------------------------------------------
------------------------------------------------------------------------------
About:
------------------------------------------------------------------------------
RPMS in the addons repo are typically provided by collaborators.

These packages are either:
   unable to be integrated into the main release
   candidates for inclusion in the next release
   packages with an unknown future

Packages placed here may not be ready for production use.

Exercise the necessary level of caution for your systems.

The addons repo is disabled by default to avoid forcing you to opt in.

------------------------------------------------------------------------------
Support:
------------------------------------------------------------------------------
Scientific Linux cannot provide support for the packages in the addons repo.

These packages may be updated infrequently and security issues are not tracked
by Scientific Linux.  If you believe a package is out of date, feel free to
contact the contributor, but the package may not end up being updated.

Packages within the addons repo may be discontinued or withdrawn. This may
happen even if newer versions of the package are available.

Notifications may not necessarily be provided when a package is updated or
withdrawn.

Packages placed here may not be ready for production use.

Exercise the necessary level of caution for your systems.

The addons repo is disabled by default to avoid forcing you to opt in.

------------------------------------------------------------------------------
Getting A Package Into Addons:
------------------------------------------------------------------------------
Not all requested packages will be added to the addons repo.

Please assemble all the below information before sending an email to
 SCIENTIFIC-LINUX-DEVEL@LISTSERV.FNAL.GOV

In order to evaluate a package for inclusion in the addons repo you must
provide the following for your request.  We are unable to consider requests
that are missing any of the following information:

 - Demonstration of an established code base
   - The code must have a multi-year public history with evidence of
     attention to problems.

   - If the project was well established but is now un-maintained, if you
     demonstrate your ability to maintain the code it may still be considered.
     However, you will need a public site for publishing updates, sharing
     the code, and a public method of taking bug/feature requests.  This may
     be as simple as a single web page, github, and an email address.

 - A trusted source rpm
   - It must be publicly available from the upstream maintainer or signed
     by a trusted gpg key.  We prefer both.
     - an alternate secure method of transfer may be agreed upon if there
       is sufficient need.

 - A verification that the source rpm builds within mock.
   - A current mock rpm can be found within EPEL
       - yum install yum-conf-epel
   - A mock config file for use with SL can be found in the sl-addons repo.
       - For SL6: yum --enablerepo=sl-addons install mock-sl6-config
   - Your srpm must build successfully against the 'x' tree without use of any
     external repo, such as EPEL.
       - The source should build any rpms for noarch, i686, and x86_64
         without errors.
       - Example commands:

         mock -r sl6x-i686 somepackage-1.2-3.el6.src.rpm
         mock -r sl6x-x86_64 somepackage-1.2-3.el6.src.rpm

   - For more information about mock please read
             http://fedoraproject.org/wiki/Projects/Mock

 - An accurately completed contrib_package_information YAML form.
   - This template is packaged within the SL_contrib_template rpm
     found in the addons repo.
       - yum --enablerepo=sl-addons install SL_contrib_template
          - creates /usr/share/doc/SL_contrib_template/contrib_package.yaml

       - You can verify your YAML syntax is correct with
         -  /usr/share/doc/SL_contrib_template/validate_sl_contrib_form.py
   - SL_contrib_template requires PyYAML for the validation tools included.
       - EPEL contains a build of PyYAML you can use

   - YAML is a format for structured text documents.  You can read more about
     it at:
     - http://www.yaml.org
     - http://en.wikipedia.org/wiki/YAML


Once this information is provided to SCIENTIFIC-LINUX-DEVEL@LISTSERV.FNAL.GOV
the package will be reviewed.

Submitting this information does not guarantee inclusion in the addons repo.

Package reviews may take some time.  Please be patient during this process.

------------------------------------------------------------------------------
Getting A Package From Addons Into The Main Tree:
------------------------------------------------------------------------------
This will only be done under rare conditions.

The hope is that all addons packages can be migrated to a more
appropriate repo.

For Scientific Linux 5, some packages were integrated for the ease of systems
admins.  At this time, we do not expect to add any more addons packages into
the Scientific Linux 5 main tree.

For Scientific Linux 6, there are a number of yum repositories that can be
easily loaded by a systems admin.  You can find a list of external repositories
with 'yum search yum-conf'.  Those repos are actively maintained and many are
willing to accept additional packages if you are willing to maintain them.

Before a package can be considered for integration into the main Scientific
Linux tree, you should see if one of these external repos is a better fit.
These repos often have a number of methods for regularly publishing updates.
By placing packages in these external repos, your package is available to a much
wider audience.  Useful packages should be avalible for every compatible version
of Linux.  External repos often have the structure necessary to help expand the
audience for useful packages beyond the Scientific Linux community.

If a package cannot be hosted in one of these external repos, then it may
be considered for the main Scientific Linux tree.  The exact process for
this is not yet defined.