Perhaps ghcWithPackages should change the GHC.Paths module #213

Closed
aristidb opened this Issue Dec 15, 2012 · 25 comments

Comments

Projects
None yet
4 participants
Contributor

aristidb commented Dec 15, 2012

ghcWithPackages refers to development/compilers/ghc/with-packages.nix.

When a program uses GHC.Paths.ghc, it gets /nix/store/xcsn1rgn9m94m66wakardg0fnr26pq0y-ghc-7.4.2-wrapper/bin/ghc (the ghc-wrapper shell script) on my machine, but the actual GHC shell script that ghcWithPackages generates and is in my PATH is /nix/store/6s8zylpykahxwlxr3ar8bi1s6slpqbjx-haskell-env-ghc-7.4.2/bin/ghc.

This leads to problems with for example the doctests package. I've asked the doctests author to consider using GHC from PATH, but perhaps it would be possible to patch the GHC.Paths module instead?

Member

kosmikus commented Dec 15, 2012

It's an interesting idea. How exactly would you patch it though? To use some Nix-specific environment variable? If we do this, I would want a patch we can safely apply to all versions of GHC we install via Nix, whether withPackages is used or not.

Contributor

aristidb commented Dec 15, 2012

There seems to be a ghc-paths package that contains the module. Perhaps each GHC variation could get its own version of that package?

Contributor

aristidb commented Dec 15, 2012

I think it's also interesting that GHC.Paths.ghc points to the ghc-wrapper, NOT to ghc itself.

Member

kosmikus commented Dec 15, 2012

This seems to indicate that we could fix it by patching the wrapper(s) without touching ghc-paths in strange ways. I will look into it.

kosmikus was assigned Dec 15, 2012

Contributor

aristidb commented Dec 15, 2012

Another problem seems to be that ghc --libdir and GHC.Paths.libdir do not agree with each other. The actual problem preventing me from running doctests does not, in fact, seem to be failure to invoke GHC, but rather its earlier usage of the GHC API. Doctests uses GHC.Paths.libdir there.

$ ghc --print-libdir
/nix/store/7nzjd22ynzfr20421l7imwrigx2jywpz-haskell-env-ghc-7.4.2/lib
$ ghci
GHCi, version 7.4.2: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude> GHC.Paths.libdir
Loading package ghc-paths-0.1.0.9 ... linking ... done.
"/nix/store/2qa339vlijw9qyp771c194y9y1ki8p40-ghc-7.4.2/lib/ghc-7.4.2"
Contributor

aristidb commented Dec 16, 2012

OK, I have investigated. The ghc-paths package is compiled like a normal package, and the default compiler for Haskell packages is... ghc-wrapper! From haskell-packages.nix:

ghc = callPackage ../development/compilers/ghc/wrapper.nix

