Subject: bug#27049: [PATCH] gnu: Add mathjax.

From: Brendan Tildesley <[email-masked]>
Date: Thu, 25 May 2017 00:47:09 +1000

Arun Isaac 於 2017-05-24 07:43 寫道:
> * gnu/packages/web.scm (mathjax): New variable.
> [...]
> +
> +         (let ((install-dir (string-append %output "/share/webapps/mathjax"))
> +               (tar (string-append (assoc-ref %build-inputs "tar") "/bin/tar"))
> +               (path (string-append (assoc-ref %build-inputs "gzip") "/bin")))
> +           (mkdir-p install-dir)
> +           (chdir install-dir)
> +           (setenv "PATH" path)
> +           (system* tar "xvf" (assoc-ref %build-inputs "source") "--strip" "1")))))
This is installing many extraneous files like .gitignore, .npmignore,
README.md, CONTRIBUTING, LICENSE, docs/, test/, latest.js. It may be
best start with an 'unpack phase, and then install the needed files to
the output directory.
This package is around 178MiB like it is, and most of that due to the
fonts. Would it be better to break this into two packages, mathjax, and
font-mathjax?

Additionally, programs like Icecat will not be able to find the fonts
unless they are under share/font*, so we should also install
mathjax/fonts/HTML-CSS/TeX/otf  to share/fonts/opentype/mathjax. I think
Guix should automatically take care of making that into a hardlink in
the store so it isn't duplicated, symlink when installed (everything is
already a symlink anyway in Guix)

[*] http://docs.mathjax.org/en/latest/installation.html