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:
- Rex Dieter
- Alex Lancaster
- Manuel Wolfshant
- Kevin Kofler
- Neal Becker
- Conrad Meyer
- Matthew Daniels
- Jason Tibbitts
- Thomas Spura
- Finnbarr P. Murphy
- ...add your name here...
- Debian: Tim Abbott's list of SAGE-related Debian packages. Some of these Debian packages may include some patches for the dependencies that may be required for SAGE that have not yet been pushed upstream (older unmaintained wiki page http://wiki.sagemath.org/devel/DebianSage)
- PcLinuxOS: http://www.mypclinuxos.com/forum/index.php?topic=1509.msg13532#msg13532
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:
- package required build-time dependencies
- package required run-time dependencies
- package as many optional build-time dependencies as possible
- package SAGE itself
- 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/
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|
|GAP||This is large (they claim you need 500M of disk) (There's this src rpm. -- Abo 14:14, 14 July 2009 (UTC))|
|Singular||I (konradm) started working on this but haven't gotten very far. (There's a a package in Mandriva to start from. -- Abo 14:10, 14 July 2009 (UTC))|
Completed (reviewed and built) required components
Packages for which SAGE is upstream
Latest versions found in http://www.sagemath.org/packages/standard/
- eclib (already packaged separately, see above)
- elliptic_curves, conway_polynomials, graphs, polytopes_db (ZoDB databases used internally by SAGE)
- flintqs (upstream because original upstream deprecated it)
Some of those may or may not be worth packaging as separate SRPMs.
- 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. G95 and gfortran are 2 different implementations of Fortran 95 based on GCC (and originally derived from the same code). See also gfortran is not g95. Note that the SAGE source tarballs do not include a Fortran compiler, only the binary tarballs do.