diff options
Diffstat (limited to 'pkgs/tools/typesetting')
-rw-r--r-- | pkgs/tools/typesetting/soupault/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/typesetting/tex/texlive/build-tex-env.nix | 30 |
2 files changed, 24 insertions, 10 deletions
diff --git a/pkgs/tools/typesetting/soupault/default.nix b/pkgs/tools/typesetting/soupault/default.nix index da3b2b509b1ec..82ea1e6f59799 100644 --- a/pkgs/tools/typesetting/soupault/default.nix +++ b/pkgs/tools/typesetting/soupault/default.nix @@ -8,7 +8,7 @@ let pname = "soupault"; - version = "4.7.0"; + version = "4.8.0"; in ocamlPackages.buildDunePackage { inherit pname version; @@ -20,7 +20,7 @@ ocamlPackages.buildDunePackage { owner = "PataphysicalSociety"; repo = pname; rev = version; - sha256 = "nwXyOwDUbkMnyHPrvCvmToyONdbg5kJm2mt5rWrB6HA="; + hash = "sha256-/QpT0zgrfMgRKjHyLHugaAlICpPkqaQ7f8fFAL0P02Y="; }; buildInputs = with ocamlPackages; [ diff --git a/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix b/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix index 0074991eaaf62..606d9dcb0840a 100644 --- a/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix +++ b/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix @@ -203,14 +203,9 @@ let withPackages = reqs: self (args // { requiredTeXPackages = ps: requiredTeXPackages ps ++ reqs ps; __fromCombineWrapper = false; }); }; - out = (if (! __combine) - # meta.outputsToInstall = [ "out" "man" ] is invalid within buildEnv: - # checkMeta will notice that there is no actual "man" output, and fail - # so we set outputsToInstall from the outside, where it is safe - then lib.addMetaAttrs { inherit (pkgList) outputsToInstall; } - else x: x) # texlive.combine: man pages used to be part of out + out = # no indent for git diff purposes -((buildEnv { +(buildEnv { inherit name; @@ -240,6 +235,14 @@ let inherit meta passthru; postBuild = + # create outputs + lib.optionalString (! __combine) '' + for otherOutputName in $outputs ; do + if [[ "$otherOutputName" == 'out' ]] ; then continue ; fi + otherOutput="otherOutput_$otherOutputName" + ln -s "''${!otherOutput}" "''${!otherOutputName}" + done + '' + # environment variables (note: only export the ones that are used in the wrappers) '' TEXMFROOT="${texmfroot}" @@ -431,5 +434,16 @@ let ln -s "$TEXMFDIST" "$out"/share/texmf '' ; -}).overrideAttrs (_: { allowSubstitutes = true; })); +}).overrideAttrs (prev: + { allowSubstitutes = true; } + # the outputsToInstall must be built by the main derivation for nix-profile-install to work + // lib.optionalAttrs (! __combine) ({ + outputs = pkgList.outputsToInstall; + meta = prev.meta // { inherit (pkgList) outputsToInstall; }; + } // (lib.mapAttrs' + (out: drv: { name = "otherOutput_" + out; value = drv; }) + (lib.getAttrs (builtins.tail pkgList.outputsToInstall) splitOutputs) + ) + ) +); in out) |