What would it take to make Software Collections work in Fedora?

Paulo César Pereira de Andrade paulo.cesar.pereira.de.andrade at gmail.com
Thu Dec 6 14:55:04 UTC 2012


2012/12/5 Matthew Miller <mattdm at fedoraproject.org>:
> There is a perpetual problem facing all Linux distributions around how fast
> to move with software updates. In Fedora, of course, our default speed is
> petal-to-the-metal. This is part of who we are and why we are awesome.
> However, it also sometimes makes life difficult for us -- for example, our
> Puppet packages are broken because Ruby is too new. It also makes life
> difficult for people trying to use Fedora seriously. It's especially hard
> with Ruby and Java -- not that there's anything _wrong_ with these
> languages, but the packaging expectations are different and often in
> conflict with the system operator's traditional packaging worldview.

  Somewhat of an example of a very complex package tied to a large amount of
other packages that needs custom patches or specific versions is sagemath
http://fedoraproject.org/wiki/SIGs/SciTech/SAGE

  Sagemath has what it calls spkgs, see for example
http://sagemath.org/download-packages.html
and the "upstream" distribution of sagemath is a base directory anywhere,
and inside it a tree with its own python, a huge collection of packages,
even its own gcc.

  I did package sagemath in Mandriva for several years, and am now working
on getting it in Fedora. My package works with system packages, but
there are a few exceptions due to either sagemath being tied to something
too old, having some really intrusive patch that upstream does not accept,
or a too fast moving target that is too hard to keep updating/remaking non
trivial patches that still may break badly because some package in the
distro was updated.

  The solution I used for these in Mandriva and hoping to get "approved"
for Fedora is bundling. For now it is 3 non trivial packages, that are
ipython, cython and pexpect. Everything else I managed to get to work
with the distro version. With some time, *and* with sagemath integrated
in the distro it should also make upstream pay more attention and
coordinate better in the different projects, and those bundled components
eventually may not need to be required anymore.

Paulo


More information about the devel mailing list