angerman changed the topic of #haskell.nix to: - alternative haskell infrastructure for nix; logs at
codygman has quit [Read error: Connection reset by peer]
codygman has joined #haskell.nix
codygman has quit [Ping timeout: 260 seconds]
acarrico has joined #haskell.nix
acarrico has quit [Ping timeout: 272 seconds]
terrorjack has quit [Quit: Ping timeout (120 seconds)]
terrorjack has joined #haskell.nix
fendor_ has joined #haskell.nix
__monty__ has joined #haskell.nix
<ptival[m]> is sourceOverrides gone? if so, what's the replacement?
<ptival[m]> ah nevermind it's sourcesOverride that's why I can't find it... stupid me
<ptival[m]> I've been googling and grepping sourceOverrides for the past 5 minutes :d
<typetetris> To set flags on a package from nix, I use `configureFlags` in `modules`?
<typetetris> Given the result of `cabalProject` can I somehow "override" it to add stuff to modules?
<michaelpj> typetetris: overriding stuff is generally done with the things in `modules`. If you want to set flags, ideally you do this in cabal.project (haskell.nix should pick it up), but otherwise there are various places you can pass stuff (, search for "flags")
<typetetris> michealpj: We build in two flavours, for dev without optimization and for prod with -O2 . I would like to do that without editing a file in between. Or is that a not so good idea because materialization and stuff?
<michaelpj> typetetris: no, that's fair enough. I would be tempted to just tell your devs to put `optimization: false` in their `cabal.project.local`, but you can also stick `-02` in the `configureFlags` option and that should do the job
<typetetris> Actually, using cabal.project.local is quite good. Due to `cleanGit` it doesn't influence nix builds and using cabal for dev respects it.
<typetetris> That might be best. Does it influence building of dependencies for `shellFor` somehow? (The optimization setting in cabal.project doesn't apply to them, I guess?)
<michaelpj> yes, you would get `-O2` dependencies in the shell. I'm actually not sure what happens then, It would be quite annoying if cabal then rebuilt them all!
<michaelpj> it doesn't appear to
<michaelpj> ah, top-level `optimization: False` applies to local packages only, you'd need to do `package * \n optimization: False` to do it for everything
<michaelpj> I have done this before myself, I now recall, and it works fine
<typetetris> Hmm, it complains `configureFlags` isn't a list of strings. ... But it is described as a list of strings in the docs..
<michaelpj> this goes in modules
<michaelpj> right?
<typetetris> My bad.
<michaelpj> confusingly, there's a `configureFlags` argument to `cabalProject` which does something different...
<typetetris> I misread the error message. Its not telling about the expected type, but the provided type and I actually didn't provide a list of strings.
<typetetris> Oh my
<typetetris> Optimization seems broken ...
<typetetris> Or do I need to update the materialization?
<michaelpj> you probably do need to do that, but also WTF
<michaelpj> I mean, it's a GHC panic
<michaelpj> are you sure your project is not in fact broken with optimizations on?
<typetetris> How could that be? I mean, optimizations on or off shouldn't change the semantics?
<typetetris> ... rm -rf dist-newstyle ; cabal build -O2 same result. Again the pnaic
<michaelpj> [typetetris]( yeah, but that's a GHC panic. Optimisations can certainly change whether you trigger compiler bugs or not!
<typetetris> michaelpj: Yeah, thats true.
<typetetris> Actually the panic happens, when I include a module with a little polysemy effect calling `makeSem ''Stuff` and uses template haskell.
acarrico has joined #haskell.nix
<typetetris> michaelpj: FYI: It was `polysemy-plugin`. When I removed that and the `-fplugin=Polysemy.Plugin ` the panic went away.
__monty__ has quit [Quit: leaving]
acarrico has quit [Ping timeout: 246 seconds]
fendor__ has joined #haskell.nix
fendor has quit [Ping timeout: 240 seconds]
acarrico has joined #haskell.nix
fendor_ has quit [Remote host closed the connection]
acarrico has quit [Ping timeout: 256 seconds]
acarrico has joined #haskell.nix
fendor__ is now known as fendor
siers is now known as slimep
slimep has joined #haskell.nix
slimep has quit [Changing host]
slimep is now known as siers
hekkaidekapus_ has joined #haskell.nix
hekkaidekapus has quit [Ping timeout: 240 seconds]
<ProofTechnique> Does anyone use haskell.nix to manage a system-wide GHC? I have a semi-bitrotten overlay that I presently use to keep ahead of nixpkgs when needed, but I'd love to reuse some of the haskell.nix machinery (which I've found great for projects) to manage my "playing around in a repl" GHC. I'm not sure if there's prior art for this, or if it's even an intended/supported usecase
hekkaidekapus_ is now known as hekkaidekapus