TeX Live for *Open*BSD
======================
Contents
--------
- [Current Release](#TL-year)
- [Running TeX Live on *Open*BSD](#TL-OpenBSD)
- [Installing TeX Live on *Open*BSD With Ready-to-Use Binaries](#Installing)
- [Updating the Binaries Over the Course of the Year](#Updating)
- [Building](#Building)
- [Acknowledgements](#Ack)
2024 Release
--------------------------------
[Updated March 2, 2024] TeX Live for *Open*BSD has just been
launched. At the time of writing, it is meant for the [upcoming 2024
release of TeX Live](https://tug.org/texlive/pretest.html), and will
always run on both -stable and -current versions of OpenBSD.
Running TeX Live in *Open*BSD
----------------------------------------------------
There are two ways of using TeX Live in *Open*BSD.
1. 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](https://openports.pl/search?file=&pkgname=texlive).[^1]
2. By installing the “native” TeX Live over the internet, as described
on [its home page](https://tug.org/texlive). This latter method
facilitates the installation of new packages and the updating of
existing ones. However, the binaries for *Open*BSD 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 *Open*BSD—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 *Open*BSD provides the following:
- xindy
- LuaMetaTeX (ConTeXt)
- asymptote
biber will soon be added to this list.
Installing TeX Live on *Open*BSD with ready-to-use binaries
----------------------------------------------------------------------------------
Please read first the reference page on this matter:
.
1. Requirements:
- curl
- gpg
- xz
- p5-Tk
2. Acquire `install-tl-unx.tar.gz` from CTAN as described [on this
page](https://tug.org/texlive/acquire-netinstall.html).
- do: `zcat < install-tl-unx.tar.gz | tar xf -`
- do: `cd install-tl-` (replace with the
actual date.)
3. Import the public key used to sign the archive:
```sh
gpg --keyserver pgp.mit.edu --recv 1773E9248085C8C7
```
4. Clone this git repository and fetch the binaries:
```sh
git clone https://git.sr.ht/~ralessi/texlive-openbsd
cd texlive-openbsd
make fetch
```
or
```sh
git clone https://git.robertalessi.net/texlive-openbsd
cd texlive-openbsd
make fetch
```
5. Proceed with TL installation, as per the instructions displayed on
the terminal.
6. 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:
1. Edit root's `.profile` file and add the path to the binaries,
like so (replace here and below `` with the actual year):
```sh
# insert this line:
TLBIN=/usr/local/texlive//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.
2. 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//texmf-dist/doc/man
```
3. Symlink `texlive-fontconfig.conf` file to
`/etc/fonts/conf.d/09-texlive.conf` and update the font cache:
```sh
cd /etc/fonts/conf.d
ln -sf /usr/local/texlive//texmf-var/fonts/conf/texlive-fontconfig.conf 09-texlive.conf
fc-cache -fsv
```
7. Reboot and enjoy TeX Live on *Open*BSD!
### All by hand
Direct link to the binaries: .
Updating the binaries over the course of the year
----------------------------------------------------------------------
The requirements are the same as above. (Make sure you already have
imported the public key used to sign the archives.)
1. Go to the directory where the texlive-openbsd git repository was
cloned, then do:
```sh
git pull
make
```
2. Proceed as per the instructions displayed on the terminal.
Alternatively, the direct link to the binaries provided above can be
used.
Building the sources
-----------------------------------------
### References
- General information:
- Building GNU CLISP for xindy:
### Requirements
- For texlive
- git
- gmake
- rsync
- subversion
- wget
- curl
- For context:
- cmake
- ninja
- For asymptote:
- freeglut
- readline
- eigen3
- py3-cson (run dependency for `xasy`)
### Getting the sources
```sh
./checkout-tl.sh
```
### Building
```sh
./tl-build.sh
```
Acknowledgements
--------------------------------
Special thanks go to the following people for their work and kind
advice: Karl Berry, Nelson H. F. Beebe, Norbert Preining and Mojca
Miklavec.
Notes
-----
[^1]: More information on how TL is built for *Open*BSD here:
[^2]: See . The `Build` script can
be found here: .