Merge pull request #30332 from veprbl/texlive2017

texlive: 2016 -> 2017
This commit is contained in:
Gabriel Ebner 2017-12-13 14:51:18 +01:00 committed by GitHub
commit 8df38f6dda
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 6173 additions and 3566 deletions

View File

@ -14,7 +14,7 @@
let let
withSystemLibs = map (libname: "--with-system-${libname}"); withSystemLibs = map (libname: "--with-system-${libname}");
year = "2016"; year = "2017";
version = year; # keep names simple for now version = year; # keep names simple for now
common = rec { common = rec {
@ -22,9 +22,10 @@ let
url = # "ftp://tug.org/historic/systems/texlive/${year}/" url = # "ftp://tug.org/historic/systems/texlive/${year}/"
#"http://lipa.ms.mff.cuni.cz/~cunav5am/nix/texlive-2016" #"http://lipa.ms.mff.cuni.cz/~cunav5am/nix/texlive-2016"
# FIXME: a proper mirror, though tarballs.nixos.org saves this case ATM # FIXME: a proper mirror, though tarballs.nixos.org saves this case ATM
http://146.185.144.154/texlive-2016 # http://146.185.144.154/texlive-2016
+ "/texlive-${year}0523b-source.tar.xz"; # + "/texlive-${year}0523b-source.tar.xz";
sha256 = "1v91vahxlxkdra0qz3f132vvx5d9cx2jy84yl1hkch0agyj2rcx8"; "http://ftp.math.utah.edu/pub/tex/historic/systems/texlive/${year}/texlive-${year}0524-source.tar.xz";
sha256 = "1amjrxyasplv4alfwcxwnw4nrx7dz2ydmddkq16k6hg90i9njq81";
}; };
configureFlags = [ configureFlags = [
@ -187,7 +188,7 @@ core-big = stdenv.mkDerivation { #TODO: upmendex
''; '';
preBuild = "cd texk/web2c"; preBuild = "cd texk/web2c";
CXXFLAGS = "-std=c++11 -Wno-reserved-user-defined-literal"; # TODO: remove once texlive 2017 is out? CXXFLAGS = "-std=c++11 -Wno-reserved-user-defined-literal"; # TODO: remove once texlive 2018 is out?
enableParallelBuilding = true; enableParallelBuilding = true;
# now distribute stuff into outputs, roughly as upstream TL # now distribute stuff into outputs, roughly as upstream TL

View File

@ -12,9 +12,11 @@ let
(bin.core.doc // { pname = "core"; tlType = "doc"; }) (bin.core.doc // { pname = "core"; tlType = "doc"; })
]; ];
}; };
partition = builtins.partition or (pred: l:
{ right = builtins.filter pred l; wrong = builtins.filter (e: !(pred e)) l; });
pkgList = rec { pkgList = rec {
all = lib.filter pkgFilter (combinePkgs pkgSet); all = lib.filter pkgFilter (combinePkgs pkgSet);
splitBin = lib.partition (p: p.tlType == "bin") all; splitBin = partition (p: p.tlType == "bin") all;
bin = mkUniquePkgs splitBin.right bin = mkUniquePkgs splitBin.right
++ lib.optional ++ lib.optional
(lib.any (p: p.tlType == "run" && p.pname == "pdfcrop") splitBin.wrong) (lib.any (p: p.tlType == "run" && p.pname == "pdfcrop") splitBin.wrong)
@ -201,7 +203,7 @@ in buildEnv {
perl `type -P mktexlsr.pl` ./share/texmf perl `type -P mktexlsr.pl` ./share/texmf
texlinks.sh "$out/bin" && wrapBin texlinks.sh "$out/bin" && wrapBin
perl `type -P fmtutil.pl` --sys --refresh | grep '^fmtutil' # too verbose (perl `type -P fmtutil.pl` --sys --refresh || true) | grep '^fmtutil' # too verbose
#texlinks.sh "$out/bin" && wrapBin # do we need to regenerate format links? #texlinks.sh "$out/bin" && wrapBin # do we need to regenerate format links?
perl `type -P updmap.pl` --sys --syncwithtrees --force perl `type -P updmap.pl` --sys --syncwithtrees --force
perl `type -P mktexlsr.pl` ./share/texmf-* # to make sure perl `type -P mktexlsr.pl` ./share/texmf-* # to make sure

View File

@ -39,7 +39,8 @@ let
curl http://mirror.ctan.org/tex-archive/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz \ curl http://mirror.ctan.org/tex-archive/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz \
| xzcat | uniq -u | sed -rn -f ./tl2nix.sed > ./pkgs.nix */ | xzcat | uniq -u | sed -rn -f ./tl2nix.sed > ./pkgs.nix */
orig = import ./pkgs.nix tl; # XXX XXX XXX FIXME: the file is probably too big now XXX XXX XXX XXX XXX XXX orig = import ./pkgs.nix tl; # XXX XXX XXX FIXME: the file is probably too big now XXX XXX XXX XXX XXX XXX
clean = orig // { removeSelfDep = lib.mapAttrs (n: p: if p ? deps then p // { deps = lib.filterAttrs (dn: _: n != dn) p.deps; } else p);
clean = removeSelfDep (orig // {
# overrides of texlive.tlpdb # overrides of texlive.tlpdb
dvidvi = orig.dvidvi // { dvidvi = orig.dvidvi // {
@ -70,7 +71,7 @@ let
collection-genericextra = orig.collection-genericextra // { collection-genericextra = orig.collection-genericextra // {
deps = orig.collection-genericextra.deps // { inherit (tl) xdvi; }; deps = orig.collection-genericextra.deps // { inherit (tl) xdvi; };
}; };
}; # overrides }); # overrides
# tl = # tl =
in lib.mapAttrs flatDeps clean; in lib.mapAttrs flatDeps clean;
@ -111,8 +112,8 @@ let
url = args.url or "${urlPrefix}/${urlName}.tar.xz"; url = args.url or "${urlPrefix}/${urlName}.tar.xz";
urlPrefix = args.urlPrefix or urlPrefix = args.urlPrefix or
http://146.185.144.154/texlive-2016 https://gateway.ipfs.io/ipfs/QmRLK45EC828vGXv5YDaBsJBj2LjMjjA2ReLVrXsasRzy7/texlive-2017
#http://lipa.ms.mff.cuni.cz/~cunav5am/nix/texlive-2016 #http://146.185.144.154/texlive-2017
; ;
# XXX XXX XXX FIXME: mirror the snapshot XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX # XXX XXX XXX FIXME: mirror the snapshot XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX
# ("${mirror}/pub/tex/historic/systems/texlive/${bin.texliveYear}/tlnet-final/archive"); # ("${mirror}/pub/tex/historic/systems/texlive/${bin.texliveYear}/tlnet-final/archive");
@ -188,9 +189,9 @@ in
extraName = "combined" + lib.removePrefix "scheme" pname; extraName = "combined" + lib.removePrefix "scheme" pname;
}) })
) )
{ inherit (tl) scheme-full { inherit (tl)
scheme-tetex scheme-medium scheme-small scheme-basic scheme-minimal scheme-basic scheme-context scheme-full scheme-gust scheme-infraonly
scheme-context scheme-gust scheme-xml; scheme-medium scheme-minimal scheme-small scheme-tetex;
} }
); );
} }

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff