texlive: 2019 -> 2019-final

The biber package is now at 2.14, but TextBibTeX is still required.

Few changes were needed for newly introduced scripts-extra path. This
broke some of our old tricks which were relying on having writable
script directories. The changes to the script locations made buildEnv
create symlinks to the script directories instead of directories of
symlinks to scripts. The changes to texlinks.sh and texlive/TeXLive
perl path were made because of this.
This commit is contained in:
Dmitry Kalinkin 2020-03-09 19:13:25 -04:00
parent d9fb53ddd6
commit 9752593eb0
No known key found for this signature in database
GPG key ID: 5157B3EC8B2CA333
6 changed files with 3753 additions and 2349 deletions

View file

@ -10,13 +10,12 @@ perlPackages.buildPerlModule {
src = "${biberSource}/source/bibtex/biber/biblatex-biber.tar.gz";
# TODO: remove TextBibTeX for biber 2.14: https://github.com/plk/biber/blob/dev/Changes
buildInputs = with perlPackages; [
autovivification BusinessISBN BusinessISMN BusinessISSN ConfigAutoConf
DataCompare DataDump DateSimple EncodeEUCJPASCII EncodeHanExtra EncodeJIS2K
DateTime DateTimeFormatBuilder DateTimeCalendarJulian
ExtUtilsLibBuilder FileSlurper FileWhich IPCRun3 LogLog4perl LWPProtocolHttps ListAllUtils
ListMoreUtils MozillaCA IOString ReadonlyXS RegexpCommon TextBibTeX
ListMoreUtils MozillaCA ParseRecDescent IOString ReadonlyXS RegexpCommon TextBibTeX
UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter
ClassAccessor TextCSV TextCSV_XS TextRoman DataUniqid LinguaTranslit SortKey
TestDifferences

View file

@ -399,6 +399,27 @@ pygmentex = python2Packages.buildPythonApplication rec {
};
texlinks = stdenv.mkDerivation rec {
name = "texlinks.sh";
src = stdenv.lib.head (builtins.filter (p: p.tlType == "run") texlive.texlive-scripts-extra.pkgs);
dontBuild = true;
doCheck = false;
installPhase = ''
runHook preInstall
# Patch texlinks.sh back to 2015 version;
# otherwise some bin/ links break, e.g. xe(la)tex.
patch --verbose -R scripts/texlive-extra/texlinks.sh < '${./texlinks.diff}'
install -Dm555 scripts/texlive-extra/texlinks.sh "$out"
runHook postInstall
'';
};
inherit biber;
bibtexu = bibtex8;
bibtex8 = stdenv.mkDerivation {

View file

@ -68,24 +68,13 @@ in buildEnv {
'')
pkgList.bin
+
# Patch texlinks.sh back to 2015 version;
# otherwise some bin/ links break, e.g. xe(la)tex.
''
(
cd "$out/share/texmf/scripts/texlive"
local target="$(readlink texlinks.sh)"
rm texlinks.sh && cp "$target" texlinks.sh
patch --verbose -R texlinks.sh < '${./texlinks.diff}'
)
'' +
''
export PATH="$out/bin:$out/share/texmf/scripts/texlive:${perl}/bin:$PATH"
export TEXMFCNF="$out/share/texmf/web2c"
export TEXMFDIST="$out/share/texmf"
export TEXMFSYSCONFIG="$out/share/texmf-config"
export TEXMFSYSVAR="$out/share/texmf-var"
export PERL5LIB="$out/share/texmf/scripts/texlive"
export PERL5LIB="$out/share/texmf/scripts/texlive:${bin.core.out}/share/texmf-dist/scripts/texlive"
'' +
# patch texmf-dist -> $out/share/texmf
# patch texmf-local -> $out/share/texmf-local
@ -164,7 +153,7 @@ in buildEnv {
rm "$link"
makeWrapper "$target" "$link" \
--prefix PATH : "$out/bin:${perl}/bin" \
--prefix PERL5LIB : "$out/share/texmf/scripts/texlive"
--prefix PERL5LIB : "$PERL5LIB"
# avoid using non-nix shebang in $target by calling interpreter
if [[ "$(head -c 2 "$target")" = "#!" ]]; then
@ -194,9 +183,6 @@ in buildEnv {
'' +
# texlive post-install actions
''
mkdir -p "$out/share/texmf/scripts/texlive/"
ln -s '${bin.core.out}/share/texmf-dist/scripts/texlive/TeXLive' "$out/share/texmf/scripts/texlive/"
for tool in updmap; do
ln -sf "$out/share/texmf/scripts/texlive/$tool."* "$out/bin/$tool"
done
@ -209,9 +195,9 @@ in buildEnv {
ln -sf fmtutil "$out/bin/mktexfmt"
perl `type -P mktexlsr.pl` ./share/texmf
texlinks.sh "$out/bin" && wrapBin
${bin.texlinks} "$out/bin" && wrapBin
(perl `type -P fmtutil.pl` --sys --all || true) | grep '^fmtutil' # too verbose
#texlinks.sh "$out/bin" && wrapBin # do we need to regenerate format links?
#${bin.texlinks} "$out/bin" && wrapBin # do we need to regenerate format links?
# Disable unavailable map files
echo y | perl `type -P updmap.pl` --sys --syncwithtrees --force

View file

@ -106,15 +106,12 @@ let
# should be switching to the tlnet-final versions
# (https://tug.org/historic/).
urlPrefixes = args.urlPrefixes or [
# Snapshots hosted by one of the texlive release managers
https://texlive.info/tlnet-archive/2019/10/19/tlnet/archive
# tlnet-final snapshot
http://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2019/tlnet-final/archive
ftp://tug.org/texlive/historic/2019/tlnet-final/archive
# Mirror hosted by @veprbl
http://146.185.144.154/texlive-2019
# TODO: Upgrade to the final snapshot of the packages before 20.03
#http://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2019/tlnet-final/archive
#ftp://tug.org/texlive/historic/2019/tlnet-final/archive
# Daily snapshots hosted by one of the texlive release managers
#https://texlive.info/tlnet-archive/2019/10/19/tlnet/archive
];
src = fetchurl { inherit urls sha512; };

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff