!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

721 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://haskell4nix.readthedocs.io/ | More Nix: #community:nixos.org | More Haskell: #haskell-space:matrix.org143 Servers

Load older messages


SenderMessageTime
13 Aug 2025
@qyliss:fairydust.spaceAlyssa RossWith strictDeps I believe checkInputs don't end up in PATH, only nativeCheckInputs18:08:34
@emilazy:matrix.orgemily I think we have a HOST_PATH thing or something. 18:08:50
@emilazy:matrix.orgemily for patchShebangs --host I guess. 18:09:05
@emilazy:matrix.orgemily but yeah cross testing is a mess. even with canExecute. 18:09:11
@emilazy:matrix.orgemilytbh I think it's fine to use whatever variable is convenient and leave it to the future generation that decides it wants to figure out how cross tests should work.18:09:24
@emilazy:matrix.orgemily (to which the answer will be "separate installCheckPhase derivation" if we raised them well) 18:09:36
@artem.types:matrix.orgArtemto be clear: Z3 is called by the test suite when the test suite is run18:12:10
@qyliss:fairydust.spaceAlyssa Rossthat's a nativeCheckInputs case then, definitely18:13:32
@artem.types:matrix.orgArtem simply replacing testSystemDepends with nativeCheckInputs here doesn't work. I'm happy to do anything before I open a PR if someone tells me what :-) otherwise I proceed with this 18:14:25
@artem.types:matrix.orgArtem * simply replacing testSystemDepends with nativeCheckInputs here doesn't work. I'm happy to do anything before I open a PR if someone tells me what :-) otherwise I proceed with testSystemDepends 18:14:32
@qyliss:fairydust.spaceAlyssa Ross It sounds like there needs to be another builder option, testSystemNativeDepends or some less terrible name, that maps to nativeCheckInputs 18:16:55
@emilazy:matrix.orgemily (I don't see how. if you're cross-compiling a system that uses this thing, then it's going to invoke the hostPlatform Z3 when you actually use it) 18:18:32
@qyliss:fairydust.spaceAlyssa RossBut it's the test suite that runs the binary18:18:49
@emilazy:matrix.orgemily(testing it against the build platform Z3 is strictly less realistic for testing whether the thing you are building will actually work)18:18:50
@qyliss:fairydust.spaceAlyssa RossNot the program itself18:18:54
@qyliss:fairydust.spaceAlyssa RossIs what we were told18:18:56
@emilazy:matrix.orgemilyyeah, and the test suite runs on the host platform18:18:59
@emilazy:matrix.orgemily via the magic of canExecute 18:19:08
@emilazy:matrix.orgemilyit's testing a host platform thing18:19:14
@emilazy:matrix.orgemilynot a build platform thing18:19:17
@qyliss:fairydust.spaceAlyssa RossThen what would nativeCheckInputs ever be for?18:19:29
@emilazy:matrix.orgemily make test builds a buildPlatform test runner utility that has a binary dependency or something. 18:19:59
@emilazy:matrix.orgemily maybe that dependency is GCC that targets hostPlatform so it can dynamically compile some test code before running it or something. 18:20:18
@emilazy:matrix.orgemilylike I think the same rule of thumb of "tools used by the build system" applies.18:21:06
@qyliss:fairydust.spaceAlyssa RossI guess I'd consider test framework part of the build system18:21:58
@qyliss:fairydust.spaceAlyssa RossBut really it depends for what purpose it's invoking this tool18:22:22
@qyliss:fairydust.spaceAlyssa RossIs it to generate test data? If so, build platform18:22:29
@emilazy:matrix.orgemilyit's a Haskell library that provides an interface to an SMT solver18:22:35
@emilazy:matrix.orgemilyyou write Haskell code and it invokes Z3 at runtime to solve SMT things18:22:41
@emilazy:matrix.orgemily if Z3 was a library, it would be a buildInput 18:22:48

Show newer messages


Back to Room ListRoom Version: 6