5679
Comment: SageMath now available in Anaconda and Homebrew
|
9079
remove off-topic section
|
Deletions are marked like this. | Additions are marked like this. |
Line 5: | Line 5: |
Related pages: SupportedPlatforms, [[days77/packaging]] | Related pages: [[days77/packaging]], [[Infrastructure]] |
Line 21: | Line 21: |
== Docker == | == Binder == * url: https://github.com/sagemath/sage-binder-env == Docker images == === Official SageMath Docker images === |
Line 25: | Line 32: |
=== Computational topology Sage Docker image === * ships: !SageMath, !SnapPy, Regina, PHCPack, pandas, pe, gridlink, flipper, curver, heegaard, pygraphviz * url: https://hub.docker.com/r/computop/sage/ * bitbucket repo: https://bitbucket.org/t3m/sagedocker * dockerfile: https://bitbucket.org/t3m/sagedocker/src/tip/sage/Dockerfile * people: Nathan Dunfield === CoCalc Docker images === Official !CoCalc Docker image: * ships !CoCalc, including !SageMath * url: https://hub.docker.com/r/sagemathinc/cocalc/ * !GitHub repo: https://github.com/sagemathinc/cocalc-docker * people: wstein Other !CoCalc Docker images might ship !SageMath too: * https://hub.docker.com/search/?q=cocalc |
|
Line 26: | Line 54: |
Line 32: | Line 61: |
Line 37: | Line 67: |
Line 41: | Line 72: |
Line 45: | Line 77: |
= Anaconda / Conda / Conda Forge = !SageMath is now available in Anaconda via !CondaForge, see [[https://groups.google.com/d/topic/sage-devel/wyaV8x5qolI/discussion|this announcement on sage-devel]]. = Linux distros = * mailing-list: [[https://groups.google.com/forum/#!forum/sage-packaging|sage-packaging]] |
= Package managers = This section is about SageMath packages in package managers, which can be related to particular Linux distributions, or macOS-specific (like Homebrew), or distribution-agnostic, or even OS-agnostic. * general SageMath packaging mailing list: [[https://groups.google.com/forum/#!forum/sage-packaging|sage-packaging]] |
Line 54: | Line 87: |
Line 57: | Line 91: |
* to install: ```sudo pacman -S sagemath``` | |
Line 59: | Line 94: |
== Conda / Anaconda / Miniconda / Conda Forge == * wiki page: [[Conda]] * people: isuruf, saraedum |
|
Line 60: | Line 100: |
Line 62: | Line 103: |
* package tracker: https://tracker.debian.org/teams/debian-sagemath/ | |
Line 69: | Line 111: |
* bug tracker: [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=sagemath|Debian bugs: package sagemath]] | |
Line 72: | Line 115: |
Line 79: | Line 123: |
Line 80: | Line 125: |
* Known test failures: https://github.com/cschwan/sage-on-gentoo/wiki/Known-test-failures * admin: fbissey, cschwan == Guix/Nix == * some info: [[days77/packaging]] |
* Issues: https://github.com/cschwan/sage-on-gentoo/issues * Maintainer: François Bissey (fbissey/kiwifb) == Homebrew == !SageMath can now be installed on macOS via Homebrew by running {{{ brew cask install sage }}} This fetches the dmg for the app, and installs the app from that dmg. See [[https://groups.google.com/d/msg/sage-devel/jdLfIKQ1M18/PVQqJUUqAgAJ|this post on sage-devel]]. == Nix == * Nix package manager: https://nixos.org/nix/ * Sage package: https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/science/math/sage * Distribution-agnostic, functional, declarative package managing. * Should always have 0 doctest failures. To achieve that, [[https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/science/math/sage/default.nix|some]] dependency versions are pinned. That is not an issue because Nix allows multiple versions of a package to be installed at the same time. However the goal is to minimize the amount of pinned dependencies. * Should work on most Linux distributions. More precisely any Linux distro where the Nix package manager is available, e.g. [[https://aur.archlinux.org/packages/nix|ArchLinux]], Debian, [[https://nixos.org/nix/|others]] -- definitely works on [[https://nixos.org/|NixOS]]. * Tested on x86 Linux. Probably works on ARM but that is as of yet untested. * Could run on Darwin, but currently doesn't since some dependencies don't have Darwin-specific patches. If you're a Darwin user, help with that would be very much appreciated. This is [[https://github.com/NixOS/nixpkgs/pull/45364|work in progress]]. * Might even work with the "Windows Subsystem for Linux", but probably needs some patches. Absolutely untested. * Allows user-installs, given that the nix package manager is already installed. * To install: `nix-env -iA nixpkgs.sage` or on NixOS just add sage to your `environment.systemPackages` * Betas are usually packaged in [[https://github.com/NixOS/nixpkgs/pull/44527|a PR]] until the release is final. * Currently (2018-07-26) maintained by timokau. Any help is appreciated. If you are interested (even if you don't know anything about nix yet), [[open an issue||https://github.com/NixOS/nixpkgs/issues/new]] pinging @timokau and I'll help you get started. |
Line 87: | Line 153: |
Line 90: | Line 157: |
Line 92: | Line 160: |
* admin: pipedream = Mac OS X / OS X / macOS = == Homebrew == !SageMath can now be installed via Homebrew. This fetches the dmg for the app and installs the app. See [[https://groups.google.com/d/msg/sage-devel/jdLfIKQ1M18/PVQqJUUqAgAJ|this post on sage-devel]]. |
== Other == Please edit this wiki or email slelievre if you know about other package managers providing !SageMath... See [[https://en.wikipedia.org/wiki/List_of_software_package_management_systems|wikipedia's list of package managers]]. |
Line 104: | Line 170: |
* in alpha stage * requires HAV activation in the BIOS * hosted at: https://github.com/embray/sage-windows/releases |
* see SageWindows * hosted at: https://github.com/sagemath/sage-windows/releases * based on the Cygwin port of Sage |
Line 109: | Line 176: |
Line 112: | Line 180: |
== Windows subsystem for Linux == * Under Windows 10, one can run the "Windows Subsystem for Linux" to "run Linux under Windows", and install !SageMath binaries for Linux. |
|
Line 113: | Line 185: |
Line 118: | Line 191: |
* outdated: SupportedPlatforms |
|
Line 120: | Line 194: |
Line 121: | Line 196: |
* previous effort: [[https://svnweb.freebsd.org/ports/head/math/sage/|Sage on FreeBSD]] | |
Line 123: | Line 199: |
Line 126: | Line 203: |
Line 128: | Line 206: |
= Using SageMath through other software = Other software, such as Cantor and !TeXmacs, have interfaces to SageMath. See [[https://wiki.sagemath.org/Interfaces#Interfaces_to_SageMath_in_other_software|Interfaces to Sage in other software]]. = Discussions = |
= Discussion = |
Distribution and packaging of SageMath
Here are some links and information about distributing Sage.
Related pages: days77/packaging, Infrastructure
Contents
Source and pre-compiled binaries
The release manager releases the source for each development release and each public release. Binaries for a number of operating systems are prepared by the release manager, and sometimes by more people.
source (public): http://www.sagemath.org/download-source.html
source (devel): http://www.sagemath.org/download-latest.html
binaries: http://www.sagemath.org/download.html
Containers
Binder
Docker images
Official SageMath Docker images
- admin: vbraun, sebasguts, nthiery, embray
Computational topology Sage Docker image
ships: SageMath, SnapPy, Regina, PHCPack, pandas, pe, gridlink, flipper, curver, heegaard, pygraphviz
bitbucket repo: https://bitbucket.org/t3m/sagedocker
dockerfile: https://bitbucket.org/t3m/sagedocker/src/tip/sage/Dockerfile
- people: Nathan Dunfield
CoCalc Docker images
Official CoCalc Docker image:
ships CoCalc, including SageMath
GitHub repo: https://github.com/sagemathinc/cocalc-docker
- people: wstein
Other CoCalc Docker images might ship SageMath too:
Virtualbox
see SageAppliance
- people: vbraun
Live USB
Sage Debian Live
- admin: tmonteil
hosted at: http://sagedebianlive.metelu.net/
mailing list: https://sagedebianlive.metelu.net/mailman/listinfo/devel
AIMS Desktop
url: https://launchpad.net/~aims/+archive/ubuntu/aims-desktop
- admin: pipedream
Clef agreg
- what: bootable "Linux + math software" environment for French "agrégation" exams
- admin: François Boisson
Package managers
This section is about SageMath packages in package managers, which can be related to particular Linux distributions, or macOS-specific (like Homebrew), or distribution-agnostic, or even OS-agnostic.
general SageMath packaging mailing list:
Arch-linux
hosted at: https://www.archlinux.org/packages/community/x86_64/sagemath/
repo: https://git.archlinux.org/svntogit/community.git/?h=packages/sagemath
to install: sudo pacman -S sagemath
- maintainer: Antonio Rojas
Conda / Anaconda / Miniconda / Conda Forge
wiki page: Conda
- people: isuruf, saraedum
Debian
wiki page: https://wiki.debian.org/DebianScience/Sage
packages: https://packages.debian.org/sagemath
package tracker: https://tracker.debian.org/teams/debian-sagemath/
build logs: https://buildd.debian.org/status/package.php?p=sagemath including ptestlong results
repo: https://anonscm.debian.org/cgit/debian-science/packages/sagemath.git
mailing list: https://lists.alioth.debian.org/mailman/listinfo/debian-science-sagemath
earlier discussions happened on the debian-science mailing list
Sage-side mailing list (dormant): debian-sage
status pages: master branch develop branch 7.4
bug tracker: Debian bugs: package sagemath
- people: Tobias Hansen, Julien Puydt, Jerome Benoit, Ximin Luo
Fedora package
see also: https://admin.fedoraproject.org/pkgdb/package/rpms/sagemath/
mailing list: https://lists.fedoraproject.org/archives/list/[email protected]/
- maintainer: Paulo Cesar Pereira de Andrade (pcpa)
Gentoo: Sage-on-Gentoo
repository: https://github.com/cschwan/sage-on-gentoo
- Maintainer: François Bissey (fbissey/kiwifb)
Homebrew
SageMath can now be installed on macOS via Homebrew by running
brew cask install sage
This fetches the dmg for the app, and installs the app from that dmg. See this post on sage-devel.
Nix
Nix package manager: https://nixos.org/nix/
Sage package: https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/science/math/sage
- Distribution-agnostic, functional, declarative package managing.
Should always have 0 doctest failures. To achieve that, some dependency versions are pinned. That is not an issue because Nix allows multiple versions of a package to be installed at the same time. However the goal is to minimize the amount of pinned dependencies.
Should work on most Linux distributions. More precisely any Linux distro where the Nix package manager is available, e.g. ArchLinux, Debian, others -- definitely works on NixOS.
- Tested on x86 Linux. Probably works on ARM but that is as of yet untested.
Could run on Darwin, but currently doesn't since some dependencies don't have Darwin-specific patches. If you're a Darwin user, help with that would be very much appreciated. This is work in progress.
- Might even work with the "Windows Subsystem for Linux", but probably needs some patches. Absolutely untested.
- Allows user-installs, given that the nix package manager is already installed.
To install: nix-env -iA nixpkgs.sage or on NixOS just add sage to your environment.systemPackages
Betas are usually packaged in a PR until the release is final.
Currently (2018-07-26) maintained by timokau. Any help is appreciated. If you are interested (even if you don't know anything about nix yet), open an issue pinging @timokau and I'll help you get started.
RPM package (Fedora, Mandriva)
Ubuntu
packages: http://packages.ubuntu.com/sagemath derived from the Debian packages
earlier PPA: https://launchpad.net/~aims/+archive/ubuntu/sagemath
Other
Please edit this wiki or email slelievre if you know about other package managers providing SageMath... See wikipedia's list of package managers.
Windows
SageMath installer for Windows
see SageWindows
hosted at: https://github.com/sagemath/sage-windows/releases
- based on the Cygwin port of Sage
Porting to Cygwin
pending tickets: component: "porting: cygwin"
Windows subsystem for Linux
Under Windows 10, one can run the "Windows Subsystem for Linux" to "run Linux under Windows", and install SageMath binaries for Linux.
Discussion
mailing list (dormant): sage-windows
Porting to exotic architectures
trac-wiki: Porting SageMath to Exotic architectures
outdated: SupportedPlatforms
BSD
pending tickets: component: "porting: BSD"
previous effort: Sage on FreeBSD
Solaris
pending tickets: component: "porting: Solaris"
AIX, HP-UX
pending tickets: component: "porting: AIX or HP-UX"
Discussion
Sage Days 77: https://wiki.sagemath.org/days77