(→Dependencies (for which there is a separate upstream): Fix pkgdb links) |
Mrennekamp (talk | contribs) (→People) |
||
(95 intermediate revisions by 17 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__ | ||
== | == People == | ||
People interested helping in packaging/reviewing: | People interested helping in packaging/reviewing: | ||
Line 12: | Line 12: | ||
* [[NealBecker|Neal Becker]] | * [[NealBecker|Neal Becker]] | ||
* [[User:Konradm|Conrad Meyer]] | * [[User:Konradm|Conrad Meyer]] | ||
* [[User:Danielsmw|Matthew Daniels]] | |||
* [[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... | ||
== Sagemath Fedora package == | |||
'''The package "{{package|sagemath}}" is now available for Fedora 18 or newer. | |||
''' | |||
{|border="2" cellpadding="2" cellspacing="0" | |||
!Name||Upstream||Review Request || Status | |||
|- | |||
| {{package|sagemath}} || [http://sagemath.org sagemath] || [https://bugzilla.redhat.com/show_bug.cgi?id=877651 #877651] || {{result|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.) | |||
{|border="2" cellpadding="2" cellspacing="0" | |||
!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 --> | |||
|- | |||
|lrcalc || [http://math.rutgers.edu/~asbuch/lrcalc lrcalc] || [https://bugzilla.redhat.com/show_bug.cgi?id=909510 #909510] Build Requires | |||
|- | |||
|coin-or-CoinUtils || [http://projects.coin-or.org/CoinUtils CoinUtils] || [https://bugzilla.redhat.com/show_bug.cgi?id=894585 #894585] Build Requires | |||
|- | |||
|coin-or-Osi || [http://projects.coin-or.org/Osi Osi] || [https://bugzilla.redhat.com/show_bug.cgi?id=894586 #894586] Build Requires | |||
|- | |||
|coin-or-Clp || [http://projects.coin-or.org/Clp Clp] || [https://bugzilla.redhat.com/show_bug.cgi?id=894587 #894587] Build Requires | |||
|- | |||
# | |||
|coin-or-Cgl || [http://projects.coin-or.org/Cgl Cgl] || [https://bugzilla.redhat.com/show_bug.cgi?id=894588 #894588] Build Requires | |||
|- | |||
|coin-or-Cbc || [http://projects.coin-or.org/Cbc Cbc] || [https://bugzilla.redhat.com/show_bug.cgi?id=894597 #894597] Build Requires | |||
|- | |||
|fes || [http://www.lifl.fr/~bouillag/download fes] || [https://bugzilla.redhat.com/show_bug.cgi?id=914936 #914936] (Optional) Build Requires | |||
|- | |||
|} | |||
== | ===Packages that need changes to work with sagemath=== | ||
{| | |||
!Fedora package||Upstream||Request for Enhancement / status | |||
|- | |||
= | <!-- |[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 --> | ||
|- | |||
|- | |||
|} | |||
{| | ===Completed (reviewed and built) required components=== | ||
{|border="2" cellpadding="2" cellspacing="0" | |||
|- | |- | ||
| | !Fedora package||Upstream||Review request / status||Version in SAGE | ||
|- | |- | ||
|[http://admin.fedoraproject.org/pkgdb/ | |[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/ | |[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/ | |[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/ | |[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/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/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/ | |[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/ | |[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/ | |[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/ | |[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/ | ||[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/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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/ | |[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/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/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/ | |[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/ | |[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/ | |[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/ | |[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 | |||
|- | |- | ||
| | |||
| 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== | ||
* 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. | |||
* | * PcLinuxOS: http://www.mypclinuxos.com/forum/index.php?topic=1509.msg13532#msg13532 | ||
* | * Mandriva: http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/sagemath/ | ||
==Historical discussion== | |||
On fedora-devel KevinKofler points out that: | |||
<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) | |||
A wiki for included SageMath packages is at https://wiki.sagemath.org/spkg. | |||
(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:
- Rex Dieter
- Alex Lancaster
- Manuel Wolfshant
- Kevin Kofler
- Neal Becker
- Conrad Meyer
- Matthew Daniels
- Jason Tibbitts
- Thomas Spura
- Finnbarr P. Murphy
- Paulo Andrade
- Christopher Meng
- Christian Dersch
- ...add your name here...
Sagemath Fedora package
The package "sagemath
" is now available for Fedora 18 or newer.
Name | Upstream | Review Request | Status |
---|---|---|---|
sagemath |
sagemath | #877651 |
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
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
- Debian: 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.
- PcLinuxOS: http://www.mypclinuxos.com/forum/index.php?topic=1509.msg13532#msg13532
- Mandriva: http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/sagemath/
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:
- 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)
A wiki for included SageMath packages is at https://wiki.sagemath.org/spkg. (See also: http://wiki.sagemath.org/days6/sprint/debian)