diff --git a/build/bin/sage-get-system-packages b/build/bin/sage-get-system-packages index c8b9314c3fe..1b8aae79c16 100755 --- a/build/bin/sage-get-system-packages +++ b/build/bin/sage-get-system-packages @@ -41,7 +41,7 @@ case "$SYSTEM" in fi fi SYSTEM_PACKAGES_FILE_NAMES="distros/$SYSTEM.txt" - STRIP_COMMENTS="sed s/#.*//;" + STRIP_COMMENTS="sed s/#.*//;s/\${PYTHON_MINOR}/${PYTHON_MINOR}/g" COLLECT=echo ;; esac diff --git a/build/bin/sage-guess-package-system b/build/bin/sage-guess-package-system index 09eafd510c9..8e679c2eac9 100755 --- a/build/bin/sage-guess-package-system +++ b/build/bin/sage-guess-package-system @@ -11,6 +11,8 @@ if conda --version > /dev/null 2>&1; then fi if brew --version > /dev/null 2>&1; then echo homebrew +elif port version > /dev/null 2>&1; then + echo macports elif emerge --version > /dev/null 2>&1; then echo gentoo elif apt-get --version > /dev/null 2>&1; then diff --git a/build/bin/sage-print-system-package-command b/build/bin/sage-print-system-package-command index c36f64e19bf..722a7f75161 100755 --- a/build/bin/sage-print-system-package-command +++ b/build/bin/sage-print-system-package-command @@ -34,6 +34,16 @@ do ;; --prompt) PROMPT=' $ ' + CONTINUATION=' ' + ;; + --continuation=*) + CONTINUATION="${1#--continuation=}" + ;; + --wrap) + WRAP=78 + ;; + --wrap=*) + WRAP="${1#--wrap=}" ;; --no-install-recommends) NO_INSTALL_RECOMMENDS=yes @@ -79,7 +89,13 @@ function print_shell_command() echo ".. CODE-BLOCK:: bash" echo fi - echo "${PROMPT}$1" + # shell-quote arguments if necessary + quoted=$(for a in "$@"; do printf "%q " $a; done) + if [ -z "$WRAP" -o $# -lt 6 ]; then + echo "${PROMPT}${quoted}" + else + sage-bootstrap-python -c "import textwrap; print(' \\\\\n'.join(textwrap.wrap(r'''${quoted}''', $WRAP, initial_indent=r'''${PROMPT}''', subsequent_indent=r'''${CONTINUATION}''', break_long_words=False, break_on_hyphens=False)))" + fi if [ -n "$OUTPUT_RST" ]; then echo fi @@ -102,6 +118,15 @@ case $system:$command in [ -n "$SAGE_ROOT" ] || SAGE_ROOT=. echo "${PROMPT}source $SAGE_ROOT/.homebrew-build-env" ;; + macports*:setup-build-env) + $IF_VERBOSE echo "${COMMENT}" + $IF_VERBOSE echo "${COMMENT}WARNING: Use of MacPorts is experimental" + $IF_VERBOSE echo "${COMMENT}" + $IF_VERBOSE echo "${COMMENT}MacPorts does not provide unversioned gfortran executables by default" + $IF_VERBOSE echo "${COMMENT}To make gfortran available (and build with gcc from XCode), use:" + $IF_VERBOSE echo "${COMMENT}" + $IF_VERBOSE print_shell_command ./configure FC=gfortran-mp-11 + ;; *:setup-build-env) # Nothing needed ;; @@ -109,70 +134,74 @@ case $system:$command in # Verbs handled above are our own inventions. Verbs handled below are apt-get verbs. # @(debian*|ubuntu*):update) - print_shell_command "${SUDO}apt-get $command $system_packages" + print_shell_command ${SUDO}apt-get $command $system_packages ;; @(debian*|ubuntu*):*) [ "$NO_INSTALL_RECOMMENDS" = yes ] && options="$options --no-install-recommends" [ "$YES" = yes ] && options="$options --yes" env="DEBIAN_FRONTEND=noninteractive " - [ -n "$system_packages" ] && print_shell_command "${SUDO}${env}apt-get $command $options $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}${env}apt-get $command $options $system_packages ;; @(fedora*|redhat*|centos*):install) [ "$YES" = yes ] && options="$options -y" - [ -n "$system_packages" ] && print_shell_command "${SUDO}yum install $options $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}yum install $options $system_packages ;; gentoo*:install) - [ -n "$system_packages" ] && print_shell_command "${SUDO}emerge $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}emerge $system_packages ;; arch*:update) print_shell_command "${SUDO}pacman -Sy" ;; arch*:install) [ "$YES" = yes ] && options="$options --noconfirm" - [ -n "$system_packages" ] && print_shell_command "${SUDO}pacman -S $options $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}pacman -S $options $system_packages ;; void*:update) print_shell_command "${SUDO}xbps-install -Su" ;; void*:install) [ "$YES" = yes ] && options="$options --yes" - [ -n "$system_packages" ] && print_shell_command "${SUDO}xbps-install $options $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}xbps-install $options $system_packages ;; opensuse*:install) - [ -n "$system_packages" ] && print_shell_command "${SUDO}zypper install $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}zypper install $system_packages ;; *conda*:install) [ "$YES" = yes ] && options="$options --yes" - [ -n "$system_packages" ] && print_shell_command "conda install $options $system_packages" + [ -n "$system_packages" ] && print_shell_command conda install $options $system_packages ;; homebrew*:install) - [ -n "$system_packages" ] && print_shell_command "brew install $system_packages" + [ -n "$system_packages" ] && print_shell_command brew install $system_packages + ;; + macports*:install) + [ "$YES" = yes ] && options="$options -N" + [ -n "$system_packages" ] && print_shell_command ${SUDO}port $options install $system_packages ;; slackware*:install) - [ -n "$system_packages" ] && print_shell_command "${SUDO}slackpkg install $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}slackpkg install $system_packages ;; cygwin*:update) print_comment "first install apt-cyg from https://github.com/transcode-open/apt-cyg" ;; cygwin*:install) - [ -n "$system_packages" ] && print_shell_command "apt-cyg install $system_packages" + [ -n "$system_packages" ] && print_shell_command apt-cyg install $system_packages ;; freebsd*:install) - [ -n "$system_packages" ] && print_shell_command "${SUDO}pkg install $system_packages" + [ -n "$system_packages" ] && print_shell_command ${SUDO}pkg install $system_packages ;; nix*:install) - [ -n "$system_packages" ] && print_shell_command "nix-env --install $system_packages" + [ -n "$system_packages" ] && print_shell_command nix-env --install $system_packages ;; alpine:update) print_shell_command "apk update" ;; alpine:install) - [ -n "$system_packages" ] && print_shell_command "apk add $system_packages" + [ -n "$system_packages" ] && print_shell_command apk add $system_packages ;; pip:install) - [ -n "$system_packages" ] && print_shell_command "sage -pip install $system_packages" + [ -n "$system_packages" ] && print_shell_command sage -pip install $system_packages ;; cpan:install) - [ -n "$system_packages" ] && print_shell_command "cpan -i $system_packages" + [ -n "$system_packages" ] && print_shell_command cpan -i $system_packages ;; repology:install) if [ -n "$system_packages" ]; then diff --git a/build/bin/sage-spkg-info b/build/bin/sage-spkg-info index e43e516dc5b..4c8c4b0f9a9 100755 --- a/build/bin/sage-spkg-info +++ b/build/bin/sage-spkg-info @@ -103,7 +103,7 @@ for system in $systems; do echo "$system:" ;; esac - sage-print-system-package-command $system --prompt=' $ ' --sudo install $system_packages + sage-print-system-package-command $system --wrap --prompt=' $ ' --continuation=' ' --sudo install $system_packages echo done if [ -z "$system" ]; then diff --git a/build/bin/write-dockerfile.sh b/build/bin/write-dockerfile.sh index bfc4dd751a4..104f7c19b31 100755 --- a/build/bin/write-dockerfile.sh +++ b/build/bin/write-dockerfile.sh @@ -16,12 +16,15 @@ export PATH="$SAGE_ROOT"/build/bin:$PATH SYSTEM_PACKAGES=$EXTRA_SYSTEM_PACKAGES CONFIGURE_ARGS="--enable-option-checking " for SPKG in $(sage-package list --has-file=spkg-configure.m4 $SAGE_PACKAGE_LIST_ARGS) $EXTRA_SAGE_PACKAGES; do - SYSTEM_PACKAGE=$(sage-get-system-packages $SYSTEM $SPKG | sed 's/${PYTHON_MINOR}/'${PYTHON_MINOR}'/g') + SYSTEM_PACKAGE=$(sage-get-system-packages $SYSTEM $SPKG) if [ -n "${SYSTEM_PACKAGE}" ]; then - # SYSTEM_PACKAGE can be empty if, for example, the environment - # variable ENABLE_SYSTEM_SITE_PACKAGES is empty. - SYSTEM_PACKAGES+=" ${SYSTEM_PACKAGE}" - CONFIGURE_ARGS+="--with-system-${SPKG}=${WITH_SYSTEM_SPKG} " + # SYSTEM_PACKAGE can be empty if, for example, the environment + # variable ENABLE_SYSTEM_SITE_PACKAGES is empty. + for a in $SYSTEM_PACKAGE; do + # shell-quote package if necessary + SYSTEM_PACKAGES+=$(printf " %q" "$a") + done + CONFIGURE_ARGS+="--with-system-${SPKG}=${WITH_SYSTEM_SPKG} " fi done echo "# Automatically generated by SAGE_ROOT/build/bin/write-dockerfile.sh" diff --git a/build/pkgs/_bootstrap/distros/arch.txt b/build/pkgs/_bootstrap/distros/arch.txt index 33054ef918c..050de00ca70 100644 --- a/build/pkgs/_bootstrap/distros/arch.txt +++ b/build/pkgs/_bootstrap/distros/arch.txt @@ -1,3 +1,5 @@ # Packages needed for ./bootstrap -autoconf automake libtool +autoconf +automake +libtool pkgconf diff --git a/build/pkgs/_bootstrap/distros/cygwin.txt b/build/pkgs/_bootstrap/distros/cygwin.txt index b5d2db8cfb2..bde788ee5d9 100644 --- a/build/pkgs/_bootstrap/distros/cygwin.txt +++ b/build/pkgs/_bootstrap/distros/cygwin.txt @@ -1,2 +1,4 @@ # Packages needed for ./bootstrap -autoconf automake libtool +autoconf +automake +libtool diff --git a/build/pkgs/_bootstrap/distros/fedora.txt b/build/pkgs/_bootstrap/distros/fedora.txt index e8e9330eca1..5fe960ac3a0 100644 --- a/build/pkgs/_bootstrap/distros/fedora.txt +++ b/build/pkgs/_bootstrap/distros/fedora.txt @@ -1,4 +1,5 @@ # Packages needed for ./bootstrap -autoconf automake libtool -# Fedora 26 needs: +autoconf +automake +libtool pkg-config diff --git a/build/pkgs/_bootstrap/distros/freebsd.txt b/build/pkgs/_bootstrap/distros/freebsd.txt index 93d91f5c84b..5fe960ac3a0 100644 --- a/build/pkgs/_bootstrap/distros/freebsd.txt +++ b/build/pkgs/_bootstrap/distros/freebsd.txt @@ -1,2 +1,5 @@ # Packages needed for ./bootstrap -autoconf automake libtool pkg-config +autoconf +automake +libtool +pkg-config diff --git a/build/pkgs/_bootstrap/distros/homebrew.txt b/build/pkgs/_bootstrap/distros/homebrew.txt index 93d91f5c84b..5fe960ac3a0 100644 --- a/build/pkgs/_bootstrap/distros/homebrew.txt +++ b/build/pkgs/_bootstrap/distros/homebrew.txt @@ -1,2 +1,5 @@ # Packages needed for ./bootstrap -autoconf automake libtool pkg-config +autoconf +automake +libtool +pkg-config diff --git a/build/pkgs/_bootstrap/distros/macports.txt b/build/pkgs/_bootstrap/distros/macports.txt new file mode 100644 index 00000000000..5f6a8a4c191 --- /dev/null +++ b/build/pkgs/_bootstrap/distros/macports.txt @@ -0,0 +1,6 @@ +# Packages needed for ./bootstrap +gettext +autoconf +automake +libtool +pkgconfig diff --git a/build/pkgs/_bootstrap/distros/nix.txt b/build/pkgs/_bootstrap/distros/nix.txt index 93d91f5c84b..5fe960ac3a0 100644 --- a/build/pkgs/_bootstrap/distros/nix.txt +++ b/build/pkgs/_bootstrap/distros/nix.txt @@ -1,2 +1,5 @@ # Packages needed for ./bootstrap -autoconf automake libtool pkg-config +autoconf +automake +libtool +pkg-config diff --git a/build/pkgs/_bootstrap/distros/void.txt b/build/pkgs/_bootstrap/distros/void.txt index 6490cf773e7..904bd61a232 100644 --- a/build/pkgs/_bootstrap/distros/void.txt +++ b/build/pkgs/_bootstrap/distros/void.txt @@ -1,4 +1,7 @@ # Packages needed for ./bootstrap -autoconf automake libtool -xtools mk-configure +autoconf +automake +libtool +xtools +mk-configure pkg-config diff --git a/build/pkgs/_prereq/distros/alpine.txt b/build/pkgs/_prereq/distros/alpine.txt index 159c452cf30..3986f8ac849 100644 --- a/build/pkgs/_prereq/distros/alpine.txt +++ b/build/pkgs/_prereq/distros/alpine.txt @@ -1,3 +1,12 @@ +# This file, build/pkgs/_prereq/distros/alpine.txt, contains names of +# Alpine Linux packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/alpine.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# binutils make m4 diff --git a/build/pkgs/_prereq/distros/arch.txt b/build/pkgs/_prereq/distros/arch.txt index 9b9bf09e7e2..aac6d8f5976 100644 --- a/build/pkgs/_prereq/distros/arch.txt +++ b/build/pkgs/_prereq/distros/arch.txt @@ -1,3 +1,12 @@ +# This file, build/pkgs/_prereq/distros/arch.txt, contains names of +# Arch Linux packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/arch.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# binutils make m4 diff --git a/build/pkgs/_prereq/distros/conda.txt b/build/pkgs/_prereq/distros/conda.txt index d76388ce7bb..d85e37c8959 100644 --- a/build/pkgs/_prereq/distros/conda.txt +++ b/build/pkgs/_prereq/distros/conda.txt @@ -1,3 +1,12 @@ +# This file, build/pkgs/_prereq/distros/conda.txt, contains names of +# conda packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/conda.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# compilers make m4 diff --git a/build/pkgs/_prereq/distros/cygwin.txt b/build/pkgs/_prereq/distros/cygwin.txt index 2bf3164005b..7a05e1aaa54 100644 --- a/build/pkgs/_prereq/distros/cygwin.txt +++ b/build/pkgs/_prereq/distros/cygwin.txt @@ -1,19 +1,18 @@ -# This file, build/pkgs/cygwin.txt, contains name Cygwin packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/cygwin.txt, contains names of +# Cygwin packages needed for installation of Sage from source. # -# In addition, the files build/pkgs/SPKG/cygwin.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/cygwin.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. # binutils make m4 # a system python is needed for downloading the sage packages, https://github.com/sagemath/sage/issues/29090 -python39-urllib3 python39 +python39-urllib3 +python39 perl perl-ExtUtils-MakeMaker tar diff --git a/build/pkgs/_prereq/distros/debian.txt b/build/pkgs/_prereq/distros/debian.txt index 50be6ac7e0b..785739528b4 100644 --- a/build/pkgs/_prereq/distros/debian.txt +++ b/build/pkgs/_prereq/distros/debian.txt @@ -1,16 +1,12 @@ -# This file, build/pkgs/debian.txt, contains names of Debian/Ubuntu packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/debian.txt, contains names of +# Debian/Ubuntu/... packages needed for installation of Sage from source. # -# In addition, the files build/pkgs/SPKG/debian.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# If distinctions between different distributions need to be made, -# files named debian....txt or ubuntu.....txt can be used. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/debian.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. +# binutils make m4 diff --git a/build/pkgs/_prereq/distros/fedora.txt b/build/pkgs/_prereq/distros/fedora.txt index b35d7f64faf..2716e7eb0cd 100644 --- a/build/pkgs/_prereq/distros/fedora.txt +++ b/build/pkgs/_prereq/distros/fedora.txt @@ -1,15 +1,11 @@ -# This file, build/pkgs/fedora.txt, contains names of Fedora/Redhat/CentOS packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/fedora.txt, contains names of +# Fedora/Redhat/CentOS/AlmaLinux packages needed for installation +# of Sage from source. # -# In addition, the files build/pkgs/SPKG/fedora.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# If distinctions between different distributions need to be made, -# files named fedora....txt, redhat...txt, or centos....txt can be used. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/fedora.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. # binutils diff --git a/build/pkgs/_prereq/distros/freebsd.txt b/build/pkgs/_prereq/distros/freebsd.txt index cc708ccfb2b..f9a4937520a 100644 --- a/build/pkgs/_prereq/distros/freebsd.txt +++ b/build/pkgs/_prereq/distros/freebsd.txt @@ -1,5 +1,5 @@ -# This file, build/pkgs/freebsd.txt, contains names of FreeBSD packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/freebsd.txt, contains names of +# FreeBSD packages needed for installation of Sage from source. # # In addition, the files build/pkgs/SPKG/distros/freebsd.txt contain the # names of packages that provide the equivalent of SPKG. @@ -8,10 +8,9 @@ # $ cd /usr/ports/math/sage # $ sudo make install-missing-packages # -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". -# +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. +# gmake automake bash diff --git a/build/pkgs/_prereq/distros/gentoo.txt b/build/pkgs/_prereq/distros/gentoo.txt index 1e26c46cacc..455991e8a99 100644 --- a/build/pkgs/_prereq/distros/gentoo.txt +++ b/build/pkgs/_prereq/distros/gentoo.txt @@ -1,3 +1,12 @@ +# This file, build/pkgs/_prereq/distros/gentoo.txt, contains names of +# Gentoo packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/gentoo.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# sys-devel/binutils sys-libs/binutils-libs sys-devel/make diff --git a/build/pkgs/_prereq/distros/homebrew.txt b/build/pkgs/_prereq/distros/homebrew.txt index 863c22a6bee..2a85c39abfc 100644 --- a/build/pkgs/_prereq/distros/homebrew.txt +++ b/build/pkgs/_prereq/distros/homebrew.txt @@ -1,12 +1,11 @@ -# This file, build/pkgs/homebrew.txt, contains names of homebrew packages -# needed for installation of Sage from source (in addition to XCode). +# This file, build/pkgs/_prereq/distros/homebrew.txt, contains names of +# Homebrew packages needed for installation of Sage from source. # -# In addition, the files build/pkgs/SPKG/homebrew.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/homebrew.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. +# # No packages needed diff --git a/build/pkgs/_prereq/distros/macports.txt b/build/pkgs/_prereq/distros/macports.txt new file mode 100644 index 00000000000..e887cd91e80 --- /dev/null +++ b/build/pkgs/_prereq/distros/macports.txt @@ -0,0 +1,12 @@ +# This file, build/pkgs/_prereq/distros/macports.txt, contains names of macports packages +# needed for installation of Sage from source (in addition to XCode). +# +# In addition, the files build/pkgs/SPKG/distros/macports.txt contain the names +# of packages that provide the equivalent of SPKG. +# +# See build/bin/sage-spkg, where this information is processed +# for use in "sage -info SPKG". +# +# Everything on a line after a # character is ignored. + +# No packages needed diff --git a/build/pkgs/_prereq/distros/nix.txt b/build/pkgs/_prereq/distros/nix.txt index 01e5ed4e959..523fe272f7c 100644 --- a/build/pkgs/_prereq/distros/nix.txt +++ b/build/pkgs/_prereq/distros/nix.txt @@ -1,16 +1,12 @@ -# This file, build/pkgs/debian.txt, contains names of Debian/Ubuntu packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/nix.txt, contains names of +# nix packages needed for installation of Sage from source. # -# In addition, the files build/pkgs/SPKG/debian.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# If distinctions between different distributions need to be made, -# files named debian....txt or ubuntu.....txt can be used. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/nix.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. +# binutils gnumake gnum4 diff --git a/build/pkgs/_prereq/distros/opensuse.txt b/build/pkgs/_prereq/distros/opensuse.txt index 6f7a11fea47..56f77da9bcf 100644 --- a/build/pkgs/_prereq/distros/opensuse.txt +++ b/build/pkgs/_prereq/distros/opensuse.txt @@ -1,13 +1,12 @@ -# This file, build/pkgs/opensuse.txt, contains names of OpenSuse packages -# needed for installation of Sage from source. +# This file, build/pkgs/_prereq/distros/opensuse.txt, contains names of +# OpenSuse packages needed for installation of Sage from source. # -# In addition, the files build/pkgs/SPKG/opensuse.txt contain the names -# of packages that provide the equivalent of SPKG. -# -# See build/bin/sage-spkg, where this information is processed -# for use in "sage -info SPKG". +# In addition, the files build/pkgs/SPKG/distros/opensuse.txt contain +# the names of packages that provide the equivalent of SPKG. # +# One package per line. No need to escape special characters. # Everything on a line after a # character is ignored. +# binutils make m4 diff --git a/build/pkgs/_prereq/distros/slackware.txt b/build/pkgs/_prereq/distros/slackware.txt index 4c957e45264..117762dcd00 100644 --- a/build/pkgs/_prereq/distros/slackware.txt +++ b/build/pkgs/_prereq/distros/slackware.txt @@ -1,11 +1,26 @@ +# This file, build/pkgs/_prereq/distros/slackware.txt, contains names of +# Slackware packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/slackware.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# binutils make -guile gc libffi # dependencies of make -"gcc-[0-9]" # So that slackpkg pattern matching does not pull in all gcc-* packages +# dependencies of make +guile +gc +libffi +gcc-[0-9] # So that slackpkg pattern matching does not pull in all gcc-* packages gcc-11 # on slackware-current gcc-g++ gcc-g++-11 # on slackware-current -libmpc glibc kernel-headers # dependencies of gcc +# dependencies of gcc +libmpc +glibc +kernel-headers perl m4 bc diff --git a/build/pkgs/_prereq/distros/void.txt b/build/pkgs/_prereq/distros/void.txt index 552b5a415f2..d5c2143c56c 100644 --- a/build/pkgs/_prereq/distros/void.txt +++ b/build/pkgs/_prereq/distros/void.txt @@ -1,3 +1,12 @@ +# This file, build/pkgs/_prereq/distros/void.txt, contains names of +# Void Linux packages needed for installation of Sage from source. +# +# In addition, the files build/pkgs/SPKG/distros/void.txt contain +# the names of packages that provide the equivalent of SPKG. +# +# One package per line. No need to escape special characters. +# Everything on a line after a # character is ignored. +# bc binutils gcc diff --git a/build/pkgs/_sagemath/distros/arch.txt b/build/pkgs/_sagemath/distros/arch.txt index 825a91411b0..b58e3f244a7 100644 --- a/build/pkgs/_sagemath/distros/arch.txt +++ b/build/pkgs/_sagemath/distros/arch.txt @@ -1 +1,2 @@ -sagemath sagemath-doc +sagemath +sagemath-doc diff --git a/build/pkgs/barvinok/distros/opensuse.txt b/build/pkgs/barvinok/distros/opensuse.txt index b3369e09db7..65092b1978a 100644 --- a/build/pkgs/barvinok/distros/opensuse.txt +++ b/build/pkgs/barvinok/distros/opensuse.txt @@ -1,2 +1,2 @@ barvinok -"pkgconfig(barvinok)" +pkgconfig(barvinok) diff --git a/build/pkgs/bzip2/distros/cygwin.txt b/build/pkgs/bzip2/distros/cygwin.txt index 8e127a3d331..8ef7f4d0734 100644 --- a/build/pkgs/bzip2/distros/cygwin.txt +++ b/build/pkgs/bzip2/distros/cygwin.txt @@ -1 +1,2 @@ -bzip2 libbz2-devel +bzip2 +libbz2-devel diff --git a/build/pkgs/bzip2/distros/fedora.txt b/build/pkgs/bzip2/distros/fedora.txt index f62dee917bb..13c12f2a5f6 100644 --- a/build/pkgs/bzip2/distros/fedora.txt +++ b/build/pkgs/bzip2/distros/fedora.txt @@ -1 +1,2 @@ -bzip2 bzip2-devel +bzip2 +bzip2-devel diff --git a/build/pkgs/bzip2/distros/opensuse.txt b/build/pkgs/bzip2/distros/opensuse.txt index ad77a92d4bb..ff839c0de00 100644 --- a/build/pkgs/bzip2/distros/opensuse.txt +++ b/build/pkgs/bzip2/distros/opensuse.txt @@ -1,3 +1,3 @@ # spkg-configure checks for both the program and the library bzip2 -"pkgconfig(bzip2)" +pkgconfig(bzip2) diff --git a/build/pkgs/cbc/distros/fedora.txt b/build/pkgs/cbc/distros/fedora.txt index 3e1af7ad66b..d63f4439b2a 100644 --- a/build/pkgs/cbc/distros/fedora.txt +++ b/build/pkgs/cbc/distros/fedora.txt @@ -1 +1,2 @@ -coin-or-Cbc coin-or-Cbc-devel +coin-or-Cbc +coin-or-Cbc-devel diff --git a/build/pkgs/cddlib/distros/cygwin.txt b/build/pkgs/cddlib/distros/cygwin.txt index f9eaae4c7ad..d406d903210 100644 --- a/build/pkgs/cddlib/distros/cygwin.txt +++ b/build/pkgs/cddlib/distros/cygwin.txt @@ -1 +1,2 @@ -cddlib-devel cddlib-tools +cddlib-devel +cddlib-tools diff --git a/build/pkgs/cddlib/distros/opensuse.txt b/build/pkgs/cddlib/distros/opensuse.txt index ffb93647443..0d299e7ad0e 100644 --- a/build/pkgs/cddlib/distros/opensuse.txt +++ b/build/pkgs/cddlib/distros/opensuse.txt @@ -1,2 +1,2 @@ cddlib-tools -"pkgconfig(cddlib)" +pkgconfig(cddlib) diff --git a/build/pkgs/cliquer/distros/fedora.txt b/build/pkgs/cliquer/distros/fedora.txt index 4dadef53faa..718f9f6b2cf 100644 --- a/build/pkgs/cliquer/distros/fedora.txt +++ b/build/pkgs/cliquer/distros/fedora.txt @@ -1 +1,2 @@ -cliquer cliquer-devel +cliquer +cliquer-devel diff --git a/build/pkgs/cmake/distros/macports.txt b/build/pkgs/cmake/distros/macports.txt index a3ea3e4380f..de0e65cf914 100644 --- a/build/pkgs/cmake/distros/macports.txt +++ b/build/pkgs/cmake/distros/macports.txt @@ -1 +1,2 @@ -cmake +# Broken as of 2022-05-01 +#cmake diff --git a/build/pkgs/configure/checksums.ini b/build/pkgs/configure/checksums.ini index bdd96db7026..8cafe9116e9 100644 --- a/build/pkgs/configure/checksums.ini +++ b/build/pkgs/configure/checksums.ini @@ -1,4 +1,4 @@ tarball=configure-VERSION.tar.gz -sha1=2389d2b093493c568deda190ffc326ff2b835169 -md5=545e80b50deb4efa46f14d0a543ba98f -cksum=169905223 +sha1=772c9c5927becaac5e9703fb0d18cfb5e300f0d8 +md5=7d29259b1a835906ec195d2ee451d8ae +cksum=3788452649 diff --git a/build/pkgs/configure/package-version.txt b/build/pkgs/configure/package-version.txt index 033bf42aaae..afbc30b2ec4 100644 --- a/build/pkgs/configure/package-version.txt +++ b/build/pkgs/configure/package-version.txt @@ -1 +1 @@ -73e52a419812253c3c3ce72bab7f1a5ddf4c0461 +ebbc2c9c51becf2764cda04357e670babf2b5d8e diff --git a/build/pkgs/coxeter3/distros/fedora.txt b/build/pkgs/coxeter3/distros/fedora.txt index 3cfeb2f9fa0..0c6fb8a3e95 100644 --- a/build/pkgs/coxeter3/distros/fedora.txt +++ b/build/pkgs/coxeter3/distros/fedora.txt @@ -1 +1,3 @@ -coxeter coxeter-devel coxeter-tools +coxeter +coxeter-devel +coxeter-tools diff --git a/build/pkgs/curl/distros/cygwin.txt b/build/pkgs/curl/distros/cygwin.txt index 7bcb9889a4d..26bfd4d1186 100644 --- a/build/pkgs/curl/distros/cygwin.txt +++ b/build/pkgs/curl/distros/cygwin.txt @@ -1 +1,2 @@ -libcurl-devel curl +libcurl-devel +curl diff --git a/build/pkgs/curl/distros/fedora.txt b/build/pkgs/curl/distros/fedora.txt index 7bcb9889a4d..26bfd4d1186 100644 --- a/build/pkgs/curl/distros/fedora.txt +++ b/build/pkgs/curl/distros/fedora.txt @@ -1 +1,2 @@ -libcurl-devel curl +libcurl-devel +curl diff --git a/build/pkgs/curl/distros/macports.txt b/build/pkgs/curl/distros/macports.txt index 13368f82902..284d14f8d01 100644 --- a/build/pkgs/curl/distros/macports.txt +++ b/build/pkgs/curl/distros/macports.txt @@ -1 +1,2 @@ -curl +# Broken as of 2022-05-01 +#curl diff --git a/build/pkgs/curl/distros/opensuse.txt b/build/pkgs/curl/distros/opensuse.txt index ffd4f36dc86..a0ac40946fa 100644 --- a/build/pkgs/curl/distros/opensuse.txt +++ b/build/pkgs/curl/distros/opensuse.txt @@ -1,2 +1,2 @@ curl -"pkgconfig(libcurl)" +pkgconfig(libcurl) diff --git a/build/pkgs/eclib/distros/fedora.txt b/build/pkgs/eclib/distros/fedora.txt index 7861ae6de2b..2bcdd8cb9a5 100644 --- a/build/pkgs/eclib/distros/fedora.txt +++ b/build/pkgs/eclib/distros/fedora.txt @@ -1 +1,2 @@ -eclib eclib-devel +eclib +eclib-devel diff --git a/build/pkgs/ecm/distros/fedora.txt b/build/pkgs/ecm/distros/fedora.txt index 45e62aa8032..0625c82b8b9 100644 --- a/build/pkgs/ecm/distros/fedora.txt +++ b/build/pkgs/ecm/distros/fedora.txt @@ -1 +1,2 @@ -gmp-ecm gmp-ecm-devel +gmp-ecm +gmp-ecm-devel diff --git a/build/pkgs/fflas_ffpack/distros/opensuse.txt b/build/pkgs/fflas_ffpack/distros/opensuse.txt index 2dda5369b8d..cf55f69f450 100644 --- a/build/pkgs/fflas_ffpack/distros/opensuse.txt +++ b/build/pkgs/fflas_ffpack/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(fflas-ffpack)" +pkgconfig(fflas-ffpack) diff --git a/build/pkgs/flint/distros/fedora.txt b/build/pkgs/flint/distros/fedora.txt index 8df1db2cd08..12eb8937aea 100644 --- a/build/pkgs/flint/distros/fedora.txt +++ b/build/pkgs/flint/distros/fedora.txt @@ -1 +1,2 @@ -flint flint-devel +flint +flint-devel diff --git a/build/pkgs/fplll/distros/fedora.txt b/build/pkgs/fplll/distros/fedora.txt index ccf2e14dfee..29c3b897ae1 100644 --- a/build/pkgs/fplll/distros/fedora.txt +++ b/build/pkgs/fplll/distros/fedora.txt @@ -1 +1,2 @@ -libfplll libfplll-devel +libfplll +libfplll-devel diff --git a/build/pkgs/fplll/distros/opensuse.txt b/build/pkgs/fplll/distros/opensuse.txt index ee87c038706..2589161f43c 100644 --- a/build/pkgs/fplll/distros/opensuse.txt +++ b/build/pkgs/fplll/distros/opensuse.txt @@ -1,3 +1,3 @@ -"pkgconfig(fplll)" +pkgconfig(fplll) fplll-devel fplll diff --git a/build/pkgs/freetype/distros/macports.txt b/build/pkgs/freetype/distros/macports.txt index 098479093ff..a2e684ddd92 100644 --- a/build/pkgs/freetype/distros/macports.txt +++ b/build/pkgs/freetype/distros/macports.txt @@ -1 +1,2 @@ -freetype +# Broken as of 2022-05-01 +#freetype diff --git a/build/pkgs/freetype/distros/opensuse.txt b/build/pkgs/freetype/distros/opensuse.txt index 33f8f6b7bdd..9205ba71e27 100644 --- a/build/pkgs/freetype/distros/opensuse.txt +++ b/build/pkgs/freetype/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(freetype2)" +pkgconfig(freetype2) diff --git a/build/pkgs/gc/distros/fedora.txt b/build/pkgs/gc/distros/fedora.txt index 1d6df64a216..b6940f8b6aa 100644 --- a/build/pkgs/gc/distros/fedora.txt +++ b/build/pkgs/gc/distros/fedora.txt @@ -1 +1,2 @@ -gc gc-devel +gc +gc-devel diff --git a/build/pkgs/gc/distros/opensuse.txt b/build/pkgs/gc/distros/opensuse.txt index 4620f6a8cb4..f250631fcc2 100644 --- a/build/pkgs/gc/distros/opensuse.txt +++ b/build/pkgs/gc/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(bdw-gc)" +pkgconfig(bdw-gc) diff --git a/build/pkgs/gf2x/distros/fedora.txt b/build/pkgs/gf2x/distros/fedora.txt index 726d8da490c..3d1d2bb46bb 100644 --- a/build/pkgs/gf2x/distros/fedora.txt +++ b/build/pkgs/gf2x/distros/fedora.txt @@ -1 +1,2 @@ -gf2x gf2x-devel +gf2x +gf2x-devel diff --git a/build/pkgs/gf2x/distros/opensuse.txt b/build/pkgs/gf2x/distros/opensuse.txt index 9a15ad0abe3..9fb7b9fd16e 100644 --- a/build/pkgs/gf2x/distros/opensuse.txt +++ b/build/pkgs/gf2x/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(gf2x)" +pkgconfig(gf2x) diff --git a/build/pkgs/gfortran/distros/macports.txt b/build/pkgs/gfortran/distros/macports.txt index c2878adf893..dfa7190f158 100644 --- a/build/pkgs/gfortran/distros/macports.txt +++ b/build/pkgs/gfortran/distros/macports.txt @@ -1 +1,2 @@ -gcc10 +gfortran +gcc10 ++gfortran diff --git a/build/pkgs/giac/distros/arch.txt b/build/pkgs/giac/distros/arch.txt index 7bdbd844d6c..f54c3286e4f 100644 --- a/build/pkgs/giac/distros/arch.txt +++ b/build/pkgs/giac/distros/arch.txt @@ -1 +1,2 @@ -libgiac giac +libgiac +giac diff --git a/build/pkgs/givaro/distros/fedora.txt b/build/pkgs/givaro/distros/fedora.txt index 6848d8c4e7f..9016d00aaab 100644 --- a/build/pkgs/givaro/distros/fedora.txt +++ b/build/pkgs/givaro/distros/fedora.txt @@ -1 +1,2 @@ -givaro givaro-devel +givaro +givaro-devel diff --git a/build/pkgs/givaro/distros/opensuse.txt b/build/pkgs/givaro/distros/opensuse.txt index 2a8103e6f6b..8de5fadae90 100644 --- a/build/pkgs/givaro/distros/opensuse.txt +++ b/build/pkgs/givaro/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(givaro)" +pkgconfig(givaro) diff --git a/build/pkgs/glpk/distros/cygwin.txt b/build/pkgs/glpk/distros/cygwin.txt index 2e6c6a10cb8..0fbb959079e 100644 --- a/build/pkgs/glpk/distros/cygwin.txt +++ b/build/pkgs/glpk/distros/cygwin.txt @@ -1 +1,2 @@ -glpk libglpk-devel +glpk +libglpk-devel diff --git a/build/pkgs/glpk/distros/fedora.txt b/build/pkgs/glpk/distros/fedora.txt index 73ab7f14b14..e028b246574 100644 --- a/build/pkgs/glpk/distros/fedora.txt +++ b/build/pkgs/glpk/distros/fedora.txt @@ -1 +1,3 @@ -glpk glpk-devel glpk-utils +glpk +glpk-devel +glpk-utils diff --git a/build/pkgs/gmp/distros/fedora.txt b/build/pkgs/gmp/distros/fedora.txt index bbe9ee39cab..1436ed982e7 100644 --- a/build/pkgs/gmp/distros/fedora.txt +++ b/build/pkgs/gmp/distros/fedora.txt @@ -1 +1,2 @@ -gmp gmp-devel +gmp +gmp-devel diff --git a/build/pkgs/gsl/distros/fedora.txt b/build/pkgs/gsl/distros/fedora.txt index 5577d09957b..ce35d3d80bd 100644 --- a/build/pkgs/gsl/distros/fedora.txt +++ b/build/pkgs/gsl/distros/fedora.txt @@ -1 +1,2 @@ -gsl gsl-devel +gsl +gsl-devel diff --git a/build/pkgs/gsl/distros/opensuse.txt b/build/pkgs/gsl/distros/opensuse.txt index ccfee4f4e43..c1867648576 100644 --- a/build/pkgs/gsl/distros/opensuse.txt +++ b/build/pkgs/gsl/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(gsl)" +pkgconfig(gsl) diff --git a/build/pkgs/igraph/distros/fedora.txt b/build/pkgs/igraph/distros/fedora.txt index 8ca7a112d45..fa2dc51a2ce 100644 --- a/build/pkgs/igraph/distros/fedora.txt +++ b/build/pkgs/igraph/distros/fedora.txt @@ -1 +1,2 @@ -igraph igraph-devel +igraph +igraph-devel diff --git a/build/pkgs/iml/distros/fedora.txt b/build/pkgs/iml/distros/fedora.txt index 32307096d65..88a895a10f6 100644 --- a/build/pkgs/iml/distros/fedora.txt +++ b/build/pkgs/iml/distros/fedora.txt @@ -1 +1,2 @@ -iml iml-devel +iml +iml-devel diff --git a/build/pkgs/info/distros/fedora.txt b/build/pkgs/info/distros/fedora.txt index c0d8f74e0ad..c3ed35de973 100644 --- a/build/pkgs/info/distros/fedora.txt +++ b/build/pkgs/info/distros/fedora.txt @@ -1 +1,2 @@ -texinfo info +texinfo +info diff --git a/build/pkgs/isl/distros/opensuse.txt b/build/pkgs/isl/distros/opensuse.txt index 721c2bb0dcb..ec70829dde7 100644 --- a/build/pkgs/isl/distros/opensuse.txt +++ b/build/pkgs/isl/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(isl)" +pkgconfig(isl) diff --git a/build/pkgs/libatomic_ops/distros/fedora.txt b/build/pkgs/libatomic_ops/distros/fedora.txt index 3417f891c11..d1f77fa5ad7 100644 --- a/build/pkgs/libatomic_ops/distros/fedora.txt +++ b/build/pkgs/libatomic_ops/distros/fedora.txt @@ -1 +1,2 @@ -libatomic_ops libatomic_ops-devel +libatomic_ops +libatomic_ops-devel diff --git a/build/pkgs/libatomic_ops/distros/opensuse.txt b/build/pkgs/libatomic_ops/distros/opensuse.txt index 6e7e1c4cecb..0d82eae1b32 100644 --- a/build/pkgs/libatomic_ops/distros/opensuse.txt +++ b/build/pkgs/libatomic_ops/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(atomic_ops)" +pkgconfig(atomic_ops) diff --git a/build/pkgs/libffi/distros/fedora.txt b/build/pkgs/libffi/distros/fedora.txt index 8d342f491c1..70c40a27925 100644 --- a/build/pkgs/libffi/distros/fedora.txt +++ b/build/pkgs/libffi/distros/fedora.txt @@ -1 +1,2 @@ -libffi libffi-devel +libffi +libffi-devel diff --git a/build/pkgs/libffi/distros/opensuse.txt b/build/pkgs/libffi/distros/opensuse.txt index 1a6986d429e..39fa66806ec 100644 --- a/build/pkgs/libffi/distros/opensuse.txt +++ b/build/pkgs/libffi/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(libffi)" +pkgconfig(libffi) diff --git a/build/pkgs/libgd/distros/fedora.txt b/build/pkgs/libgd/distros/fedora.txt index d27cc48549e..1f276d6eb09 100644 --- a/build/pkgs/libgd/distros/fedora.txt +++ b/build/pkgs/libgd/distros/fedora.txt @@ -1 +1,2 @@ -gd gd-devel +gd +gd-devel diff --git a/build/pkgs/libgd/distros/macports.txt b/build/pkgs/libgd/distros/macports.txt index d44f88f27cc..ee5e3357f06 100644 --- a/build/pkgs/libgd/distros/macports.txt +++ b/build/pkgs/libgd/distros/macports.txt @@ -1 +1,2 @@ -gd2 +# broken as of 2022-05-01 -- and also has too many dependencies +#gd2 diff --git a/build/pkgs/libgd/distros/opensuse.txt b/build/pkgs/libgd/distros/opensuse.txt index 48195aa6b44..bcf953527f8 100644 --- a/build/pkgs/libgd/distros/opensuse.txt +++ b/build/pkgs/libgd/distros/opensuse.txt @@ -1,2 +1,2 @@ gd -"pkgconfig(gdlib)" +pkgconfig(gdlib) diff --git a/build/pkgs/libgd/distros/slackware.txt b/build/pkgs/libgd/distros/slackware.txt index 5d28bb87ae1..442f2e7f440 100644 --- a/build/pkgs/libgd/distros/slackware.txt +++ b/build/pkgs/libgd/distros/slackware.txt @@ -1,3 +1,8 @@ gd # shared library dependencies of gd -fontconfig libXpm libX11 libxcb libXau libXdmcp +fontconfig +libXpm +libX11 +libxcb +libXau +libXdmcp diff --git a/build/pkgs/liblzma/distros/fedora.txt b/build/pkgs/liblzma/distros/fedora.txt index 813a264efd5..87d41237fa8 100644 --- a/build/pkgs/liblzma/distros/fedora.txt +++ b/build/pkgs/liblzma/distros/fedora.txt @@ -1 +1,2 @@ -xz xz-devel +xz +xz-devel diff --git a/build/pkgs/liblzma/distros/opensuse.txt b/build/pkgs/liblzma/distros/opensuse.txt index f84d903df3e..96db709ccb8 100644 --- a/build/pkgs/liblzma/distros/opensuse.txt +++ b/build/pkgs/liblzma/distros/opensuse.txt @@ -1,2 +1,2 @@ xz -"pkgconfig(liblzma)" +pkgconfig(liblzma) diff --git a/build/pkgs/libogg/distros/opensuse.txt b/build/pkgs/libogg/distros/opensuse.txt index 886b7534f7b..cab88ad14f1 100644 --- a/build/pkgs/libogg/distros/opensuse.txt +++ b/build/pkgs/libogg/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(ogg)" +pkgconfig(ogg) diff --git a/build/pkgs/libpng/distros/opensuse.txt b/build/pkgs/libpng/distros/opensuse.txt index 3283fd2e697..40ec3d0a25c 100644 --- a/build/pkgs/libpng/distros/opensuse.txt +++ b/build/pkgs/libpng/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(libpng16)" +pkgconfig(libpng16) diff --git a/build/pkgs/libsemigroups/distros/opensuse.txt b/build/pkgs/libsemigroups/distros/opensuse.txt index aca27d4e0e3..3e58abf59c9 100644 --- a/build/pkgs/libsemigroups/distros/opensuse.txt +++ b/build/pkgs/libsemigroups/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(libsemigroups)" +pkgconfig(libsemigroups) diff --git a/build/pkgs/libtheora/distros/opensuse.txt b/build/pkgs/libtheora/distros/opensuse.txt index 19826d2aea6..156db81fdea 100644 --- a/build/pkgs/libtheora/distros/opensuse.txt +++ b/build/pkgs/libtheora/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(theora)" +pkgconfig(theora) diff --git a/build/pkgs/linbox/distros/opensuse.txt b/build/pkgs/linbox/distros/opensuse.txt index 1a52a7c51d3..efef6e5c743 100644 --- a/build/pkgs/linbox/distros/opensuse.txt +++ b/build/pkgs/linbox/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(linbox)" +pkgconfig(linbox) diff --git a/build/pkgs/m4ri/distros/opensuse.txt b/build/pkgs/m4ri/distros/opensuse.txt index c2a7c2c8f93..ea526e29d8e 100644 --- a/build/pkgs/m4ri/distros/opensuse.txt +++ b/build/pkgs/m4ri/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(m4ri)" +pkgconfig(m4ri) diff --git a/build/pkgs/m4rie/distros/opensuse.txt b/build/pkgs/m4rie/distros/opensuse.txt index 4b8fbfa44df..78287631a6b 100644 --- a/build/pkgs/m4rie/distros/opensuse.txt +++ b/build/pkgs/m4rie/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(m4rie)" +pkgconfig(m4rie) diff --git a/build/pkgs/mathjax/distros/gentoo.txt b/build/pkgs/mathjax/distros/gentoo.txt index a347f8c2348..e0d633a9b98 100644 --- a/build/pkgs/mathjax/distros/gentoo.txt +++ b/build/pkgs/mathjax/distros/gentoo.txt @@ -1 +1 @@ -">=dev-libs/mathjax-3" +>=dev-libs/mathjax-3 diff --git a/build/pkgs/mpc/distros/fedora.txt b/build/pkgs/mpc/distros/fedora.txt index 491a280bb72..19ae194c12c 100644 --- a/build/pkgs/mpc/distros/fedora.txt +++ b/build/pkgs/mpc/distros/fedora.txt @@ -1 +1,2 @@ -libmpc libmpc-devel +libmpc +libmpc-devel diff --git a/build/pkgs/mpfr/distros/opensuse.txt b/build/pkgs/mpfr/distros/opensuse.txt index 564517323f0..dadf66949a4 100644 --- a/build/pkgs/mpfr/distros/opensuse.txt +++ b/build/pkgs/mpfr/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(mpfr)" +pkgconfig(mpfr) diff --git a/build/pkgs/ncurses/distros/opensuse.txt b/build/pkgs/ncurses/distros/opensuse.txt index b31c6886b17..f50c62d6ac4 100644 --- a/build/pkgs/ncurses/distros/opensuse.txt +++ b/build/pkgs/ncurses/distros/opensuse.txt @@ -1,2 +1,2 @@ -"pkgconfig(ncurses)" -"pkgconfig(ncursesw)" +pkgconfig(ncurses) +pkgconfig(ncursesw) diff --git a/build/pkgs/openblas/distros/cygwin.txt b/build/pkgs/openblas/distros/cygwin.txt index d2146131e38..055fa2733d1 100644 --- a/build/pkgs/openblas/distros/cygwin.txt +++ b/build/pkgs/openblas/distros/cygwin.txt @@ -1 +1,2 @@ -liblapack-devel libopenblas +liblapack-devel +libopenblas diff --git a/build/pkgs/openssl/distros/fedora.txt b/build/pkgs/openssl/distros/fedora.txt index dda63a9f276..a9579db4fca 100644 --- a/build/pkgs/openssl/distros/fedora.txt +++ b/build/pkgs/openssl/distros/fedora.txt @@ -1 +1,2 @@ -openssl openssl-devel +openssl +openssl-devel diff --git a/build/pkgs/openssl/distros/slackware.txt b/build/pkgs/openssl/distros/slackware.txt index 6ed59c09128..14c745a6bc8 100644 --- a/build/pkgs/openssl/distros/slackware.txt +++ b/build/pkgs/openssl/distros/slackware.txt @@ -1 +1,2 @@ -openssl openssl-solibs +openssl +openssl-solibs diff --git a/build/pkgs/pari/distros/conda.txt b/build/pkgs/pari/distros/conda.txt index 88ec4bef346..018d16817d3 100644 --- a/build/pkgs/pari/distros/conda.txt +++ b/build/pkgs/pari/distros/conda.txt @@ -1,3 +1,6 @@ pari=*=*_pthread # We add these data packages because they are checked by spkg-configure.m4 -pari-elldata pari-galdata pari-galpol pari-seadata +pari-elldata +pari-galdata +pari-galpol +pari-seadata diff --git a/build/pkgs/pari/distros/fedora.txt b/build/pkgs/pari/distros/fedora.txt index 95ba141d56c..d315900766c 100644 --- a/build/pkgs/pari/distros/fedora.txt +++ b/build/pkgs/pari/distros/fedora.txt @@ -2,7 +2,8 @@ pari-devel # spkg-configure checks for gp, gphelp. Access to the documentation is crucial # for the cypari2 build. #29342: By default configuration in /etc/dnf/dnf.conf, # installation of documentation may be suppressed; we override this. -pari-gp --setopt=tsflags= +pari-gp +--setopt=tsflags= # spkg-configure checks for data pari-galdata pari-galpol diff --git a/build/pkgs/pari/distros/gentoo.txt b/build/pkgs/pari/distros/gentoo.txt index 449975ac8e1..cd13d54e8cc 100644 --- a/build/pkgs/pari/distros/gentoo.txt +++ b/build/pkgs/pari/distros/gentoo.txt @@ -1 +1,2 @@ -sci-mathematics/pari sci-mathematics/pari-data +sci-mathematics/pari +sci-mathematics/pari-data diff --git a/build/pkgs/pari/distros/macports.txt b/build/pkgs/pari/distros/macports.txt index 67abbc9dec6..8960baaba3e 100644 --- a/build/pkgs/pari/distros/macports.txt +++ b/build/pkgs/pari/distros/macports.txt @@ -1 +1,2 @@ -pari +# incomplete, unusable for sage, causes cysignals build failure +#pari diff --git a/build/pkgs/perl_term_readline_gnu/distros/opensuse.txt b/build/pkgs/perl_term_readline_gnu/distros/opensuse.txt index ba80f6c445f..60563e056ca 100644 --- a/build/pkgs/perl_term_readline_gnu/distros/opensuse.txt +++ b/build/pkgs/perl_term_readline_gnu/distros/opensuse.txt @@ -1 +1 @@ -"perl(Term::ReadLine::Gnu)" +perl(Term::ReadLine::Gnu) diff --git a/build/pkgs/planarity/distros/fedora.txt b/build/pkgs/planarity/distros/fedora.txt index b107ebbf96f..e3d211ca5d1 100644 --- a/build/pkgs/planarity/distros/fedora.txt +++ b/build/pkgs/planarity/distros/fedora.txt @@ -1 +1,2 @@ -planarity planarity-devel +planarity +planarity-devel diff --git a/build/pkgs/polylib/distros/opensuse.txt b/build/pkgs/polylib/distros/opensuse.txt index f6432c31dfe..8b7f1e54de7 100644 --- a/build/pkgs/polylib/distros/opensuse.txt +++ b/build/pkgs/polylib/distros/opensuse.txt @@ -1,2 +1,2 @@ polylib -"pkgconfig(polylibgmp)" +pkgconfig(polylibgmp) diff --git a/build/pkgs/ptyprocess/distros/conda.txt b/build/pkgs/ptyprocess/distros/conda.txt index 4a518435c60..964d3f79453 100644 --- a/build/pkgs/ptyprocess/distros/conda.txt +++ b/build/pkgs/ptyprocess/distros/conda.txt @@ -1,3 +1,3 @@ # The version should be fixed to 0.5.1 (see https://github.com/sagemath/sage/issues/32147), but this is not available on conda-forge -# thus don't install ptyprocess with conda, but let pip handle it +# thus don't install ptyprocess with conda, but let pip handle it # ptyprocess diff --git a/build/pkgs/python3/distros/macports.txt b/build/pkgs/python3/distros/macports.txt index 6a2d05c5edb..92826c681b4 100644 --- a/build/pkgs/python3/distros/macports.txt +++ b/build/pkgs/python3/distros/macports.txt @@ -1 +1 @@ -python39 +python310 diff --git a/build/pkgs/qhull/distros/macports.txt b/build/pkgs/qhull/distros/macports.txt index 95d316779cf..703b7aadad9 100644 --- a/build/pkgs/qhull/distros/macports.txt +++ b/build/pkgs/qhull/distros/macports.txt @@ -1 +1,2 @@ -qhull +# broken as of 2022-05-01 +#qhull diff --git a/build/pkgs/r/distros/conda.txt b/build/pkgs/r/distros/conda.txt index 42e26b8d8ed..4c235733c5f 100644 --- a/build/pkgs/r/distros/conda.txt +++ b/build/pkgs/r/distros/conda.txt @@ -1 +1,2 @@ -r r-essentials +r +r-essentials diff --git a/build/pkgs/r/distros/fedora.txt b/build/pkgs/r/distros/fedora.txt index a5148a636ee..088b10653bb 100644 --- a/build/pkgs/r/distros/fedora.txt +++ b/build/pkgs/r/distros/fedora.txt @@ -1 +1,2 @@ -R R-devel +R +R-devel diff --git a/build/pkgs/r/distros/macports.txt b/build/pkgs/r/distros/macports.txt index 331bae08fb7..5798a47ae13 100644 --- a/build/pkgs/r/distros/macports.txt +++ b/build/pkgs/r/distros/macports.txt @@ -1 +1,2 @@ -R +# Broken as of 2022-05-01, and too many dependencies (X11) +# R diff --git a/build/pkgs/readline/distros/opensuse.txt b/build/pkgs/readline/distros/opensuse.txt index fffe7fdb306..66fd20246e7 100644 --- a/build/pkgs/readline/distros/opensuse.txt +++ b/build/pkgs/readline/distros/opensuse.txt @@ -1,3 +1,3 @@ readline-devel # not available on Leap 15.2: -"pkgconfig(readline)" +pkgconfig(readline) diff --git a/build/pkgs/sqlite/distros/opensuse.txt b/build/pkgs/sqlite/distros/opensuse.txt index e5831abec57..80861d24415 100644 --- a/build/pkgs/sqlite/distros/opensuse.txt +++ b/build/pkgs/sqlite/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(sqlite3)" +pkgconfig(sqlite3) diff --git a/build/pkgs/suitesparse/distros/fedora.txt b/build/pkgs/suitesparse/distros/fedora.txt index 473f5afeb82..add9f88182c 100644 --- a/build/pkgs/suitesparse/distros/fedora.txt +++ b/build/pkgs/suitesparse/distros/fedora.txt @@ -1 +1,2 @@ -suitesparse suitesparse-devel +suitesparse +suitesparse-devel diff --git a/build/pkgs/suitesparse/distros/gentoo.txt b/build/pkgs/suitesparse/distros/gentoo.txt index 3b1b625f3e6..36650ca82e3 100644 --- a/build/pkgs/suitesparse/distros/gentoo.txt +++ b/build/pkgs/suitesparse/distros/gentoo.txt @@ -1 +1,4 @@ -sci-libs/amd sci-libs/cholmod sci-libs/suitesparseconfig sci-libs/umfpack +sci-libs/amd +sci-libs/cholmod +sci-libs/suitesparseconfig +sci-libs/umfpack diff --git a/build/pkgs/suitesparse/distros/macports.txt b/build/pkgs/suitesparse/distros/macports.txt index 45d8956e69e..93b99b56740 100644 --- a/build/pkgs/suitesparse/distros/macports.txt +++ b/build/pkgs/suitesparse/distros/macports.txt @@ -1 +1,2 @@ -SuiteSparse +# broken as of 2022-05-01 +#SuiteSparse diff --git a/build/pkgs/tachyon/distros/fedora.txt b/build/pkgs/tachyon/distros/fedora.txt index b1ee1e1bdbe..035020a8d5b 100644 --- a/build/pkgs/tachyon/distros/fedora.txt +++ b/build/pkgs/tachyon/distros/fedora.txt @@ -1 +1,2 @@ -tachyon tachyon-devel +tachyon +tachyon-devel diff --git a/build/pkgs/zeromq/distros/fedora.txt b/build/pkgs/zeromq/distros/fedora.txt index 901dce11d4f..7ab081d69d9 100644 --- a/build/pkgs/zeromq/distros/fedora.txt +++ b/build/pkgs/zeromq/distros/fedora.txt @@ -1 +1,2 @@ -zeromq zeromq-devel +zeromq +zeromq-devel diff --git a/build/pkgs/zeromq/distros/macports.txt b/build/pkgs/zeromq/distros/macports.txt index 3f0b9927569..11d74369d60 100644 --- a/build/pkgs/zeromq/distros/macports.txt +++ b/build/pkgs/zeromq/distros/macports.txt @@ -1 +1,2 @@ -zmq-devel +# Broken as of 2022-05-01 +#zmq-devel diff --git a/build/pkgs/zeromq/distros/opensuse.txt b/build/pkgs/zeromq/distros/opensuse.txt index bf80cc05be1..1d10c00df82 100644 --- a/build/pkgs/zeromq/distros/opensuse.txt +++ b/build/pkgs/zeromq/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(libzmq)" +pkgconfig(libzmq) diff --git a/build/pkgs/zlib/distros/opensuse.txt b/build/pkgs/zlib/distros/opensuse.txt index 734537742c0..74ff91e4b69 100644 --- a/build/pkgs/zlib/distros/opensuse.txt +++ b/build/pkgs/zlib/distros/opensuse.txt @@ -1 +1 @@ -"pkgconfig(zlib)" +pkgconfig(zlib) diff --git a/src/doc/bootstrap b/src/doc/bootstrap index b6830ad7bb3..18b68bc012e 100755 --- a/src/doc/bootstrap +++ b/src/doc/bootstrap @@ -19,7 +19,6 @@ fi cd "$SAGE_ROOT" -STRIP_COMMENTS="sed s/#.*//;" OUTPUT_DIR="src/doc/en/installation" mkdir -p "$OUTPUT_DIR" @@ -37,9 +36,8 @@ for SYSTEM in arch debian fedora homebrew opensuse; do DEVELOP_SYSTEM_PACKAGES= for PKG_BASE in $(sage-package list --has-file distros/$SYSTEM.txt); do PKG_SCRIPTS=build/pkgs/$PKG_BASE - SYSTEM_PACKAGES_FILE=$PKG_SCRIPTS/distros/$SYSTEM.txt PKG_TYPE=$(cat $PKG_SCRIPTS/type) - PKG_SYSTEM_PACKAGES=$(echo $(${STRIP_COMMENTS} $SYSTEM_PACKAGES_FILE)) + PKG_SYSTEM_PACKAGES=$(sage-get-system-packages $SYSTEM $PKG_BASE) if [ -n "PKG_SYSTEM_PACKAGES" ]; then if [ -f $PKG_SCRIPTS/spkg-configure.m4 ]; then case "$PKG_BASE:$PKG_TYPE" in @@ -75,10 +73,10 @@ for SYSTEM in arch debian fedora homebrew opensuse; do if [ "${BOOTSTRAP_QUIET}" = "no" ]; then echo >&2 $0:$LINENO: installing "$OUTPUT_DIR"/$SYSTEM"*.txt" fi - echo "$(sage-print-system-package-command $SYSTEM --prompt --sudo install $(echo $(echo $SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM.txt - echo "$(sage-print-system-package-command $SYSTEM --prompt --sudo install $(echo $(echo $OPTIONAL_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-optional.txt - echo "$(sage-print-system-package-command $SYSTEM --prompt --sudo install $(echo $(echo $RECOMMENDED_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-recommended.txt - echo "$(sage-print-system-package-command $SYSTEM --prompt --sudo install $(echo $(echo $DEVELOP_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-develop.txt + echo "$(sage-print-system-package-command $SYSTEM --prompt --wrap --sudo install $(echo $(echo $SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM.txt + echo "$(sage-print-system-package-command $SYSTEM --prompt --wrap --sudo install $(echo $(echo $OPTIONAL_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-optional.txt + echo "$(sage-print-system-package-command $SYSTEM --prompt --wrap --sudo install $(echo $(echo $RECOMMENDED_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-recommended.txt + echo "$(sage-print-system-package-command $SYSTEM --prompt --wrap --sudo install $(echo $(echo $DEVELOP_SYSTEM_PACKAGES | xargs -n 1 echo | sort | uniq)))" > "$OUTPUT_DIR"/$SYSTEM-develop.txt done OUTPUT_DIR="src/doc/en/reference/spkg" diff --git a/src/doc/en/developer/packaging.rst b/src/doc/en/developer/packaging.rst index 81b0044b44c..96eb302e2d3 100644 --- a/src/doc/en/developer/packaging.rst +++ b/src/doc/en/developer/packaging.rst @@ -512,10 +512,15 @@ containing files with names like :: arch.txt conda.txt debian.txt + fedora.txt homebrew.txt ... -corresponding to different packaging systems. +corresponding to different packaging systems. Each system package +should appear on a separate line. If the shell-style variable reference +``${PYTHON_MINOR}`` appears, it is replaced by the minor version of +Python, e.g., 12 for Python 3.12.x. Everything on a line after a ``#`` +character is ignored, so comments can be included in the files. For example, if ``./configure`` detects that the Homebrew packaging system is in use, and if the current package can be provided by a diff --git a/tox.ini b/tox.ini index 4415cab94c2..eac4cdce808 100644 --- a/tox.ini +++ b/tox.ini @@ -500,7 +500,6 @@ setenv = ### ### "local" envs ### - homebrew: SYSTEM=homebrew local: SHARED_CACHE_DIR={toxworkdir}/Caches local: SETENV=: local: SETENV_CONFIGURE=: @@ -509,6 +508,7 @@ setenv = local-sudo: __SUDO=--sudo local-root: CONFIG_CONFIGURE_ARGS_ROOT=--enable-build-as-root # brew caches downloaded files in ${HOME}/Library/Caches. We share it between different toxenvs. + homebrew: SYSTEM=homebrew local-homebrew: HOMEBREW={envdir}/homebrew local-{homebrew-usrlocal,nohomebrew}: HOMEBREW=/usr/local # local-macos-nohomebrew: "best effort" isolation to avoid using a homebrew installation in /usr/local @@ -521,6 +521,16 @@ setenv = local-{homebrew-nokegonly,nohomebrew}: BOOTSTRAP=ACLOCAL_PATH="$HOMEBREW/opt/gettext/share/aclocal:$ACLOCAL_PATH" PATH="$HOMEBREW/opt/gettext/bin/:$HOMEBREW/bin:$PATH" ./bootstrap local-homebrew-!nokegonly: SETENV=. .homebrew-build-env local-homebrew: IGNORE_MISSING_SYSTEM_PACKAGES=no + # macports + macports: SYSTEM=macports + local-macports: MP_PREFIX={envdir}/macports + local-macports-optlocal: MP_PREFIX=/opt/local + local-macports-optlocal: SUDO=sudo + local-macports-optlocal: __SUDO=--sudo + local-macports: PATH={env:MP_PREFIX}/bin:/usr/bin:/bin:/usr/sbin:/sbin + local-macports: CPATH={env:MP_PREFIX}/include + local-macports: LIBRARY_PATH={env:MP_PREFIX}/lib + local-macports: SETENV=eval $(build/bin/sage-print-system-package-command {env:SYSTEM} setup-build-env) # conda local-conda: CONDA_PREFIX={envdir}/conda local-conda: PATH={env:CONDA_PREFIX}/bin:/usr/bin:/bin:/usr/sbin:/sbin @@ -568,6 +578,8 @@ setenv = homebrew-{python3.9,python3.10,python3.11,python3.12}: CONFIG_CONFIGURE_ARGS_1=--with-system-python3=force --with-python={env:HOMEBREW}/opt/python@{env:PYTHON_MAJOR}.{env:PYTHON_MINOR}/bin/python3 # Installers from https://www.python.org/downloads/macos/ (must manually download and install) macos-python3_pythonorg: CONFIG_CONFIGURE_ARGS_1=--with-system-python3=force --with-python=/Library/Frameworks/Python.framework/Versions/{env:PYTHON_MAJOR}.{env:PYTHON_MINOR}/bin/python3 + # MacPorts + macports-{python3.8,python3.9,python3.10,python3.11,python3.12}: CONFIG_CONFIGURE_ARGS_1=--with-system-python3=force --with-python={env:MP_PREFIX}/bin/python{env:PYTHON_MAJOR}.{env:PYTHON_MINOR} # https://github.com/pypa/manylinux manylinux-standard: CONFIG_CONFIGURE_ARGS_1=--with-system-python3=force --with-python=/opt/python/cp{env:PYTHON_MAJOR}{env:PYTHON_MINOR}-cp{env:PYTHON_MAJOR}{env:PYTHON_MINOR}/bin/python3 conda: CONFIG_CONFIGURE_ARGS_1=--with-system-python3=force --with-python=python3 @@ -613,7 +625,15 @@ setenv = macos-nohomebrew: FREETYPE_CONFIGURE=--without-harfbuzz macos-nohomebrew: PILLOW_BUILD_EXT=--disable-platform-guessing --disable-jpeg2000 --disable-imagequant --disable-tiff --disable-lcms --disable-webp --disable-webpmux --disable-xcb macos-nohomebrew: ZLIB_ROOT={env:MACOS_SDK}/usr - macos: MACOS_SDK=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk + macports: CONFIG_CONFIGURE_ARGS_2=--with-system-gcc=force CC="$CONFIGURED_CC" CXX="$CONFIGURED_CXX" + macports: CONFIGURED_CC=gcc -isysroot {env:MACOS_SDK} + macports: CONFIGURED_CXX=g++ -isysroot {env:MACOS_SDK} + macports-clang_13: CONFIGURED_CC=clang-mp-13 -isysroot {env:MACOS_SDK} + macports-clang_13: CONFIGURED_CXX=clang-mp-13 -isysroot {env:MACOS_SDK} + # + # macOS SDK/deployment target settings + # + {macos,macports}: MACOS_SDK=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk # python3 from XCode 12 has MACOSX_DEPLOYMENT_TARGET=10.14.6. Selecting a lower target would cause /usr/bin/python3 to be rejected by configure. macos-10.14: MACOS_SDK=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk macos-10.14: MACOSX_DEPLOYMENT_TARGET=10.14.6 @@ -688,6 +708,12 @@ commands = homebrew: bash -c 'if [ ! -x {env:HOMEBREW}/bin/brew ]; then mkdir -p {env:HOMEBREW} && cd {env:HOMEBREW} && curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 ; fi' homebrew: bash -c 'case "{env:SKIP_SYSTEM_PKG_INSTALL:}" in 1|y*|Y*);; *) export PATH="build/bin:$PATH" && PACKAGES=$(sage-get-system-packages homebrew $(sage-package list {env:SAGE_PACKAGE_LIST_ARGS}) {env:ALL_EXTRA_SAGE_PACKAGES}); {env:HOMEBREW}/bin/brew install $PACKAGES; {env:HOMEBREW}/bin/brew upgrade $PACKAGES;; esac' # + # local-macports + # + # https://guide.macports.org/#installing.macports.source.multiple + local-macports: bash -c 'if [ ! -x "{env:MP_PREFIX}/bin/port" ]; then (mkdir -p {envdir}/macports-src && cd {envdir}/macports-src && curl -L https://distfiles.macports.org/MacPorts/MacPorts-2.7.2.tar.gz | tar xz --strip 1 && ./configure --prefix="{env:MP_PREFIX}" --with-applications-dir=$MP_PREFIX/Applications --with-no-root-privileges --without-startupitems && make && {env:SUDO:} make install); fi' + local-macports: bash -c 'case "{env:SKIP_SYSTEM_PKG_INSTALL:}" in 1|y*|Y*);; *) {env:SUDO:} port selfupdate && {env:SUDO:} port upgrade outdated && PACKAGES=$(build/bin/sage-get-system-packages {env:SYSTEM} $(PATH=build/bin:$PATH build/bin/sage-package list {env:SAGE_PACKAGE_LIST_ARGS}) {env:ALL_EXTRA_SAGE_PACKAGES}); eval $(build/bin/sage-print-system-package-command {env:SYSTEM} {env:__SUDO:} --yes --no-install-recommends install $PACKAGES) || [ "$IGNORE_MISSING_SYSTEM_PACKAGES" = yes ] && echo "(ignoring errors)" ;; esac' + # # local-conda # # https://docs.anaconda.com/anaconda/install/silent-mode/