# SageMath

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.