-
-
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
haskellPackages.shellFor: fix value of NIX_GHC_DOCDIR #150968
Conversation
Thanks for the PR. That looks cool. One thing though: I don‘t know what |
Oh, wait. That function was there before your PR, too.^^ Another thing: This doesn‘t need to target staging, I suggest haskell-updates instead. Make sure to mark the PR as draft before changing merge base to prevent mass highlights from happening. |
That’s nice. But is there any tooling that actually assumes this? |
Not as far as I know, but it is nice that I can point my favorite file manager to it and get exactly matching documentation. |
Before this commit it pointed to non-existent directory, now it points to GHC user manual. What is more important, now $NIX_GHC_DOCDIR/../.. contains documentation with all dependenices, one subdirectory for dependency. Closes: NixOS#150666
7e142b6
to
b27b969
Compare
Rebased. |
I’ll try to have a look the day after tomorrow. I would like to compare build times before and also check again how ghc-paths handles this value (and how it’s used by its reverse dependencies). E. g. if you can get doc paths of individual packages using ghc-pkg I’d prefer to hide this feature behind a flag, but we’ll see.
… On 17. Dec 2021, at 19:49, Dmitry Bogatov ***@***.***> wrote:
Rebased.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because your review was requested.
|
Ping? |
* Will make it so that GHC.Paths's docdir NIX_GHC_DOCDIR points to an actual directory. * Documentation of all packages in the environment is available in `$out/share/doc`. This has previously been attempted in NixOS#76842 and reverted in NixOS#77442, since documentation can collide when the libraries wouldn't (thanks to the hash in the lib filename). `symlinkJoin` allows collision, so this solution should be akin to NixOS#77523 (minus `buildEnv`, one step at a time). `installDocumentation = false` restores the old behavior. Collision in the documentation only happen if the dependency closure of the given packages has more than one different derivation for the same library of the very same version. I'm personally inclined not to claim that our infrastructure does anything sensible in this case. Additionally, the documentation is likely largely the same in such cases (unless it is heavily patched). Resolves NixOS#150666. Resolves NixOS#76837. Closes NixOS#150968. Closes NixOS#77523.
Before this commit it pointed to non-existent directory, now it points to GHC
user manual. What is more important, now $NIX_GHC_DOCDIR/../.. contains
documentation with all dependenices, one subdirectory for dependency.
Closes: #150666
Ping: @sterneseemann, @maralorn