>
> I've also been thinking about how best to handle spkgs, and Dag
> Seljebotn recently pointed me to
> Nixhttp://nixos.org/nix/https://github.com/dagss/scidist/blob/master/ideas.rst.
> The basic
> idea is that each component is compiled in a directory based on the
> hash of its sources and all of its dependencies, and symlinks are used
> to keep track of the "current" copy in use. The key insight that I
> think makes this a great solution for spkgs is that the version of
> spkgs used can be configured either as a single txt file or a set of
> symlinks and managed by version control (ideally, the same repo as the
> Sage library itself. Thus patches to the sage library can explicitly
> depend on spkgs, re-building after applying them can automatically
> install the spkgs (assuming an internet connection), and un-installing
> an spkg is as simple as popping a patch off your queue (the symlinks
> are re-assigned, the old spkg is still built, ready to be used again.
> Of course this would be a fair amount of work, both updating the spkg
> system (whether we use Nix or just the ideas) and better supporting
> Python (probably via PYTHONPATH or some other special import hooks
> rather than installing stuff directly via setup.py, similar to
> setup.py develop where things can be edited/installed inplace). Of
> course this would be great for the patchbot, but that's just the tip
> of the iceburg.
Sounds very interesting, during sage days 29 Keshav and I where also
thinking about how to make the sage spkg system to be able to
uninstall spkgs. I guess the not reinventing the wheel idea suggests
that we should first look for the most suited cross platform package
management system and build the sage spkg system on top of that.
Something interesting I found when looking for other package manage
systems is http://0install.net/ which shares a lot of nice features
with nix (multiple versions installed at the same time, non
destructive updates, uninstall) and has the advantage of having a
python interface.
Let me know when you plan to concretely start on doing things with the
sage spkg system, cause I'm also very interested in participating in
that.
Kind Regrads.
Maarten Derickx
>
> - Robert
--
To post to this group, send an email to [email protected]
To unsubscribe from this group, send an email to
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org