# Difference between revisions of "SageMath"

m |
|||

Line 7: | Line 7: | ||

=== Install and configure layman and overlays === | === Install and configure layman and overlays === | ||

====Using layman==== | |||

The preferred way of getting sage-on-gentoo is layman. Make sure layman is installed with USE=git and correctly configured. You may find a guide for layman at: http://www.gentoo.org/proj/en/overlays/userguide.xml | |||

Update your layman list: | |||

{{console|body= | |||

###i## layman -L | |||

}} | |||

This overlay depends on | This overlay depends on science overlay. You will also need to add it, if not already installed: | ||

{{console|body= | |||

###i## layman -a science | |||

}} | |||

Finally add this overlay: | Finally, add this overlay: | ||

{{console|body= | |||

###i## layman -a sage-on-gentoo | |||

}} | |||

====Ebuilds unmask==== | |||

Before being able to install you may need to unmask the required ebuilds. You can use already-made files, shipped with overlay, such as: | |||

<code>sage-on-gentoo/package.unmask/sage</code> | |||

To use this file permanently, place symbolic link to this file into your <code>/etc/portage/package.unmask</code> directory: | |||

<path-to-layman> is usually <code>/var/lib/layman</code> (this path used to be <code>/usr/local/portage/layman</code> for older version of layman). | |||

{{console|body= | |||

###i## ln -s <path-to-layman>/sage-on-gentoo/package.unmask/sage /etc/portage/package.unmask/sage | |||

}} | |||

Notice, that in this example, portage's package.unmask is directory , make sure to apply masks entries according to your preferred way of masks handle (directory or a flat file). | |||

====Use flags==== | |||

Since Sage's ebuild requires its dependencies to be built with several USE- flags a standard package.use file is provided as well: | |||

{{console|body= | |||

###i## ln -s <path-to-layman>/sage-on-gentoo/package.use/sage /etc/portage/package.use/sage | |||

}} | |||

On a stable build installations you may also need following file: | |||

<path-to-layman> | {{console|body= | ||

###i## ln -s <path-to-layman>/sage-on-gentoo/package.use/sage-unstable /etc/portage/package.use/sage-unstable | |||

}} | |||

{{Note|With sage 6.8 a <code>99sage-doc-bin</code> file installed that makes it easy to use pre-built html documentation. This is recommended for ~arch users.}} | |||

Note | |||

====Installing Sage==== | |||

{{console|body= | |||

###i## emerge -va sage | |||

}} | |||

Please note that this will pull in a lot of dependencies. If you can not proceed with this step (because of circular dependencies, missing USE-flags, and so on) | Please, note that this will pull in a lot of dependencies. If you can not proceed with this step (because of circular dependencies, missing USE-flags, and so on), report this behavior. |

## Revision as of 08:04, March 20, 2017

SageMath is mathematical software with features covering many aspects of mathematics, including algebra, combinatorics, numerical mathematics, number theory, and calculus.

## Installation

There are two overlays that are needed to get Sage installed. The science-overlay and the sage-on-gentoo-overlay.

### Install and configure layman and overlays

#### Using layman

The preferred way of getting sage-on-gentoo is layman. Make sure layman is installed with USE=git and correctly configured. You may find a guide for layman at: http://www.gentoo.org/proj/en/overlays/userguide.xml Update your layman list:

root # layman -L

This overlay depends on science overlay. You will also need to add it, if not already installed:

root # layman -a science

Finally, add this overlay:

root # layman -a sage-on-gentoo

#### Ebuilds unmask

Before being able to install you may need to unmask the required ebuilds. You can use already-made files, shipped with overlay, such as:
`sage-on-gentoo/package.unmask/sage`

To use this file permanently, place symbolic link to this file into your `/etc/portage/package.unmask`

directory:
<path-to-layman> is usually `/var/lib/layman`

(this path used to be `/usr/local/portage/layman`

for older version of layman).

root # ln -s <path-to-layman>/sage-on-gentoo/package.unmask/sage /etc/portage/package.unmask/sage

Notice, that in this example, portage's package.unmask is directory , make sure to apply masks entries according to your preferred way of masks handle (directory or a flat file).

#### Use flags

Since Sage's ebuild requires its dependencies to be built with several USE- flags a standard package.use file is provided as well:

root # ln -s <path-to-layman>/sage-on-gentoo/package.use/sage /etc/portage/package.use/sage

On a stable build installations you may also need following file:

root # ln -s <path-to-layman>/sage-on-gentoo/package.use/sage-unstable /etc/portage/package.use/sage-unstable

With sage 6.8 a `99sage-doc-bin`

file installed that makes it easy to use pre-built html documentation. This is recommended for ~arch users.

#### Installing Sage

root # emerge -va sage

Please, note that this will pull in a lot of dependencies. If you can not proceed with this step (because of circular dependencies, missing USE-flags, and so on), report this behavior.