From Fedora Project Wiki

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.)

Fedora package Upstream Review request / status
[1] EClib Review Request
G95 Not needed, we can use gcc-gfortran instead. [1]
GAP This is large (they claim you need 500M of disk)
[2] GHMM Review Request
[3] Givaro Review Request
JsMath
[4] Linbox Review Request
NetworkX Review Request
[5] pynac Review Request
[6] python-ZConfig Review Request
[7] python-zc-lockfile Review Request
[8] python-zdaemon Review Request
[9] python-ZODB3 Review Request
[10] python-zope-event Review Request
[11] python-zope-proxy Review Request
[12] python-zope-testing Review Request
Singular I (konradm) started working on this but haven't gotten very far.
sphinx, pygments [recently added to SAGE, need to check status]

Completed (reviewed and built) required components

Fedora package Upstream Review request / status Version in SAGE
cddlib Cddlib Review Request Completed, in Fedora 094b.p3
cudd CUDD Review Request Completed, in Fedora
python-cvxopt CVXOPT Review Request Completed, in Fedora 0.9.p7
flint Flint Review Request Completed, in Fedora flint-1.0.21.p0
libfpll FpLLL Review Request Completed, in Fedora 2.1.6-20071129.p5
genus2reduction Genus2reduction Review Request Completed, in Fedora genus2reduction-0.3.p4
gfan Gfan Review Request Completed, in Fedora 0.3.p4
gmp-ecm GMP-ECM Review Request completed, in Fedora 4.2.2.p1.fake
iml IML Review Request Completed, in Fedora 1.0.1.p11
jinja Jinja Already in Fedora 1.2
jmol Jmol Already in Fedora: 11.6-8.10506svn 11.6.16.p0
L-function L-function Review Request Completed, in Fedora 20080205.p2
m4ri M4RI Review Request complete, in Fedora 20080909
mpfi MPFI Review Request Completed, in Fedora 1.3.4-cvs20071125.p7
palp PALP Review Request Completed, in Fedora 1.1.p1
python-crypto PyCrypto Already packaged in Fedora (python-crypto) 2.0.1.p2
python-transaction python-transaction Review Request Completed, in Fedora
[13] PolyBoRi Review Request Complete, in Fedora 5.5
python-zope-filesystem Review Request Completed, in Fedora
python-zope-interface python-zope-interface
qd Qd Review Request Complete, in Fedora [may removed from SAGE soon] 2.3.7
symmetrica Symmetrica Review Request Completed, in Fedora 2.0.p2
sympy Sympy Review Request Completed, in Fedora 0.6.3.p0
scipy Weave Already in scipy. 0.4.9
[14] Sympow Review Request Complete, in Fedora 1.019

Packages for which SAGE is upstream

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

  • sage
  • sage_scripts
  • rubiks
  • doc
  • eclib
  • 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.