hnix-store/default.nix
Richard Marko 42f56f504f hnix-store-tests: init
Split from `-core` so it doesn't depend on quickcheck,
generic-arbitrary and quickcheck-instances that could propagate downstrem.
Also allows users to defined their own.

With all roundtrip property tests.

Later this should also absorb test nix-store/daemon harness from
`-remote` so it can be reused by others.
2023-11-20 09:22:05 +01:00

30 lines
770 B
Nix

{ pkgs ? import <nixpkgs> {}
, compiler ? null
}:
let
lib = pkgs.lib;
overlay = import ./overlay.nix pkgs compiler;
overrideHaskellPackages = orig: {
buildHaskellPackages =
orig.buildHaskellPackages.override overrideHaskellPackages;
overrides = if orig ? overrides
then pkgs.lib.composeExtensions orig.overrides overlay
else overlay;
};
packageSet =
if compiler == null
then pkgs.haskellPackages
else pkgs.haskell.packages.${compiler};
haskellPackages = packageSet.override overrideHaskellPackages;
in {
inherit (haskellPackages)
hnix-store-core
hnix-store-db
hnix-store-remote
hnix-store-tests;
haskellPackages = lib.dontRecurseIntoAttrs haskellPackages;
pkgs = lib.dontRecurseIntoAttrs pkgs;
}