@@ -136,6 +136,22 @@ performBuild pb = do
137performBuild' :: PerformBuild -> IO [Text]
137performBuild' :: PerformBuild -> IO [Text]
138performBuild' pb@PerformBuild {..} = withBuildDir $ \builddir -> do
138performBuild' pb@PerformBuild {..} = withBuildDir $ \builddir -> do
139+ -- First make sure to fetch all of the dependencies... just in case Hackage
140+ -- has an outage. Don't feel like wasting hours of CPU time.
141+ pbLog $ encodeUtf8 "Pre-fetching all packages\n"
142+ let toDownload = flip map (mapToList $ bpPackages pbPlan)
143+ $ \(name, plan) -> unpack $ concat
146+ , display $ ppVersion plan
151+ : "--no-dependencies"
153+ $ \ClosedStream Inherited Inherited -> return ()
139 let removeTree' fp = whenM (isDirectory fp) (removeTree fp)
155 let removeTree' fp = whenM (isDirectory fp) (removeTree fp)
140 mapM_ removeTree' [pbInstallDest, pbLogDir]
156 mapM_ removeTree' [pbInstallDest, pbLogDir]