On Mon, Nov 21, 2016 at 2:52 PM, Emmanuel Charpentier
<[email protected]> wrote:
> Le lundi 21 novembre 2016 14:28:11 UTC+1, Jeroen Demeyer a écrit :
>>
>> On 2016-11-21 12:37, Emmanuel Charpentier wrote:
>> > What do you think ?
>>
>> I think we should simply NOT install the package at all instead of
>> faking an install in spkg-install. We currently do for gcc and git
>
>
> OK so far
>
>>
>> using
>> some logic in the top-level ./configure.
>
>
> Aha ! Here's the rub ! You need to do this on toplevel configuration for
> each and every  such package.
>
> This is needed for gcc, which is pretty central to any installation, and
> possibly for git (similar, but weaker, reasons).
>
> My point is that we should be able to do this for more mundane packages
> (possibly optional), without having to tinker with the toplevel config file.
> This is practical :
>
> if the package does not need "in situ" Sage-specific patching, and
> has no version-specific issues.
>
> Such a "mundane" package may need a wrapper, which can be installed
> separately in a separate section of the spkg-install script.

I think there's room for both here, where necessary.  I think the top
level `./configure` should be checking what packages are already
available from the system, and there has already been movement,
thankfully, toward doing that (albeit slowly).

In some cases it may be necessary / useful to install some kind of
wrapper into the sage environment around the system-installed
dependency.  But that may not always be necessary either.  Would have
to look at specific examples to be any more specific.

> (BTW : we need also to create a way to "uninstall" a Sage package more
> steamlined than 'make distclean && make". No ideas yet about this one...).

Yes.  I think work like https://trac.sagemath.org/ticket/21469 is an
important prerequisite to that, as well as some of the other configure
cleanup.  Ideally, package installation would proceed more like
building packages for distros like Debian, where instead of installing
directly into $SAGE_LOCAL, packages would be first installed into an
alternate root, and then copied from there into $SAGE_LOCAL.  This
gives an opportunity to enumerate every file/directory installed by
that package and create a manifest that can be used for later
uninstallation.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to