This explains why those paths correspond to ghc-wrapper paths... I start to think the best option is really to compile one ghc-paths version for each wrapper-like. (Really I wonder about the sanity of putting compiler paths into a separately compiled package so that they can end up being compiled by a different but compatible compiler and things just break, but we can't change the GHC API here.)

Member

kosmikus commented Dec 16, 2012

Yes, I just figured out the same. I admit I currently don't see a much better solution than what you suggest, but it's horrible to have to do that. I'll try to think a bit more if I can somehow figure out some better solution, but currently I'm pessimistic.

An additional problem with this approach is that every package that depends on ghc-paths will have to be recompiled every time you recompile the wrapper, i.e., change anything in the set of packages. That's extremely annoying.

Contributor

aristidb commented Dec 16, 2012

Right, because then the actual paths in ghc-paths do change. To get around that we would need to move the actual variable definitions outside the module, somehow, I guess.

Member

kosmikus commented Dec 16, 2012

I think I'll try an approach that patches ghc-paths to allow taking paths from Nix-specific environment variables.

@kosmikus kosmikus added a commit that referenced this issue Dec 16, 2012

@kosmikus kosmikus Patch ghc-paths to interact better with ghcWithPackages.
When the ghc-paths library is compiled, the paths of the
compiler it is compiled with are being hardcoded in the
library (and can then be queried from other applications
using the library).

But on Nix, packages are compiled with ghc-wrapper, and
subsequently possibly used with a special version of ghc
generated for a particular environment of packages. So
one version of ghc-paths may potentially end up being
used by lots of different instances of ghc. The hardcoding
approach fails.

As a work-around, we now patch ghc-paths so that it allows
setting the paths that can be queried via environment
variables. Specific GHC environments can then set these
environment variables in the wrapper shell script that
invokes GHC.

This should at least partially solve issue #213.
d068aa9
Member

kosmikus commented Dec 16, 2012

@aristidb I'd appreciate if you could check if my patch helps to improve things for you. If you can figure out what the proper value for docdir is, I can try to set that, too.

Contributor

aristidb commented Dec 16, 2012

Apart from the technical problem that prevents it from working on GHC <7.6, this patch requires setting these environment variables by hand whenever I try to run a program that uses GHC.Paths, right? Not exactly satisfying. :/

Member

kosmikus commented Dec 16, 2012

Why does it not work for older GHCs, and why do you have to set the variables by hand? I have nothing to test it right now, but I cannot see why it would not work. Can you tell me where and why it fails?

Member

kosmikus commented Dec 16, 2012

Oh, I see. Due to lookupEnv. I can fix this.

Member

kosmikus commented Dec 16, 2012

Pushed a version that I've at least tested to compile with 7.4.2 and 7.6.1.

Contributor

aristidb commented Dec 16, 2012

OK, it seems to all work but I need to set NIX_GHC and NIX_GHC_LIBDIR manually to get any doctests to run, as it invokes the GHC API (and the GHC binary, in addition to that) at runtime.

So I wouldn't actually consider this issue closed, as it's merely a rather unpleasant work-around.

Member

kosmikus commented Dec 16, 2012

If it invokes the GHC binary, then it should work, because the wrapper sets the env vars. I don't see how we could reliably convey the paths to GHC API invocations by other binaries. Any idea?

Contributor

aristidb commented Dec 16, 2012

Well, it invokes the GHC API before it invokes the binary. Also, it uses GHC.Paths.ghc to determine which ghc to use.

I see two "solutions" of varying horribleness:

  1. Have a different ghc-paths package for each wrapper, with all the downsides you mentioned.
  2. Somehow patch paths "later" (say, when finalising the wrapper). (No, I have not fully fleshed this out.)
Member

kosmikus commented Dec 16, 2012

I don't think (1) is a better solution than to manually set the environment variables, and I don't currently see a reliable way of doing something like (2) or better than envvars.

Contributor

aristidb commented Dec 16, 2012

Well (1) is a different trade-off, isn't it. You need to recompile things a lot more, but once you have an executable binary it will work.

Contributor

aristidb commented Dec 17, 2012

Thinking about it a bit more, the most realistic near-term option is just to create wrapper scripts for all nix-built executables using the GHC API, right? That doesn't really help for doctests though, as those are usually invoked by cabal test.

Member

kosmikus commented Dec 17, 2012

I still have no solution. One problem though is that I don't have a test case myself for what you'd like to work. Can you provide one? Then I'll think about it some more.

Contributor

aristidb commented Dec 17, 2012

My testcase would be: cabal install --enable-tests doctest

kazu-yamamoto referenced this issue in DanielG/ghc-mod Apr 19, 2013

Closed

Supporting Nix. #120

@edolstra edolstra pushed a commit to edolstra/nixpkgs that referenced this issue Oct 1, 2013

@Phreedom Phreedom Merge pull request #213 from ivan/extraUsers-root
Document that extraUsers options apply to root
51c84aa
Member

shlevy commented Apr 4, 2014

@aristidb @kosmikus Are either of you still working on this? What about giving the ghc wrapper a setup hook to set the env vars properly?

Contributor

aristidb commented Apr 4, 2014

No, for now the current version is kind of good enough for my current
needs. It would still be nice though.

2014-04-04 3:15 GMT+02:00 Shea Levy notifications@github.com:

@aristidb https://github.com/aristidb @kosmikushttps://github.com/kosmikusAre either of you still working on this? What about giving the ghc wrapper
a setup hook to set the env vars properly?

Reply to this email directly or view it on GitHubhttps://github.com/NixOS/nixpkgs/issues/213#issuecomment-39523320
.

Member

peti commented Apr 4, 2014

ghc-mod is a wrapper script these days that figures out all necessary flags to pass to the real executable in order to make Haskell packages visible that are found in the same profile as ghc-mod itself.

Users of ghcWithPackages who don't want to rely on this kind of behind-the-scenes magic can solve these issues deterministically by adding the following snippet to their ~/.bashrc:

NIX_GHC=$(type -p ghc)
if [ -n "$NIX_GHC" ]; then
  eval $(grep export "$NIX_GHC")
fi

This will set the variables NIX_GHC_DOCDIR, NIX_GHCPKG, NIX_GHC_LIBDIR, and NIX_GHC properly so that the built-in ghc-paths module does the right thing.

peti closed this Apr 4, 2014

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 15, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
fa35cf8

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 15, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
443bc6c

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 15, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
8308016

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 16, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
18d7309

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 22, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
1dc014b

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 23, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
2246f91

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 23, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
e5a5529

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 23, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
126cf74

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Apr 24, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
f365956

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue May 6, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
f20dbf3

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue May 15, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
18cd496

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue May 22, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
1304e3e

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue May 22, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
81e24b9

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue May 22, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
21ad119

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Jul 14, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
a0a9b1a

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Jul 14, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
eaee33d

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
1beffce

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
41a8491

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
22b880a

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 14, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
9edca28

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 14, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
0ec640f

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 14, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
24b5405

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 22, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
342a8fb

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 24, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
e8f9d48

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 24, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
1d44f41

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 24, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
cfd3720

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 30, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
4feebbf

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 30, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
be7af60

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Sep 30, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
57a1dfa

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
012e6e2

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
c2a395e

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
ccfbbb4

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
dd18b7e

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 1, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
0cbee2a

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 3, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
92920ab

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 3, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
52bcb2e

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 3, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
a0ff4a9

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 4, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
d793ad8

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 4, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
8078c73

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 9, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
e4670cc

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 12, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
161f4e1

@wizeman wizeman added a commit to wizeman/nixpkgs that referenced this issue Nov 21, 2014

@wizeman wizeman haskell.distributive: Don't enable checks on grsec systems
The reason is due to doctest failing due to RWX mmap,
probably because it invokes ghci (or the GHC API?) directly,
without these options that we set in the wrapper:
-optc-Wa,--noexecstack -opta-Wa,--noexecstack

Issue #213 is probably related to this.
9933e79
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment