@@ -6,6 +6,7 @@ import Distribution.Compiler as Compiler
66import Distribution.Nixpkgs.Fetch
77import Distribution.Nixpkgs.Haskell.Derivation
88import Distribution.Nixpkgs.Haskell.FromCabal as FromCabal
9+import Distribution.Nixpkgs.Haskell.FromStack.Package as FromStack
910import Distribution.Nixpkgs.Haskell.PackageSourceSpec as PackageSourceSpec
1011import Distribution.PackageDescription as PackageDescription
1112import Distribution.System as System
@@ -79,8 +80,11 @@ packageDerivation
7980 -> IO Derivation
8081packageDerivation conf optHackageDb stackPackage = do
8182 pkg <- getStackPackageFromDb optHackageDb stackPackage
82− pure $ genericPackageDerivation conf pkg
83+ pure . overrideStackageDerivation
84+ $ genericPackageDerivation conf pkg
8385 & src .~ pkgSource pkg
86+ & doCheck .~ False
87+ & runHaddock .~ False
8488
8589genericPackageDerivation
8690 :: PackageConfig
@@ -95,3 +99,13 @@ genericPackageDerivation conf pkg =
9599 (conf ^. pcFlagAssignment)
96100 []
97101 (pkgCabal pkg)
102+
103+-- Stackage packages set only consistent for packages with their library and
104+-- executable dependencies and completely ignores test dependencies.
105+overrideStackageDerivation :: Derivation -> Derivation
106+overrideStackageDerivation node = node
107+ & doCheck .~ False
108+ & runHaddock .~ False
109+
110+overrideStackageNode :: Node -> Node
111+overrideStackageNode = over nodeDerivation overrideStackageDerivation