[Updated August 14, 2024] TeX Live for OpenBSD is meant for the 2024 release of TeX Live, and will always run on both -stable and -current versions of OpenBSD.
The TeX Live 2024 binaries are available for the following versions of OpenBSD:
There are two ways of using TeX Live in OpenBSD.
From ports. TeX Live is available in variety of “schemes” to wit different sets of package collections, of which a list can be found on openports.pl.[^1]
By installing the “native” TeX Live over the internet, as described on its home page. This latter method facilitates the installation of new packages and the updating of existing ones. However, the binaries for OpenBSD are not currently part of the official TeX Live distribution. The reason for this is that the TeX Live binaries are published once a year while the OpenBSD system undergoes two updates a year.
This page provides an easy way to build one's own TeX Live binaries for OpenBSD—either -stable or -current—through a simple script which is nothing but an adapted version of the one used to build TeX Live for the supported systems.[^2]
Furthermore, TeX Live for OpenBSD provides ready-to-use binary sets for those who do not wish to compile their own.
In addition to the standard binaries supported by TeX Live, TeX Live for OpenBSD provides the following:
By far the most abundant source of documentation on TeX Live builds for a large number of systems is Nelson Beebe's work at Utah. It can be found here: https://ftp.math.utah.edu/pub/texlive-utah.
From this url, the binaries for OpenBSD are located in the
bin/
subdirectory. Look for amd64-openbsd*.tar.xz
. the build for 7.4 was
done with the gcc-11
compilers. The one for 7.5 is done with the
gcc-8.4.0
compilers which are widely used to build most OpenBSD
ports.
The binaries available here are made with clang
, which is the base
system compiler.
Please read first the reference page on this matter: https://tug.org/texlive/custom-bin.html.
Requirements:
Acquire install-tl-unx.tar.gz
from CTAN as described on this
page.
do:
zcat < install-tl-unx.tar.gz | tar xf -
do: (Replace with the actual date.)
cd install-tl-<yyyymmdd>
Import the public key used to sign the archive:
gpg --keyserver hkps://keys.openpgp.org --recv 1773E9248085C8C7
The GPG public key used to sign the archives can also be
retrieved
here.
(You can view the contents with gpg --show-keyring
, or
gpg --list-options show-keyring
depending on your gpg version.)
Clone this git repository and fetch the binaries:
git clone https://git.sr.ht/~ralessi/texlive-openbsd
cd texlive-openbsd
make fetch
or
git clone https://git.robertalessi.net/texlive-openbsd
cd texlive-openbsd
make fetch
TeX Live can be installed as root or as a normal user. Make a decision, then do:
cd ..
and proceed with the installation, as per the instructions displayed on the terminal.
Make sure the create symlinks to standard directories
option in
the options
section of the installation program is not
selected.
Post-install actions. (What follows assumes that the installation has been performed as root. Adapt.) At the end of the installation, the script offers to create environment variables. Say no, then:
Edit root's .profile
file and add the path to the binaries,
like so (replace here and below <yyyy>
with the actual year):
# insert this line:
TLBIN=/usr/local/texlive/<yyyy>/bin/custom
# modify this line like so:
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:$TLBIN:/usr/local/sbin:/usr/local/bin
Make sure to insert $TLBIN
before /usr/local/bin
. Then do
the same in other users' .profile
files.
Edit /etc/man.conf
(copy /etc/examples/man.conf
to /etc
if
this file doesn't exist) and add the manpath to TL man files,
like so:
manpath /usr/share/man
manpath /usr/X11R6/man
manpath /usr/local/man
manpath /usr/local/texlive/<yyyy>/texmf-dist/doc/man
Symlink texlive-fontconfig.conf
file to
/etc/fonts/conf.d/09-texlive.conf
and update the font cache:
cd /etc/fonts/conf.d
ln -sf /usr/local/texlive/<yyyy>/texmf-var/fonts/conf/texlive-fontconfig.conf 09-texlive.conf
fc-cache -fsv
Symlink /usr/local/texlive/<yyyy>/bin/custom
to
/usr/local/texlive/<yyyy>/bin/amd64-openbsd
:
cd /usr/local/texlive/<yyyy>/bin/custom
ln -s custom amd64-openbsd
Reboot and enjoy TeX Live on OpenBSD!
Direct link to the binaries: https://www.ekdosis.org/texlive.
The requirements are the same as above. (Make sure you already have imported the public key used to sign the archives.)
Go to the directory where the texlive-openbsd git repository was cloned, then do:
git pull
make
Proceed as per the instructions displayed on the terminal.
Alternatively, the direct link to the binaries provided above can be used.
To install new packages and to update already existing ones, do:
tlobsd tlmgr update --all
This command requires the subversion
package.
In TeX Live for OpenBSD, tlobsd tlmgr
replaces the standard tlmgr
command which is the command name of TeX Live package manager.
tlobsd tlmgr
can be used with the exact same options and arguments as
tlmgr
.
More information can be found on this
page or in the full tlmgr
documentation.
tlobsd tlmgr
updates the links to a number of scripts that are shipped
within TeX Live and are found in the texmf-dist/scripts/
directory.
Most of them can be invoked by users from symlinks installed along
with the usual TeX Live binaries. As OpenBSD is not officially
supported by TeX Live, it is important to note that the standard
tlmgr update --all
does not update these links, especially in the
case of scripts that come with new packages.
Users who for some reason wish to continue using tlmgr
are advised
to update all existing links and install new links after using
tlmgr
, like so:
tlobsd mksymlinks
Just as tlobsd tlmgr
, this command requires the subversion
package.
Binary versions of biber
and biber-ms
, which constitute the
backend processor for BibLaTeX and BibLaTeX-ms, are available in TeX
Live for OpenBSD. They can be installed or updated with tlobsd
as
follows:
tlobsd getbiber
This command downloads the biber
and biber-ms
executables and
attempts to verify them with the public key that is used to sign the
TeX Live for OpenBSD binaries. See
above.
Direct link to biber
binaries: https://www.ekdosis.org/texlive.
These can also be installed by hand into the TeX Live binary
directory. The suffix of each file must be removed and the file
renamed to exactly "biber
" and "biber-ms
".
tlobsd
:tlobsd help
xasy
)./checkout-tl.sh
./tl-build.sh
For the same reasons as in standard TeX
Live, biber
is not
incorporated in the TeX Live for OpenBSD build. The various steps of
its build process are described on a separate page.
Special thanks go to the following people for their work and kind advice: Karl Berry, Nelson H. F. Beebe, Norbert Preining and Mojca Miklavec.
[^1]: More information on how TL is built for OpenBSD here: https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/print/texlive
[^2]: See https://tug.org/texlive/build.html. The Build
script can
be found here: https://tug.org/svn/texlive/trunk/Build/source.