[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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 library policy:
- 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 sage-debian@googlegroups.com 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.

	-Tim Abbott

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]

Reply to: