-
-
Notifications
You must be signed in to change notification settings - Fork 655
Description
Currently, if a Feature
is keyed to an spkg
, a FeatureNotPresentError
recommends to use sage -i
to install the package.
When SAGE_ROOT
(or sage_bootstrap
, see #29039) is available, we can do better:
-
We can recommend equivalent system packages for package systems available on the present system.
-
Moreover, if
SAGE_ROOT/bin/sage-spkg
is not available, then we remove the recommendation to usesage -i
. This is for the benefit of distribution packaging.(Distribution packages would typically not install
sage-spkg
, so this information is automatically suppressed -- no more patching is necessary.) -
Finally, for Python packages that have a
requirements.txt
(see Add build/pkgs/SPKG/requirements.txt for all Python SPKG #30024), we also show apip
invocation.
(1. and 3. depend on a few scripts from SAGE_ROOT/build/bin
to be available in the PATH
. Distribution packages could consider to install these scripts; perhaps, in some libexec-style directory. Also, SAGE_ROOT/build/pkgs/*/requirements.txt
and SAGE_ROOT/build/pkgs/*/distros/
need to be made available at runtime.)
We also add the names of the detected package systems to the default optional tags in use by doctests.
CC: @kiwifb @jhpalmieri @slel @seblabbe
Component: build: configure
Author: Matthias Koeppe
Branch: 68a8e2a
Reviewer: Sébastien Labbé
Issue created by migration from https://trac.sagemath.org/ticket/30606