Macaulay2 for Debian
====================

Javascript libraries
--------------------
Macaulay2 uses a number of Javascript libraries.  In particular, they
are used to render mathematical expressions in the browser-based
documentation and to visualize various mathematical objects by the
Visualize package.

Upstream embeds these libraries in the source code, often minimized.
This is not desirable for the Debian package.  Therefore, we repack
the tarball (using Files-Excluded in debian/copyright) without the
embedded copies and use dh_linktree to create symbolic links to the
Debian versions.

dwww
----
The Macaulay2 documentation is registered with doc-base.  In order to
view the html documentation properly in your web browser using dwww,
you must append "/usr/share/Macaulay2" to DWWW_DOCPATH in
/etc/dwww/dwww.conf.  Otherwise, some resources (e.g., CSS and
Javascript files) will be unavailable.

Suggested packages
------------------
Quite a few additional Debian packages will be installed alongside
Macaulay2 automatically due to being listed in "Depends" or
"Recommended", but there are a number of others that are listed under
"Suggests" that will not be installed unless you pass
"--install-suggests" to apt or install them separately.  They are:

* bergman - Used by NCAlgebra package.

* dot2tex - Used by showTikZ function in Graphs package.

* fig2dev - Used by gfanRender and gfanRenderStaircase functions in
  gfanInterface package.

* graphviz - Used by displayGraph function in Graphs package.

* pdf-viewer (virtual package) - Used by displayPoset function in
  Posets package.  The default pdf viewer is called using xdg-open;
  use xdg-mime to change it.

* phcpack - Used by MonodromySolver, NumericalSchubertCalculus, and
  PHCpack packages.

* polymake - Used by Polymake, StatePolytope, and Tropical packages.

* r-base - Used by RInterface package.

* qepcad - Used by CoincidentRootLoci package.

* sdpa - Used by SemidefiniteProgramming package.

Third-party programs not available in Debian
--------------------------------------------
Some third-party programs used by Macaulay2 do not have a free license
and therefore are unable to be packaged in Debian.

* alphaCertified - Used by NumericalCertification package.
  See https://www.math.tamu.edu/~sottile/research/stories/alphaCertified/.

* Bertini - Used by Bertini,
  See https://bertini.nd.edu/.

 -- Doug Torrance <dtorrance@debian.org>, Sat,  9 Dec 2023 13:26:09 -0500
