-
-
Notifications
You must be signed in to change notification settings - Fork 705
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 SPKGprints out this information. -
Provide a
tox.inithat generates and runsDockerfiles 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
gfortranas atype=standardpackage. It is a prereq of standard packagenumpy. Its status as atype=optionalpackage predates the clarifications brought by the development of thespkg-configure.m4mechanism (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-cygcommand 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.txtfiles. - sage_bootstrap: Add command "sage -package list --output={install-requires,requirements,pipfile,debian,....}" #29041: at
./bootstraptime, 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.ymlforconda 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