You are here

Package Teaching & Research Software for Fedora

Project ID: 
96
Current stage: 
Manager: 
Unit: 
What: 

Description: Review and create Fedora compliant RPM packages for all the current teaching and research software (for which the license is suitable) so they can be sent upstream into the Fedora Extras repository.

Deliverables: As much as possible of our teaching, research (and baseline) software to be part of the Fedora Extras repository. Our .rpms lists updated to pull software from Fedora Extras rather than our local world repository.

Why: 

Customer: Us

Case statement: By placing our software upstream in Fedora Extras we get a number of benefits:

  • automatic (re)builds for all architectures/releases of Fedora
  • automatic (re)builds for the next testing release of Fedora
  • automatic notification of failed builds with logs
  • changes in dependencies causing build failures will be automatically notified to us as and when they happen
  • packages in Fedora Extras can easily be pushed into EPEL and hence SL5
    Extras
  • community contribution to broken packages, others may pick up
    support for packages, etc.
  • raise profile of Informatics in the Fedora (and wider) community
  • complying with Fedora packaging guidelines will raise our own packaging
    standards (plus should make packages more portable from platform to platform
    and distribution to distribution)
  • will reduce the amount of time spent on the yearly teaching/research
    software porting exercise
  • rest of the University can pick up packages from Informatics easily if they
    use a Fedora based distribution
  • easier for users with self-managed linux based machines to pick up our
    research and teaching software (eg. to use at home)
When: 

Status:

Timescales: Over the next year or so (potentially longer).

Priority: Low - nothing is currently broken.

Time: Approximately 8 FTE weeks. We have over 200 local teaching/research software packages although a fair percentage of those will be fc6/9 rebuilds for sl5 with no other change.

How: 

Proposal: See plan. But intention is that as packages are upgraded or new packages requested then they should be done to Fedora Packaging conventions and sent upstream and existing packages can be done only as a lower priority background task.

Resources: Time alone.

Plan:

  • Create a fedora-packager environment under SL5
  • Transition to using our local mock and koji for testing
  • Transition each package in turn
Other: 

Dependencies: Local build infrastructure for testing - ie. mock and koji.

Risks:

  • currently the only two people who can upload packages to Fedora Extras are sxw and timc - this doesn't stop others doing the work, with final review and submission via timc or sxw (anyone else could also go through the review and sponsorship stages)
  • we move to an RPM but non Fedora based distribution - we can still pull all the RPMs from Extras
  • we move to a non-RPM based distribution - packages compliant with Fedora Extras should be easier to port
  • Fedora Extras goes away - unlikely in the medium term
  • we won't get all our packages compliant, so we will have to continue to maintain some locally (we would have to do this anyway though due to licensing restrictions on some software)
  • our support load increases from external sites using our packages - the Fedora Extras mantra says we are under no obligation to provide any support for packages in Extras so unless we need to make the fix locally as well we can safely ignore any and all external support requests

Milestones

Proposed date Achieved date Name Description
2008-12-09 2008-11-30 Documentation Write a step-by-step guide to creating a Fedora compliant package suitable as much as possible for CSO level.
2009-04-30 2009-04-30 Evaluation Arrange for support to build some test packages following the documentation. Refine documentation as appropriate.
2009-06-30 Procedural Docs Write procedural documentation of the Fedora package submission and review process and define internal procedures to follow.
2009-06-30 2009-05-31 List Create a list of current teaching and research software which is entirely locally packaged (not using a modified external 3rd party RPM/SPEC) for support staff to work through.
2009-07-31 Packaging Support staff develop packages for all the software suitable for pushing upstream to Fedora repository following documentation. Packages are submitted and reviewed following procedural documentation. As packages appear upstream change our package lists to use the upstream versions instead of the local versions.