-
-
Notifications
You must be signed in to change notification settings - Fork 652
Description
https://doc.sagemath.org/html/en/installation/source.html#linux-recommended-installation
gives apt-get install
and yum install
command lines to install system packages that will be recognized by build/pkgs/SPKG/spkg-configure.m4
.
Several packages are missing, see comments in
https://github.com/sagemath/sage-prod/files/10659286/Dockerfile-ubuntu-minimal.gz
This ticket puts this information on a per-package basis into build/pkgs/SPKG/distros/debian.txt
, .../fedora.txt
, .../arch.txt
for the following purposes:
-
sage -info SPKG
prints out this information. -
Provide a
tox.ini
that generates and runsDockerfile
s that test the installation on various systems. Example (running 3 builds in parallel):$ tox -p auto -e archlinux-latest,ubuntu-focal-minimal,debian-buster-maximal ⠸
Incidental change on this ticket:
- Mark
gfortran
as atype=standard
package. It is a prereq of standard packagenumpy
. Its status as atype=optional
package predates the clarifications brought by the development of thespkg-configure.m4
mechanism (Meta-ticket: spkg-configure: Try to use as many system packages as possible #27330).
Possible follow-up and related tickets:
- Add GitHub Actions workflow for testing the build on various Linux distributions via docker; macOS with homebrew; and Windows (cygwin) #29087 - Add a GitHub workflow that runs this automatically, with many parallel jobs.
- Also the
apt-cyg
command lines at https://trac.sagemath.org/wiki/Cygwin64Port could be generated in the same way. - ./bootstrap: Format build/pkgs/SPKG/distros/ information to produce the apt-get/yum command lines shown in the installation manual #26964: Aggregate and format it (during
./bootstrap
) to produce the command lines shown in the manual. This ticket already prepares it by moving these command lines into separate.txt
files. - sage_bootstrap: Add command "sage -package list --output={install-requires,requirements,pipfile,debian,....}" #29041: at
./bootstrap
time, generatesrc/requirements.txt
,src/constraints.txt
,src/setup.cfg
[install_requires]
frombuild/pkgs
- Add SAGE_ROOT/environment.yml for "conda env create -f". #28745: Add
SAGE_ROOT/environment.yml
forconda env create -f
. - Add to tox.ini a conda run (either with a fresh environment or fresh conda install) without docker - to test with macOS conda
- Add to tox.ini a homebrew run (with a fresh install not in /usr/local)
Resources:
CC: @dimpase @embray @antonio-rojas @isuruf @timokau
Component: build
Author: Matthias Koeppe
Branch: 23c6334
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/29053