SAGE packages for Debian
I've been working on packaging for Debian SAGE (http://sagemath.org), a
large free mathematics software conglomeration that is competing with
proprietary mathematical software systems such as Mathematica, Matlab,
Maple, and Magma (Debian bug #455292).
This has been a rather large effort because a major contribution of SAGE
is providing an excellent ipython-base interface to a number of other free
software mathematics libraries; the SAGE distribution comes with some 71
dependencies, of which only around 2/3 are available in Debian already.
I currently have a working apt repository from which one can "apt-get
install sagemath" (some details on the repository are available at
<http://wiki.sagemath.org/DebianSAGE>) with some 26 source packages in it
that I created for the SAGE dependencies. The repository also contains
modified versions of various Debian packages with quick workarounds for
bugs #472392, #474080, #474083, #459200.
The packages are tested to the extent that I have run a full set of SAGE
doctests against them with two different SAGE releases, and they largely
seem to work (though there are definitely a number of bugs remaining).
However, while it is nice to have a repository that people who want to use
SAGE can add to their sources.list, it would be far better for SAGE to be
available in Debian (I think having SAGE packages ready for lenny is a
reasonable goal). The primary problem that makes my packages potentially
unsuitable for uploading to Debian now is many of them may violate Debian
- shared libraries whose soname is 0.0.0 (suggesting the upstream may not actually be doing versioning)
- static libraries compiled with -fPIC (something strongly discouraged in the library packaging guide)
- shared libraries that don't have versioning at all (clearly a bug)
For the shared libraries that are missing sonames entirely, I am in
contact with the upstream developers and they are working on getting some
sort of shared library versioning implemented (the SAGE developers are
very supportive of this effort and have offered to help the upstream
developers with some of these library versioning issues).
Below I list new source packages categorized by roughly how ready they are
for being uploaded to the Debian archive. Many of them have
"description-contains-homepage" and "out-of-date-standards-version 3.7.2"
lintian warnings because I wrote most of the control files on etch, and
several have slightly more serious "binary-without-manpage" warnings.
The secondary problem with getting these 26 source packages into Debian is
that I simply don't have the time to responsibly maintain 26 source
packages in Debian. So, I'm looking for people and teams in Debian to
adopt some of these SAGE dependencies and upload them in time for Lenny.
My guess is the right Debian protocol for coordinating this is for me to
file RFP bugs for all the packages below, linking in each to my existing
draft packaging and mark those RFP bugs as all blocking #455292. But I'd
appreciate feedback on this plan before I file 26 bug reports.
If you're interested in helping maintain SAGE and its dependencies in
Debian, you should join us on the firstname.lastname@example.org mailing
list (I have no objection to eventually migrating to a lists.debian.org
list in the future, but that's what we've been using thus far).
Any feedback or suggestions would also be greatly appreciated.
Packages with no problems worse than missing man pages:
python-arpack (from the scipy sandbox)
python-delaunay (from the scipy sandbox)
gfan [but depends on cddlib, see below]
Packages with suspicious 0.0.0 sonames:
libm4ri [also needs description]
Packages with no shared library whose static library is compiled with -fPIC
Packages that have clear library policy issues:
eclib [no soname]
flint [no soname]
libzn-poly [no soname, though I've sent a patch for this upstream]
ntl [no soname, though I've sent a patch for this upstream]
singular [no soname]
Packages that have other oustanding issues:
guava [binaries under /usr/share/gap; also many lintian warnings will be fixed in the 3.5 upstream release]
sagemath [numerous isuses]