Skip to content

Latest commit

 

History

History
83 lines (55 loc) · 3.28 KB

ce-upgrading-texlive.md

File metadata and controls

83 lines (55 loc) · 3.28 KB

Community Edition: Upgrading TexLive

To save bandwidth, the Overleaf image only comes with a minimal install of TeX Live. You can install more packages or upgrade to a complete TeX Live installation using the tlmgr command in the Overleaf container.

Server Pro users have the option of using Sandboxed Compiles, which will automatically pull down a full TexLive image. The following instructions only apply to Community Edition installations.

Getting inside the Overleaf container

To start a shell inside the Overleaf container, run

$ bin/shell

You will get a prompt that looks like:

root@309b192d4030:/#

In the following instructions, we will assume that you are in the container.

Determining your current TeX Live version

TeX Live is released every year around the month of April. Steps for using tlmgr are different depending on whether you are using the current release or an older one. You can check which version of TeX Live you are running with tlmgr --version. For example, this installation runs TeX Live 2021:

# tlmgr --version
tlmgr revision 59291 (2021-05-21 05:14:40 +0200)
tlmgr using installation: /usr/local/texlive/2021
TeX Live (https://tug.org/texlive) version 2021

The current release of TeX Live can be found on the TeX Live homepage.

If you are running an older TeX Live version, you have two options. We usually release a new version of the Overleaf docker image shortly after a TeX Live release. You can wait for it and upgrade your image using the bin/upgrade script.

If you prefer to keep the older TeX Live release, you will first need to tell tlmgr to use a historic repository. You will find instructions for doing so here.

Installing packages

To install a complete TeX Live installation, run this command inside the Overleaf container:

# tlmgr install scheme-full

You can also install individual packages manually:

# tlmgr install tikzlings tikzmarmots tikzducks

Many more commands are available. Find out more with:

# tlmgr help

When you're done, type exit or press Control-D to exit the shell.

Saving your changes

The changes you've just made have changed the sharelatex container, but are ephemeral --- they will be lost if Compose recreates the container. To make them persistent, use docker commit to save the changes to a new docker image:

$ docker commit sharelatex sharelatex/sharelatex:with-texlive-full

Then add a docker-compose.override.yml file to the config/ folder, and specify that the toolkit should use this new image to launch the sharelatex container in future:

(Note: the version number in docker-compose.override.yml MUST match the version number used by the toolkit scripts (such as lib/docker-compose.base.yml))

---
version: '2.2'
services:
    sharelatex:
        image: sharelatex/sharelatex:with-texlive-full

Then run bin/stop && bin/docker-compose rm -f sharelatex && bin/up, to recreate the container.

Note that you will need to remove this committed container and repeat these steps when you upgrade.