-
-
Notifications
You must be signed in to change notification settings - Fork 15k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
texlive: Refactors toward working texdoc #120578
base: master
Are you sure you want to change the base?
Conversation
Evaluation is slightly quicker now, too. No derivations are changed.
An alias that warns is provided.
Like `makeScope`, but with a `makeScopeWithSplicing`-style interface, since that uses proper `overrideScope`. For use in new code, or wherever we can actually switch from `overrideScope'` to `overrideScope`.
|
An alias is provided.
Avoids an `.overrideAttrs` invocation in `buildTexliveCombinedEnv`.
ofborg-eval results in:
I can't find any package that using |
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/texdoc-cannot-find-texlive-tlpdb/9303/2 |
If I understand correctly, texdoc is not yet working even with this PR? |
I marked this as stale due to inactivity. → More info |
The main thing to notice is that
texlive
is now a package scope. Inside it,texlivePackages
contains what was previously lexically-scoped localtl
, and the previous interface is provided for compatibility. Evaluations are not slower from the minor testing I did, and may be slightly faster. Please review commit-by-commit.lib.makeScope'
now appears, with the interface oflib.makeScopeWithSplicing
but the (non-deprecated) functionality oflib.makeScope
, so that thetexlive
scope may be forwards-compatible withlib.makeScopeWithSplicing
.buildenv
now passes throughpreferLocalBuild
andallowSubstitutes
so thatbuildTexliveCombinedEnv
doesn't invoke.overrideAttrs
to achieve that effect.I'm not sure about names, so feedback is really appreciated there. I tried to keep
callPackage
in the child scope unambiguous.Motivation for this change
While investigating solutions for #118757, working with TeX Live in Nixpkgs was a pain. It's now less of a pain, but still needs work in my opinion to have nice separation between TeX Live, CTAN, and the combination machinery. Something simple like overriding
texliveBin
works without gymnastics, and changes to helper functions can be experimented with without copying & pasting whole files, closer to the flexibility Nixpkgs provides for Python.Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
(
No diff detected, stopping review...
)./result/bin/
)nix path-info -S
before and after)This change is