@@ -48,15 +48,15 @@ getPackageFromRepo allCabalHashesPath mSha1Hash pkgId = do
4848 source = DerivationSource "url" ("mirror://hackage/" ++ display pkgId ++ ".tar.gz") "" tarballSHA256
4949 return $ Package source pkgDesc
5050
51−getPackageFromDb :: PackageIdentifier -> IO Package
52−getPackageFromDb pkgId =
53− getStackPackageFromDb Nothing
51+getPackageFromDb :: Maybe HackageDb -> PackageIdentifier -> IO Package
52+getPackageFromDb mHackageDb pkgId =
53+ getStackPackageFromDb mHackageDb
5454 $ StackPackage (HackagePackage (T.pack $ Text.display pkgId)) True Nothing
5555
56−loadPackage :: FilePath -> Maybe SHA1Hash -> PackageIdentifier -> IO Package
57−loadPackage allCabalHashesPath mSha1Hash pkgId =
56+loadPackage :: Maybe HackageDb -> FilePath -> Maybe SHA1Hash -> PackageIdentifier -> IO Package
57+loadPackage mHackageDb allCabalHashesPath mSha1Hash pkgId =
5858 getPackageFromRepo allCabalHashesPath mSha1Hash pkgId
59− `catchIOError` const (getPackageFromDb pkgId)
59+ `catchIOError` const (getPackageFromDb mHackageDb pkgId)
6060
6161ghcCompilerInfo :: Version -> CompilerInfo
6262ghcCompilerInfo v = CompilerInfo
@@ -72,17 +72,18 @@ buildPlanContainsDependency packageVersions (Dependency depName versionRange) =
7272 maybe False (`withinRange` versionRange) $ Map.lookup depName packageVersions
7373
7474buildPackageSetConfig
75− :: FilePath
75+ :: Maybe HackageDb
76+ -> FilePath
7677 -> FilePath
7778 -> BuildPlan
7879 -> IO PackageSetConfig
79−buildPackageSetConfig optAllCabalHashes optNixpkgsRepository buildPlan = do
80+buildPackageSetConfig mHackageDb optAllCabalHashes optNixpkgsRepository buildPlan = do
8081 nixpkgs <- readNixpkgPackageMap optNixpkgsRepository Nothing
8182 let
8283 systemInfo = bpSystemInfo buildPlan
8384 packageVersions = fmap ppVersion (bpPackages buildPlan) `Map.union` siCorePackages systemInfo
8485 return PackageSetConfig
85− { packageLoader = loadPackage optAllCabalHashes
86+ { packageLoader = loadPackage mHackageDb optAllCabalHashes
8687 , targetPlatform = Platform (siArch systemInfo) (siOS systemInfo)
8788 , targetCompiler = ghcCompilerInfo (siGhcVersion systemInfo)
8889 , nixpkgsResolver = resolve (Map.map (Set.map (over path ("pkgs":))) nixpkgs)