Upstream TeX Live man pages: Difference between revisions

From Notes to self
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
Suppose we have installed the upstream [https://tug.org/texlive/ TeX Live from TUG] to <code>/usr/local/texlive/20XX/</code> and the executables are in <code>/usr/local/texlive/20XX/bin/amd64-freebsd</code>.
Suppose we have installed the upstream [https://tug.org/texlive/ TeX Live from TUG] to <code>/usr/local/texlive/20XX/</code> and the executables are in <code>/usr/local/texlive/20XX/bin/amd64-freebsd</code>.


* <code># ln -s ../../texmf-dist/doc/man /usr/local/texlive/2024/bin/amd64-freebsd/man</code>
* <code># ln -s ../../texmf-dist/doc/man /usr/local/texlive/20XX/bin/amd64-freebsd/man</code>
This allows <code>manpath</code> find the man pages.
This allows <code>manpath</code> find the man pages.


* <code># find /usr/local/texlive/2024/texmf-dist/doc/man/ -type f -exec /root/npbin/tlsoman2hardlink {} \;</code>
* <code># find /usr/local/texlive/20XX/texmf-dist/doc/man/ -type f -exec /root/npbin/tlsoman2hardlink {} \;</code>
Here the script <code>/root/npbin/tlsoman2hardlink</code>
Here the script <code>/root/npbin/tlsoman2hardlink</code>
<pre>
<pre>

Revision as of 15:59, 18 April 2025

Suppose we have installed the upstream TeX Live from TUG to /usr/local/texlive/20XX/ and the executables are in /usr/local/texlive/20XX/bin/amd64-freebsd.

  • # ln -s ../../texmf-dist/doc/man /usr/local/texlive/20XX/bin/amd64-freebsd/man

This allows manpath find the man pages.

  • # find /usr/local/texlive/20XX/texmf-dist/doc/man/ -type f -exec /root/npbin/tlsoman2hardlink {} \;

Here the script /root/npbin/tlsoman2hardlink

#!/bin/sh

if grep "^\.so" "$1" >/dev/null 2>&1 && [ "$(wc -l < "$1")" -eq 1 ] ; then
  f=$1
  cd "$(dirname "$f")" || exit
  ff=$(cat "$f")
  set $ff
  rm -f "$f"
  echo replacing "$f" with a hard link
  ln "$(basename "$2")" "$f" || echo "$ff" > "$f"
  chmod 644 "$f"
fi

replaces .so's (which practically not supported by mandoc) with hard links.

This command should be run after every upgrade.