The files in this directory are the architecture dependent Ubuntu distribution files. We hope the automatic procedure described below works for you, so you don't have to download any of these files manually. With luck, you will not have to visit this page again nor read these instructions again. Please let us know if that doesn't work out for you.

(Thanks to Brent Baccala, an Ubuntu distribution for ARM chips is available here. Our test suite has not been run on it.)

Instructions for installing Macaulay2 with root access

Official repositories

Macaulay2 has been available in the official repositories since Ubuntu 21.04 "Hirsute Hippo" and may be installed using:

  sudo apt install macaulay2

The version of Macaulay2 in the official repositories may be older. To obtain the most recent version, choose one of the other options below.

Personal Package Archive

The most recent version of Macaulay2 is available for Ubuntu 18.04 "Bionic Beaver", Ubuntu 20.04 "Focal Fossa", Ubuntu 22.04 "Jammy Jellyfish", Ubuntu 23.04 "Lunar Lobster", and Ubuntu 23.10 "Mantic Minotaur" using a PPA (Personal Package Archive) maintained by Doug Torrance.

To add the repository to your system, run the following command:

  sudo add-apt-repository ppa:macaulay2/macaulay2

Then you may install Macaulay2 using the following:

  sudo apt install macaulay2

Instructions for installing Macaulay2 without root access

You may install from a tar file, if we have provided one above. Alternatively, here is the procedure for unpacking a *.deb file yourself, which you may use on the two *.deb files mentioned above. (One of them provides the files that depend on the architecture and operating system, and the other provides the files that have the same form in all distrubtions.) We assume the *.deb file is called /tmp/Macaulay2-1.6-AAA-Linux-Ubuntu-XXX.deb, which you have chosen because you have version XXX of Ubuntu. Here "AAA" denotes your computer's architecture.

     mkdir foo
     cd foo
     ar x /tmp/Macaulay2-1.6-AAA-Linux-Ubuntu-XXX.deb data.tar.gz
     tar xzf data.tar.gz

The result will be a directory tree named "usr", which can be moved and renamed at will. After moving it, run the program bin/M2 contained within, and run the "setup()" command to set up your standard init files, as described elsewhere. Then the directory "foo" and the file "data.tar.gz" in it can be removed.