From Fedora Project Wiki

< SIGs‎ | SciTech

(→‎Dependencies (for which there is a separate upstream): Update other dependencies which have passed review)
 
(57 intermediate revisions by 12 users not shown)
Line 1: Line 1:
This is to help document the process to get SAGE (http://sagemath.org/), the open-source computer algebra/mathematics framework into Fedora.
This is to help document the process to get SageMath (also colloquially called Sage; SAGE is a retired name) (http://www.sagemath.org/), the open-source computer algebra/mathematics framework into Fedora.


__TOC__
__TOC__
== Fedora and other community efforts ==
== People ==


People interested helping in packaging/reviewing:
People interested helping in packaging/reviewing:
Line 14: Line 14:
* [[User:Danielsmw|Matthew Daniels]]
* [[User:Danielsmw|Matthew Daniels]]
* [[User:tibbs|Jason Tibbitts]]
* [[User:tibbs|Jason Tibbitts]]
* [[User:tomspur|Thomas Spura]]
* [[User:fpmurphy|Finnbarr P. Murphy]]
* [[User:pcpa|Paulo Andrade]]
* [[User:Cicku|Christopher Meng]]
* [[User:lupinix|Christian Dersch]]
* ...add your name here...
* ...add your name here...


Cross-distribution efforts:
== Sagemath Fedora package ==
 
'''The package "{{package|sagemath}}" is now available for Fedora 18 or newer.
* Debian: [http://qa.debian.org/developer.php?login=tabbott@mit.edu 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/DebianSAGE)
'''
* PcLinuxOS: http://www.mypclinuxos.com/forum/index.php?topic=1509.msg13532#msg13532
{|border="2" cellpadding="2" cellspacing="0"
 
!Name||Upstream||Review Request || Status
On fedora-devel KevinKofler points out that:
|-
 
| {{package|sagemath}} || [http://sagemath.org sagemath] || [https://bugzilla.redhat.com/show_bug.cgi?id=877651 #877651] || {{result|pass}}
<pre>
|-
One problem will be that they're bundling many third-party components which should
|}
be packaged separately:</pre> http://sage.math.washington.edu/sage/doc/html/inst/intro.html
 
<pre>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.
</pre>
 
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/
 
(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) ==
== Dependencies (for which there is a separate upstream) ==
 
SageMath calls the packages they integrate an "spkg" (Sage package). Since the goal of the project is to integrate as many third-party products as possible, dependencies aren't always updated along with upstream.
===Missing required components===
===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.)
(If you are working on packaging a component or have filed a review request bug, please note it or link to something here.)


{|
{|border="2" cellpadding="2" cellspacing="0"
!Fedora package||Upstream||Review request / status
!Name||Upstream||Review Request || Status
|-
 
<!-- |cliquer || [http://users.tkk.fi/pat/cliquer.html cliquer] || [https://bugzilla.redhat.com/show_bug.cgi?id=825494 #825494] Missing in f18 -->
|-
|-
|||[http://www.g95.org/ G95] || Not needed, we can use gcc-gfortran instead. <ref>From upstream's [http://www.sagemath.org/src/README.txt 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.</ref>
 
|lrcalc || [http://math.rutgers.edu/~asbuch/lrcalc lrcalc] || [https://bugzilla.redhat.com/show_bug.cgi?id=909510 #909510] Build Requires
|-
|-
|||[http://www-groups.dcs.st-and.ac.uk/%7Egap/ GAP] || This is large (they claim you need 500M of disk) (There's [http://ayo.sys.kth.se/kth/linux/5/extras/SRPMS/gap-4.4.12-3.src.rpm this src rpm]. -- [[User:Abo|Abo]] 14:14, 14 July 2009 (UTC))
 
|coin-or-CoinUtils || [http://projects.coin-or.org/CoinUtils CoinUtils] || [https://bugzilla.redhat.com/show_bug.cgi?id=894585 #894585] Build Requires
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name ]||[http://ghmm.sourceforge.net/ GHMM]||[https://bugzilla.redhat.com/show_bug.cgi?id=491490 Review Request]
 
|coin-or-Osi || [http://projects.coin-or.org/Osi Osi] || [https://bugzilla.redhat.com/show_bug.cgi?id=894586 #894586] Build Requires
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://ljk.imag.fr/CASYS/LOGICIELS/givaro/ Givaro]||[https://bugzilla.redhat.com/show_bug.cgi?id=475065 Review Request]
 
|coin-or-Clp || [http://projects.coin-or.org/Clp Clp] || [https://bugzilla.redhat.com/show_bug.cgi?id=894587 #894587] Build Requires
|-
|-
|||[http://www.math.union.edu/%7Edpvc/jsMath/ JsMath]||
 
|coin-or-Cgl || [http://projects.coin-or.org/Cgl Cgl] || [https://bugzilla.redhat.com/show_bug.cgi?id=894588 #894588] Build Requires
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://www.linalg.org/ Linbox]||[https://bugzilla.redhat.com/show_bug.cgi?id=476299 Review Request]
 
|coin-or-Cbc || [http://projects.coin-or.org/Cbc Cbc] || [https://bugzilla.redhat.com/show_bug.cgi?id=894597 #894597] Build Requires
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://pynac.sagemath.org/ pynac]||[https://bugzilla.redhat.com/show_bug.cgi?id=491545 Review Request]
 
|fes || [http://www.lifl.fr/~bouillag/download fes] || [https://bugzilla.redhat.com/show_bug.cgi?id=914936 #914936] (Optional) Build Requires
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://pypi.python.org/pypi/zdaemon/ python-zdaemon]||[https://bugzilla.redhat.com/show_bug.cgi?id=476527 Review Request]
|}
 
===Packages that need changes to work with sagemath===
{|
!Fedora package||Upstream||Request for Enhancement / status
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://www.zope.org/Wikis/ZODB/ python-ZODB3]||[https://bugzilla.redhat.com/show_bug.cgi?id=476600 Review Request]
 
<!-- |[http://admin.fedoraproject.org/pkgdb/acls/name/python-matplotlib python-matplotlib] || [http://sourceforge.net/projects/matplotlib matplotlib] || [https://bugzilla.redhat.com/show_bug.cgi?id=837156 #837156] Requires -->
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/ ]||[http://pypi.python.org/pypi/zope.proxy/ python-zope-proxy]||[https://bugzilla.redhat.com/show_bug.cgi?id=476523 Review Request]
 
|-
|-
|||[http://www.singular.uni-kl.de/ Singular] || I (konradm) started working on this but haven't gotten very far. (There's a [http://svn.mandriva.com/svn/packages/cooker/singular/current/ a package in Mandriva] to start from. -- [[User:Abo|Abo]] 14:10, 14 July 2009 (UTC))
|}
|}


===Completed (reviewed and built) required components===
===Completed (reviewed and built) required components===
{|
{|border="2" cellpadding="2" cellspacing="0"
|-
|-
!Fedora package||Upstream||Review request / status||Version in SAGE
!Fedora package||Upstream||Review request / status||Version in SAGE
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/cddlib cddlib]||[http://www.ifor.math.ethz.ch/%7Efukuda/cdd_home Cddlib]||[https://bugzilla.redhat.com/show_bug.cgi?id=464074 Review Request Completed, in Fedora]||094b.p3
|[http://admin.fedoraproject.org/pkgdb/acls/name/cddlib cddlib]||[http://www.ifor.math.ethz.ch/%7Efukuda/cdd_home Cddlib]||[https://bugzilla.redhat.com/show_bug.cgi?id=464074 Review Request Completed, in Fedora]||094f.p11
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/cudd cudd]||[http://vlsi.colorado.edu/~fabio/CUDD/ CUDD]||[https://bugzilla.redhat.com/show_bug.cgi?id=476329 Review Request Completed, in Fedora]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/cliquer cliquer]||[http://users.tkk.fi/pat/cliquer.html Cliquer]||[https://bugzilla.redhat.com/show_bug.cgi?id=825494 Review Request Completed, in Fedora]||1.2.p11
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/eclib eclib ]||[http://www.warwick.ac.uk/staff/J.E.Cremona/ EClib]||[https://bugzilla.redhat.com/show_bug.cgi?id=476398 Review Request Completed, in Fedora]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/cudd cudd]||[http://vlsi.colorado.edu/~fabio/CUDD/ CUDD]||[https://bugzilla.redhat.com/show_bug.cgi?id=476329 Review Request Completed, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-networkx python-networkx]||[https://networkx.lanl.gov/wiki NetworkX] || [https://bugzilla.redhat.com/show_bug.cgi?id=476350 Review Request Complete, in Fedora]||0.99
|[http://admin.fedoraproject.org/pkgdb/acls/name/eclib eclib ]||[http://www.warwick.ac.uk/staff/J.E.Cremona/ EClib]||[https://bugzilla.redhat.com/show_bug.cgi?id=476398 Review Request Completed, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-cvxopt python-cvxopt]||[http://abel.ee.ucla.edu/cvxopt CVXOPT]||[https://bugzilla.redhat.com/show_bug.cgi?id=466717 Review Request Completed, in Fedora]||0.9.p7
|[http://admin.fedoraproject.org/pkgdb/acls/name/givaro givaro ]||[http://ljk.imag.fr/CASYS/LOGICIELS/givaro/ Givaro]||[https://bugzilla.redhat.com/show_bug.cgi?id=475065 Review Request Completed, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/flint flint]||[http://www.flintlib.org/ Flint]||[https://bugzilla.redhat.com/show_bug.cgi?id=473744 Review Request Completed, in Fedora]||[http://www.sagemath.org/packages/standard/flint-1.0.21.p0.spkg flint-1.0.21.p0]
|[http://admin.fedoraproject.org/pkgdb/acls/name/python-networkx python-networkx]||[https://networkx.lanl.gov/wiki NetworkX] || [https://bugzilla.redhat.com/show_bug.cgi?id=476350 Review Request Complete, in Fedora]||1.6
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/libfplll libfpll]||[http://perso.ens-lyon.fr/damien.stehle/english.html#software FpLLL]||[https://bugzilla.redhat.com/show_bug.cgi?id=466655 Review Request Completed, in Fedora]||2.1.6-20071129.p5
|[http://admin.fedoraproject.org/pkgdb/acls/name/python-cvxopt python-cvxopt]||[http://abel.ee.ucla.edu/cvxopt CVXOPT]||[https://bugzilla.redhat.com/show_bug.cgi?id=466717 Review Request Completed, in Fedora]||1.1.5
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/genus2reduction genus2reduction]||[http://www.math.u-bordeaux.fr/%7Eliu/G2R/ Genus2reduction]||[https://bugzilla.redhat.com/show_bug.cgi?id=475322 Review Request Completed, in Fedora]||[http://www.sagemath.org/packages/standard/genus2reduction-0.3.p4.spkg genus2reduction-0.3.p4]
|[http://admin.fedoraproject.org/pkgdb/acls/name/flint flint]||[http://www.flintlib.org/ Flint]||[https://bugzilla.redhat.com/show_bug.cgi?id=473744 Review Request Completed, in Fedora]||[http://www.sagemath.org/packages/standard/flint-1.5.2.p2.spkg flint-1.5.2.p2]
|-
|-
||[http://admin.fedoraproject.org/pkgdb/packages/name/gfan gfan]||[http://www.math.tu-berlin.de/%7Ejensen/software/gfan/gfan.html Gfan]||[https://bugzilla.redhat.com/show_bug.cgi?id=475055 Review Request Completed, in Fedora]||0.3.p4
|[http://admin.fedoraproject.org/pkgdb/acls/name/libfplll libfpll]||[http://perso.ens-lyon.fr/damien.stehle/english.html#software FpLLL]||[https://bugzilla.redhat.com/show_bug.cgi?id=466655 Review Request Completed, in Fedora]||3.0.12.p2
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/gmp-ecm gmp-ecm]||[http://gforge.inria.fr/projects/ecm/ GMP-ECM]||[https://bugzilla.redhat.com/show_bug.cgi?id=473330 Review Request completed, in Fedora]||4.2.2.p1.fake
|[http://admin.fedoraproject.org/pkgdb/acls/name/genus2reduction genus2reduction]||[http://www.math.u-bordeaux.fr/%7Eliu/G2R/ Genus2reduction]||[https://bugzilla.redhat.com/show_bug.cgi?id=475322 Review Request Completed, in Fedora]||[http://www.sagemath.org/packages/standard/genus2reduction-0.3.p8.spkg genus2reduction-0.3.p8]
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/iml iml]||[http://www.cs.uwaterloo.ca/%7Ez4chen/iml.html IML]||[https://bugzilla.redhat.com/show_bug.cgi?id=466692 Review Request Completed, in Fedora]||1.0.1.p11
||[http://admin.fedoraproject.org/pkgdb/acls/name/gfan gfan]||[http://www.math.tu-berlin.de/%7Ejensen/software/gfan/gfan.html Gfan]||[https://bugzilla.redhat.com/show_bug.cgi?id=475055 Review Request Completed, in Fedora]||0.4plus.p3
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-jinja jinja]||[http://jinja.pocoo.org/1/ Jinja]||Already in Fedora||1.2
|[http://admin.fedoraproject.org/pkgdb/acls/name/ghmm ghmm]||[http://ghmm.sourceforge.net/ GHMM]||[https://bugzilla.redhat.com/show_bug.cgi?id=491490 Review Request Complete, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/jmol jmol]||[http://jmol.sourceforge.net/ Jmol]||Already in Fedora: 11.6-8.10506svn||11.6.16.p0
|[http://admin.fedoraproject.org/pkgdb/acls/name/gmp-ecm gmp-ecm]||[http://gforge.inria.fr/projects/ecm/ GMP-ECM]||[https://bugzilla.redhat.com/show_bug.cgi?id=473330 Review Request completed, in Fedora]||6.3.p8
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/L-function L-function]||[http://pmmac03.math.uwaterloo.ca/%7Emrubinst/L_function_public/CODE/ L-function]||[https://bugzilla.redhat.com/show_bug.cgi?id=470702 Review Request Completed, in Fedora]||20080205.p2
|[http://admin.fedoraproject.org/pkgdb/acls/name/iml iml]||[http://www.cs.uwaterloo.ca/%7Ez4chen/iml.html IML]||[https://bugzilla.redhat.com/show_bug.cgi?id=466692 Review Request Completed, in Fedora]||1.0.1.p14
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/m4ri m4ri]||[http://m4ri.sagemath.org/ M4RI]||[https://bugzilla.redhat.com/show_bug.cgi?id=470173 Review Request complete, in Fedora]||20080909
|[http://admin.fedoraproject.org/pkgdb/acls/name/jmol jmol]||[http://jmol.sourceforge.net/ Jmol]||Already in Fedora: 11.6-8.10506svn||12.3.27.p3
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/mpfi mpfi]||[http://perso.ens-lyon.fr/nathalie.revol/software.html MPFI]||[https://bugzilla.redhat.com/show_bug.cgi?id=466688 Review Request Completed, in Fedora]||1.3.4-cvs20071125.p7
|[http://admin.fedoraproject.org/pkgdb/acls/name/L-function L-function]||[http://pmmac03.math.uwaterloo.ca/%7Emrubinst/L_function_public/CODE/ L-function]||[https://bugzilla.redhat.com/show_bug.cgi?id=470702 Review Request Completed, in Fedora]||1.23.p10
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/palp palp]||[http://hep.itp.tuwien.ac.at/%7Ekreuzer/CY/CYpalp.html PALP]||[https://bugzilla.redhat.com/show_bug.cgi?id=476351 Review Request Completed, in Fedora]||1.1.p1
|[http://admin.fedoraproject.org/pkgdb/acls/name/linbox linbox]||[http://www.linalg.org/ Linbox]||[https://bugzilla.redhat.com/show_bug.cgi?id=476299 Review Request Completed, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-crypto python-crypto]||[http://www.dlitz.net/software/pycrypto/ PyCrypto] || Already packaged in Fedora (python-crypto)||2.0.1.p2
|[http://admin.fedoraproject.org/pkgdb/acls/name/m4ri m4ri]||[http://m4ri.sagemath.org/ M4RI]||[https://bugzilla.redhat.com/show_bug.cgi?id=470173 Review Request complete, in Fedora]||20120613
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-transaction python-transaction]||[http://pypi.python.org/pypi/transaction python-transaction]||[https://bugzilla.redhat.com/show_bug.cgi?id=468222 Review Request Completed, in Fedora]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/mpfi mpfi]||[http://perso.ens-lyon.fr/nathalie.revol/software.html MPFI]||[https://bugzilla.redhat.com/show_bug.cgi?id=466688 Review Request Completed, in Fedora]||1.5.1
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-polybori python-polybori]||[http://polybori.sourceforge.net/ PolyBoRi]||[https://bugzilla.redhat.com/show_bug.cgi?id=476346 Review Request Complete, in Fedora]||5.5
|[http://admin.fedoraproject.org/pkgdb/acls/name/palp palp]||[http://hep.itp.tuwien.ac.at/%7Ekreuzer/CY/CYpalp.html PALP]||[https://bugzilla.redhat.com/show_bug.cgi?id=476351 Review Request Completed, in Fedora]||2.1.p0
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-ZConfig python-ZConfig]||[http://pypi.python.org/pypi/ZConfig/ python-ZConfig]||[https://bugzilla.redhat.com/show_bug.cgi?id=476528 Review Request Completed, in Fedora 12]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/pynac pynac]||[http://pynac.sagemath.org/ pynac]||[https://bugzilla.redhat.com/show_bug.cgi?id=529198 Review Request Completed, Fedora]||0.2.5
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-zope-filesystem python-zope-filesystem]||||[https://bugzilla.redhat.com/show_bug.cgi?id=476475 Review Request Completed, in Fedora]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/python-crypto python-crypto]||[http://www.dlitz.net/software/pycrypto/ PyCrypto] || Already packaged in Fedora (python-crypto)||2.1.0
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-zope-interface python-zope-interface]||python-zope-interface||||
|[http://admin.fedoraproject.org/pkgdb/acls/name/python-polybori python-polybori]||[http://polybori.sourceforge.net/ PolyBoRi]||[https://bugzilla.redhat.com/show_bug.cgi?id=476346 Review Request Complete, in Fedora]||0.8.2
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-zope-testing python-zope-testing ]||[http://pypi.python.org/pypi/zope.testing/ python-zope-testing]||[https://bugzilla.redhat.com/show_bug.cgi?id=476524 Review Request Completed, in Fedora 12]||
|[http://admin.fedoraproject.org/pkgdb/acls/name/python-ZODB3 python-ZODB3]||[http://www.zope.org/Wikis/ZODB/ python-ZODB3]||[https://bugzilla.redhat.com/show_bug.cgi?id=476600 Review Request Complete, in Fedora]||
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/qd qd]||[http://www.cs.berkeley.edu/%7Eyozo/ Qd]||[https://bugzilla.redhat.com/show_bug.cgi?id=470325 Review Request Complete, in Fedora] [may removed from SAGE soon]||2.3.7
|[http://admin.fedoraproject.org/pkgdb/acls/name/surf-geometry surf]||[http://surf.sourceforge.net/ Surf]||[https://bugzilla.redhat.com/show_bug.cgi?id=840244 Review Request Completed, in Fedora]||1.1.0
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/symmetrica symmetrica]||[http://www.mathe2.uni-bayreuth.de/axel/symneu_engl.html Symmetrica]||[https://bugzilla.redhat.com/show_bug.cgi?id=475410 Review Request Completed, in Fedora]||2.0.p2
|[http://admin.fedoraproject.org/pkgdb/acls/name/symmetrica symmetrica]||[http://www.mathe2.uni-bayreuth.de/axel/symneu_engl.html Symmetrica]||[https://bugzilla.redhat.com/show_bug.cgi?id=475410 Review Request Completed, in Fedora]||2.0.p7
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/sympy sympy]||[http://code.google.com/p/sympy/ Sympy]||[https://bugzilla.redhat.com/show_bug.cgi?id=466660 Review Request Completed, in Fedora]||0.6.3.p0
|[http://admin.fedoraproject.org/pkgdb/acls/name/sympy sympy]||[http://code.google.com/p/sympy/ Sympy]||[https://bugzilla.redhat.com/show_bug.cgi?id=466660 Review Request Completed, in Fedora]||0.7.1.p0
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/scipy scipy]||[http://www.scipy.org/Weave Weave]||Already in scipy.||0.4.9
|[http://admin.fedoraproject.org/pkgdb/acls/name/scipy scipy]||[http://www.scipy.org/Weave Weave]||Already in scipy.||0.9.p1
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/sympow sympow]||[http://www.maths.bris.ac.uk/%7Emamjw/ Sympow]||[https://bugzilla.redhat.com/show_bug.cgi?id=476406 Review Request Complete, in Fedora]||1.019
|[http://admin.fedoraproject.org/pkgdb/acls/name/sympow sympow]||[http://www.maths.bris.ac.uk/%7Emamjw/ Sympow]||[https://bugzilla.redhat.com/show_bug.cgi?id=476406 Review Request Complete, in Fedora]||1.018.1.p11
|}
 
== Packages for which SAGE is upstream ==
Latest versions found in https://git.sagemath.org/sage.git/tree/build/pkgs that may be worth packaging as separate SRPMS or different subpackages:
{|border="2" cellpadding="2" cellspacing="0"
| sage || could be named python-sagemath for %{python_sitearch}/sage contents but may not be fully functional without a few "system overrides" in $SAGE_ROOT/site-packages
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-sphinx sphinx]||[http://sphinx.pocoo.org/ Sphinx]||[https://bugzilla.redhat.com/show_bug.cgi?id=439337 Review Request Complete, in Fedora]||
 
| sage_scripts || the main sagemath package requiring all python modules
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-pygments pygments]||[http://pygments.org/ Pygments]||[https://bugzilla.redhat.com/show_bug.cgi?id=246312 Review Request Complete, in Fedora]||
 
| rubiks || there are 3 solvers, but only 2 with functional upstream link, therefore should use sagemath spkg
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-zc-lockfile python-zc-lockfile]||[http://pypi.python.org/pypi/zc.lockfile/ zc-lockfile]||[https://bugzilla.redhat.com/show_bug.cgi?id=476525 Review Request Complete, in Fedora]||
 
| doc || can be made optional in a sagemath-doc package for users that would prefer to access documentation from elsewhere or are good enough with the python docstrings
|-
 
| extcode || interfaces to other systems or customizations, could/should be made an optional, but a very small package
|-
 
| notebook || %{python_sitearch}/sagenb contents, needs some testing, but may be useful if one wants only the command line interface
|-
 
| elliptic_curves, conway_polynomials, graphs, polytopes_db || ZoDB databases used internally by SAGE
|-
 
| flintqs || spkg because original upstream deprecated it
|-
|-
|[http://admin.fedoraproject.org/pkgdb/packages/name/python-zope-event python-zope-event]||[http://pypi.python.org/pypi/zope.event/ python-zope-event]||[https://bugzilla.redhat.com/show_bug.cgi?id=476526 Review Request Complete, in Fedora]
|}
|}


== Packages for which SAGE is upstream ==
==Cross-distribution efforts==
Latest versions found in http://www.sagemath.org/packages/standard/
* Debian: [http://qa.debian.org/developer.php?login=tabbott@mit.edu Tim Abbott's list of SAGE-related Debian packages]. Abbot told [[User:Mrennekamp]] that he stopped working on Debian in 2010. However, it seems that a person within the SageMath project is working on providing SageMath in its own live distro: https://wiki.sagemath.org/SageDebianLive.
* sage
* PcLinuxOS: http://www.mypclinuxos.com/forum/index.php?topic=1509.msg13532#msg13532
* sage_scripts
* Mandriva: http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/sagemath/
* rubiks
 
* doc
==Historical discussion==
* eclib
On fedora-devel KevinKofler points out that:
* examples
 
* extcode
<pre>
* elliptic_curves, conway_polynomials, graphs, polytopes_db (ZoDB databases used internally by SAGE)
One problem will be that they're bundling many third-party components which should
* flintqs (upstream because original upstream deprecated it)
be packaged separately:</pre> http://sage.math.washington.edu/sage/doc/html/inst/intro.html
<pre>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.
</pre>
 
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)


== References ==
A wiki for included SageMath packages is at https://wiki.sagemath.org/spkg.
<references/>
(See also: http://wiki.sagemath.org/days6/sprint/debian)


[[Category:SciTech_SIG|SAGE]]
[[Category:SciTech_SIG|SAGE]]

Latest revision as of 21:01, 27 January 2021

This is to help document the process to get SageMath (also colloquially called Sage; SAGE is a retired name) (http://www.sagemath.org/), the open-source computer algebra/mathematics framework into Fedora.

People

People interested helping in packaging/reviewing:

Sagemath Fedora package

The package "sagemath" is now available for Fedora 18 or newer.

Name Upstream Review Request Status
sagemath sagemath #877651
Pass pass

Dependencies (for which there is a separate upstream)

SageMath calls the packages they integrate an "spkg" (Sage package). Since the goal of the project is to integrate as many third-party products as possible, dependencies aren't always updated along with 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.)

Name Upstream Review Request Status
lrcalc lrcalc #909510 Build Requires
coin-or-CoinUtils CoinUtils #894585 Build Requires
coin-or-Osi Osi #894586 Build Requires
coin-or-Clp Clp #894587 Build Requires
coin-or-Cgl Cgl #894588 Build Requires
coin-or-Cbc Cbc #894597 Build Requires
fes fes #914936 (Optional) Build Requires

Packages that need changes to work with sagemath

Fedora package Upstream Request for Enhancement / status

Completed (reviewed and built) required components

Fedora package Upstream Review request / status Version in SAGE
cddlib Cddlib Review Request Completed, in Fedora 094f.p11
cliquer Cliquer Review Request Completed, in Fedora 1.2.p11
cudd CUDD Review Request Completed, in Fedora
eclib EClib Review Request Completed, in Fedora
givaro Givaro Review Request Completed, in Fedora
python-networkx NetworkX Review Request Complete, in Fedora 1.6
python-cvxopt CVXOPT Review Request Completed, in Fedora 1.1.5
flint Flint Review Request Completed, in Fedora flint-1.5.2.p2
libfpll FpLLL Review Request Completed, in Fedora 3.0.12.p2
genus2reduction Genus2reduction Review Request Completed, in Fedora genus2reduction-0.3.p8
gfan Gfan Review Request Completed, in Fedora 0.4plus.p3
ghmm GHMM Review Request Complete, in Fedora
gmp-ecm GMP-ECM Review Request completed, in Fedora 6.3.p8
iml IML Review Request Completed, in Fedora 1.0.1.p14
jmol Jmol Already in Fedora: 11.6-8.10506svn 12.3.27.p3
L-function L-function Review Request Completed, in Fedora 1.23.p10
linbox Linbox Review Request Completed, in Fedora
m4ri M4RI Review Request complete, in Fedora 20120613
mpfi MPFI Review Request Completed, in Fedora 1.5.1
palp PALP Review Request Completed, in Fedora 2.1.p0
pynac pynac Review Request Completed, Fedora 0.2.5
python-crypto PyCrypto Already packaged in Fedora (python-crypto) 2.1.0
python-polybori PolyBoRi Review Request Complete, in Fedora 0.8.2
python-ZODB3 python-ZODB3 Review Request Complete, in Fedora
surf Surf Review Request Completed, in Fedora 1.1.0
symmetrica Symmetrica Review Request Completed, in Fedora 2.0.p7
sympy Sympy Review Request Completed, in Fedora 0.7.1.p0
scipy Weave Already in scipy. 0.9.p1
sympow Sympow Review Request Complete, in Fedora 1.018.1.p11

Packages for which SAGE is upstream

Latest versions found in https://git.sagemath.org/sage.git/tree/build/pkgs that may be worth packaging as separate SRPMS or different subpackages:

sage could be named python-sagemath for %{python_sitearch}/sage contents but may not be fully functional without a few "system overrides" in $SAGE_ROOT/site-packages
sage_scripts the main sagemath package requiring all python modules
rubiks there are 3 solvers, but only 2 with functional upstream link, therefore should use sagemath spkg
doc can be made optional in a sagemath-doc package for users that would prefer to access documentation from elsewhere or are good enough with the python docstrings
extcode interfaces to other systems or customizations, could/should be made an optional, but a very small package
notebook %{python_sitearch}/sagenb contents, needs some testing, but may be useful if one wants only the command line interface
elliptic_curves, conway_polynomials, graphs, polytopes_db ZoDB databases used internally by SAGE
flintqs spkg because original upstream deprecated it

Cross-distribution efforts

Historical discussion

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)

A wiki for included SageMath packages is at https://wiki.sagemath.org/spkg. (See also: http://wiki.sagemath.org/days6/sprint/debian)