sage_conf: Configuration module for the SageMath library (distributable version)#
Description#
This distribution package provides:
a single Python module,
sage_conf, providing configuration information to the SageMath library at the time of its installation and at its runtimea console script
sage-config, for querying the variables ofsage_conffrom the shella sourcable shell script
sage-env-config, providing additional configuration information in the form of environment variables
The sage_conf distribution package is polymorphic: It has several implementations.
sage_conf sdist on PyPI#
This implementation of the sage_conf distribution package comes from
trac ticket #29039, which added the directory
pkgs/sage-conf_pypi.
To install, use pip install -v sage_conf. Using -v ensures that diagnostic
messages are displayed.
On installation (or building a wheel), it invokes sage_bootstrap to establish
a build tree (SAGE_ROOT) and installation tree (SAGE_LOCAL) for
the SageMath distribution. By default, it uses a subdirectory of $HOME/.sage
that is specific to the version of the distribution and the version of Python in
use. If several virtual environments over the same version of Python install
sage_conf, they will share these trees.
After installation of sage_conf, a wheelhouse containing wheels of
various libraries is available; type ls $(sage-config
SAGE_SPKG_WHEELS) to list them and pip install $(sage-config
SAGE_SPKG_WHEELS)/*.whl to install them. After this, you can install the Sage
library, for example, using pip install sagemath-standard.
sage_conf wheels#
Prebuilt binary wheels of the sage_conf distribution package are available
at https://github.com/sagemath/sage-wheels/releases/
This implementation of sage_conf comes from trac ticket #31396,
which adds the directory pkgs/sage-conf_relocatable/.
On building a wheel, it invokes sage_bootstrap to establish a
build and installation tree (SAGE_ROOT, SAGE_LOCAL) in a
subdirectory of the directory /var/tmp/, whose name is specific to
the version of the distribution and the version of Python in use.
The wheel distributes a copy of the prebuilt SAGE_ROOT and
SAGE_LOCAL. Importing sage_conf (or using the installed
sage-config script), makes sure that a symlink from the
/var/tmp location to the actual persistent installation location
is created. As the relocated libraries and programs contain the
hardcoded path SAGE_LOCAL in various ways (including as rpaths),
this symlink is necessary for the prebuilt libraries and programs to
work.
/var/tmp is a sticky directory on all Linux distributions
following the Filesystem Hierarchy Standard, as well as on macOS and
on Cygwin. On multi-user systems, only one user can use a given
version of the distribution; other installation schemes are recommended
for systems with multiple Sage users.
sage_conf in the SageMath distribution#
The original version of the distribution package sage_conf is used
internally in the SageMath distribution. It is provided in the directory
pkgs/sage-conf.
This version of the package is generated by the Sage distribution’s configure
script.
sage_conf in downstream distributions#
Downstream packagers and advanced developers and users may want to provide their own implementation of the distribution package to support the intended deployment of the SageMath library.
License#
GNU General Public License (GPL) v3 or later
Upstream Contact#
This package is included in the source code of the Sage distribution, in pkgs/sage-conf*.
Type#
standard
Dependencies#
$(PYTHON)
$(PYTHON_TOOLCHAIN)
Version Information#
package-version.txt:
9.8
install-requires.txt:
# This file is updated on every release by the sage-update-version script
sage-conf ~= 9.8
Equivalent System Packages#
(none known)