tvl-depot/users/glittershark/xanthous/shell.nix
Griffin Smith 7252468b34 feat(xan): Add a benchmark suite
Change-Id: Id31960e7bc2243dfa53dc5e45b09d8253bdef852
Reviewed-on: https://cl.tvl.fyi/c/depot/+/727
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:38:48 +00:00

34 lines
921 B
Nix

{ nixpkgs ? import ./nixpkgs.nix {}, compiler ? "ghc865", withHoogle ? true }:
let
inherit (nixpkgs) pkgs;
pkg = import ./pkg.nix { inherit nixpkgs; };
packageSet = (
if compiler == "default"
then pkgs.haskellPackages
else pkgs.haskell.packages.${compiler}
).override {
overrides = import ./haskell-overlay.nix { inherit nixpkgs; };
};
haskellPackages = (
if withHoogle
then packageSet.override {
overrides = (self: super: {
ghc = super.ghc // { withPackages = super.ghc.withHoogle; };
ghcWithPackages = self.ghc.withPackages;
} // (import ./haskell-overlay.nix { inherit nixpkgs; }) self super);
}
else packageSet
);
drv = pkgs.haskell.lib.doBenchmark (haskellPackages.callPackage pkg {});
inherit (pkgs.haskell.lib) addBuildTools;
in
(addBuildTools drv (with haskellPackages; [
cabal-install
ghc-prof-flamegraph
hp2pretty
])).env