<ocharles>
It fails in the install phase because it tries to copy LICENSE, but presumably the parent directory doesn't exist. Any ideas what I can do?
<ocharles>
Can I somehow adjust the install-phase to not bother looking for that file?
<ocharles>
Or maybe I should not use `subdir` in my `source-repository` stanza, and instead add a custom `postUnpack` to `cd`?
<ocharles>
Ok, `packages.opencv.postUnpack = "touch LICENSE";` has done the job!
<angerman>
ocharles: nice hack!
<angerman>
I think you are running afoul of the source clean logic.
<ocharles>
Do you think? It seems like a fairly reasonable bug - Cabal checks out the top level repo, then just copies the `subdir` and forgets the rest. So now `../LICENSE` is meaningless
<ocharles>
But I have no idea if that's what actually happens
<angerman>
You might be correct. It's just that source clean is pretty aggressive, so things outside of what what cabal references (and git) would be thrown out as well.
<ocharles>
If I change my haskell.nix call to `packages.opencv.hardeningDisable = "hello"` I get: The option value `packages.opencv.hardeningDisable' in `<unknown-file>' is not of type `list of strings'
<ocharles>
So I know the option is definitely being picked up correctly
<ocharles>
It just doesn't seem to get added to the component argument
<angerman>
let me see if hamishmack has an idea.
<ocharles>
Oh wait
<ocharles>
This might be magically working now...
<angerman>
O_o
<ocharles>
Yes... everything seems to work... oh well, time to submit a PR!
<angerman>
yey! PRs!
<ocharles>
I think haskell.nix might finally build all of CircuitHub now
<ocharles>
I'm hoping we can change over to it, it would be really nice to have libraries build while other tests are running...
<angerman>
ocharles: Let me know if you hit any additional roadblocks!
<ocharles>
Will do, thanks!
<julm>
ocharles: nice that postUnpack trick, I hit the same ../LICENSE problem, but since it was for a package I maintain I just copied ../LICENCE to ./LICENSE
<ocharles>
huge thank you to everyone involved with this project too, it's super rad
<ocharles>
julm: I am a man of many gross hacks
<julm>
^^
<ocharles>
How does one run test-suites built by haskell.nix?
<ocharles>
I guess I could just take the result of `components.tests.*`, is that what people typically do?
<julm>
it's what I do
<ocharles>
I see `"checkPhase": "notice: Tests are only executed by building the .run sub-derivation of this component."`, so yea - looks like I use the `.run` attribute of the test
<ocharles>
Though while nix-build haskell.nix.nix -A ch-persistence.components.tests.tests works, nix-build haskell.nix.nix -A ch-persistence.components.tests.tests.run says: error: attribute 'run' in selection path 'ch-persistence.components.run' not found
<ocharles>
So it ain't that
<ocharles>
Ok, `pkgs.haskell-nix.haskellLib.check` with a package seems to do the right thing
<angerman>
I'm not super happy with this test/check/api stuff. I find it's not intuitive, but I can't offer a better solution either. If someone comes along and can provide one, I'm sure it can be changed for the better.
<ocharles>
As long as I'm using what is roughly idiomatic, I'm happy