Dependencies

John Lees-Miller edited this page Jul 5, 2018 · 25 revisions

ShareLaTeX has many depenencies. If you are running via the recommended docker way you will only have to install Redis and Mongodb.

Installing dependencies on Ubuntu

These instructions are appropriate for Ubuntu 12.04, but should also work on more recent versions.

Docker

To install docker see the [https://docs.docker.com/engine/installation/linux/ubuntulinux/](official guide)

Redis

The Redis version provided by Ubuntu 12.04 is also too old for ShareLaTeX so you will need to install a newer version. The latest version of Redis can be downloaded and compiled from source via the Redis website, or with a custom PPA on Ubuntu:

$ sudo add-apt-repository ppa:chris-lea/redis-server
$ sudo apt-get update
$ sudo apt-get install redis-server

We recommend you have the append only option enabled so redis persists to disk. If you do not have this enabled a restart may mean you loose some document updates.

appendonly yes

MongoDB

The latest version of MongoDB can be installed from the MongoDB repository (http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/):

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
$ echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
$ sudo apt-get update
$ sudo apt-get install mongodb-org

Optional Dependencies for non docker installs

If you run ShareLaTeX directly and are not using the recommended Docker Container then following are required:

  • Node.js 0.10 or greater.^1 nvm provides an easy way to install and manage Node.js in a development environment.
  • Grunt command line tools (Run npm install -g grunt-cli to install them)
  • TeXLive 2013 or later with the latexmk program installed.
  • Aspell for spell checking, with appropriate dictionaries installed.
  • imagemagick, optipng and ghostscript for previewing PDF/EPS files in the editor.
  • QPDF used for optimising the pdf pre download
  • libkrb5-dev / krb5-devel

Aspell

Aspell is a nice stable bit of software so can be got directly from Ubuntu's repositories:

$ sudo apt-get install aspell

There are lots of additional dictionaries available, which can be listed with:

$ apt-cache search aspell | grep aspell

Installing Dependencies on Mac OS X

Redis, MongoDB and Aspell are easiest to install with Homebrew. Once Homebrew is installed:

$ brew install redis mongodb aspell

Node.js can be installed with nvm or direct from the Node.js website.

Installing TeXLive

ShareLaTeX needs a LaTeX backend to run the compiles, and you must have the latexmk program installed as part of this. We recommend installing the latest version of TeXLive manually (more detailed instructions at https://www.tug.org/texlive/quickinstall.html):

$ wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
$ tar -xvf install-tl-unx.tar.gz
$ cd install-tl-*
$ sudo ./install-tl

Once TeXLive is installed, make sure that it is available in your path:

$ export PATH=/usr/local/texlive/2014/bin/i386-linux:$PATH # Linux
$ export PATH=/usr/local/texlive/2014/bin/x86_64-linux:$PATH # Linux 64-bit
$ export PATH=/usr/local/texlive/2014/bin/x86_64-darwin:$PATH # Mac OS X

and that latexmk is installed:

$ apt-get install latexmk

Installing ShareLaTeX

Now that you've got all the dependencies installed, have a look at the Quick Start Guide.