From Fedora Project Wiki

< SIGs‎ | SciTech
Revision as of 02:29, 19 February 2009 by Alexlan (talk | contribs) (Convert into tables (need to fix pkgdb links yet))

This is to help document the process to get SAGE (http://sagemath.org/), the open-source computer algebra/mathematics framework into Fedora.

Fedora and other community efforts

People interested helping in packaging/reviewing:

Cross-distribution efforts:

On fedora-devel KevinKofler points out that:

One problem will be that they're bundling many third-party components which should
be packaged separately:

http://sage.math.washington.edu/sage/doc/html/inst/intro.html

So the first step is to track down which of these dependencies are in Fedora
already, whether they need any patches to work with SAGE, whether they are
build-time (BuildRequires) dependencies, run-time (Requires) dependencies or
both, whether they're required or optional and package those which are not in
Fedora yet.

He suggests the following order:

  1. package required build-time dependencies
  2. package required run-time dependencies
  3. package as many optional build-time dependencies as possible
  4. package SAGE itself
  5. package optional run-time dependencies (and decide on a case by case basis whether it makes sense to add them as actual Requires: dependencies to the package or not)

Required components that SAGE ships with: http://sagemath.org/packages/standard/

Optional components that SAGE ships with: http://sagemath.org/packages/optional/

(a manual list with descriptions which may vary somewhat with respect to the above is at http://sagemath.org/links-components.html) (See also: http://wiki.sagemath.org/days6/sprint/debian)

Dependencies (for which there is a separate upstream)

Missing required components

(If you are working on packaging a component or have filed a review request bug, please note it or link to something here.)

[1] Cddlib Review Request
[2] CUDD Review Request
[3] CVXOPT Review Request
[4] EClib Review Request
[5] Flint Review Request
G95 Not needed, we can use gcc-gfortran instead. [1]
GAP This is large (they claim you need 500M of disk)
[6] Genus2reduction Review Request
[7] Gfan Review Request
[8] Givaro Review Request
[9] Lcalc Review Request
[10] Linbox Review Request
NetworkX Review Request
[11] PolyBoRi Review Request
[12] python-transaction Review Request
[13] python-ZConfig Review Request
[14] python-zc-lockfile Review Request
[15] python-zdaemon Review Request
[16] python-ZODB3 Review Request
[17] python-zope-event Review Request
[18] python-zope-proxy Review Request
[19] python-zope-testing Review Request
[20] Qd Review Request [may removed from SAGE soon]
  • Singular I'm also working on this (konradm) and some deps.
[21] Sympow Review Request
ghmm, jinja, jmol, sphinx, pynac, pygments [recently added to SAGE, need to check status]

Completed (reviewed and built) required components

Fedora package Upstream URL Review request
[22] FpLLL Review Request Completed, in Fedora
[23] GMP-ECM Review Request completed, in Fedora
[24] IML Review Request Completed, in Fedora
[25] M4RI Review Request complete, in Fedora
[26] MPFI Review Request Completed, in Fedora
[27] PALP Review Request Completed, in Fedora
[http://admin.fedoraproject.org/pkgdb/packages/name/python-crypto PyCrypto Already packaged in Fedora (python-crypto)
[28] Review Request Completed, in Fedora
[29] python-zope-interface
[30] Symmetrica Review Request Completed, in Fedora
[31] Sympy Review Request Completed, in Fedora
[32] Weave Already in scipy.

Packages for which SAGE is upstream

Latest versions found in http://www.sagemath.org/packages/standard/

  • sage
  • sage_scripts
  • rubiks
  • doc
  • examples
  • extcode
  • elliptic_curves, conway_polynomials, graphs, polytopes_db (ZoDB databases used internally by SAGE)
  • flintqs (upstream because original upstream deprecated it)

References

  1. From upstream's readme.txt: "If you're using Fortran on a platform without g95 binaries included with Sage, e.g., Itanium, you must use a system-wide gfortran.". So they support gfortran and even system-wide installations of it.