Differences between revisions 29 and 30
Revision 29 as of 2018-07-26 15:36:33
Size: 8978
Editor: timokau
Comment: Update nix section
Revision 30 as of 2018-07-26 18:11:10
Size: 9142
Editor: slelievre
Comment: Fix typos, minor edits
Deletions are marked like this. Additions are marked like this.
Line 21: Line 21:
== Binder ==

  * url: https://github.com/sagemath/sage-binder-env
Line 24: Line 28:
Line 28: Line 33:
Line 48: Line 54:
Line 54: Line 61:
Line 59: Line 67:
Line 63: Line 72:
Line 77: Line 87:
Line 84: Line 95:
Line 88: Line 100:
Line 102: Line 115:
Line 109: Line 123:
Line 116: Line 131:

```
{{{
Line 119: Line 133:
```
}}}
Line 125: Line 138:

  * Nix package manager: https://nixos.org/nix/
Line 126: Line 141:
  * Distribution agnostic, functinal, declarative package managing
  * Should always have 0 doctest failures. To archive 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.
  * 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 NixOS
  * Is 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 appreaciated.
  * Could even work with the linxu subsystem for windows, but probably needs some patches. Absolutely untested.
  * Allows user-installs, given that the nix package manager is already installed
  * 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.
  * 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.
  * 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.
Line 134: Line 149:
  * 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 a issue||https://github.com/NixOS/nixpkgs/issues/new]] pinging @timokau and I'll help you get started.   * 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 137: Line 152:
Line 140: Line 156:
Line 142: Line 159:
    * admin: pipedream
Line 145: Line 161:
Line 152: Line 169:
Line 157: Line 175:
Line 161: Line 180:
Line 164: Line 184:
Line 167: Line 188:
Line 170: Line 192:
Line 174: Line 197:
Line 177: Line 201:
Line 187: Line 212:
= Discussions = = Discussion =

Distribution and packaging of SageMath

Here are some links and information about distributing Sage.

Related pages: SupportedPlatforms, days77/packaging, Infrastructure

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.

Containers

Binder

Docker images

Official SageMath Docker images

Computational topology Sage Docker image

CoCalc Docker images

Official CoCalc Docker image:

Other CoCalc Docker images might ship SageMath too:

Virtualbox

Live USB

Sage Debian Live

AIMS Desktop

Clef agreg

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.

Arch-linux

Conda / Anaconda / Miniconda / Conda Forge

  • wiki page: Conda

  • people: isuruf, saraedum

Debian

Fedora package

Gentoo: Sage-on-Gentoo

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.

  • 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.
  • 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

  • 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

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

Porting to 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

Porting to exotic architectures

BSD

Solaris

AIX, HP-UX

Using SageMath through other software

Other software, such as Cantor and TeXmacs, have interfaces to SageMath.

On tablets and mobile phones, Juno provides a good interface to CoCalc.

See Interfaces to Sage in other software.

Discussion

Distribution (last edited 2023-02-23 20:08:05 by mkoeppe)