@@ -26,6 +26,10 @@ import Distribution.Client.NixStyleOptions
2626  , defaultNixStyleFlags 
2727  , nixStyleOptions 
2828  )
29+ import  Distribution.Client.ProjectConfig.Types 
30+   ( ProjectConfig  (projectConfigShared )
31+   , ProjectConfigShared  (projectConfigProgPathExtra )
32+   )
2933import  Distribution.Client.ProjectFlags 
3034  ( removeIgnoreProjectOption 
3135  )
@@ -66,12 +70,9 @@ import Distribution.Simple.GHC
6670  )
6771import  Distribution.Simple.Program.Db 
6872  ( configuredPrograms 
69-   , modifyProgramSearchPath 
73+   , appendProgramSearchPath 
7074  , requireProgram 
7175  )
72- import  Distribution.Simple.Program.Find 
73-   ( ProgramSearchPathEntry  (.. )
74-   )
7576import  Distribution.Simple.Program.Run 
7677  ( programInvocation 
7778  , runProgramInvocation 
@@ -86,11 +87,13 @@ import Distribution.Simple.Program.Types
8687import  Distribution.Simple.Utils 
8788  ( createDirectoryIfMissingVerbose 
8889  , dieWithException 
89-   , info 
9090  , notice 
9191  , withTempDirectory 
9292  , wrapText 
9393  )
94+ import  Distribution.Utils.NubList 
95+   ( fromNubList 
96+   )
9497import  Distribution.Verbosity 
9598  ( normal 
9699  )
@@ -162,10 +165,11 @@ execAction flags@NixStyleFlags{..} extraArgs globalFlags = do
162165      mempty 
163166
164167  --  Some dependencies may have executables. Let's put those on the PATH.
165-   extraPaths <-  pathAdditions verbosity baseCtx buildCtx
166-   let  programDb = 
167-         modifyProgramSearchPath
168-           (map  ProgramSearchPathDir  extraPaths ++ )
168+   let  extraPaths =  pathAdditions baseCtx buildCtx
169+ 
170+   programDb <- 
171+         appendProgramSearchPath verbosity
172+           extraPaths
169173          .  pkgConfigCompilerProgs
170174          .  elaboratedShared
171175          $  buildCtx
@@ -263,13 +267,14 @@ withTempEnvFile verbosity baseCtx buildCtx buildStatus action = do
263267        action envOverrides
264268    )
265269
266- pathAdditions  ::  Verbosity  ->  ProjectBaseContext  ->  ProjectBuildContext  ->  IO FilePath 
267- pathAdditions verbosity ProjectBaseContext {.. } ProjectBuildContext {.. } =  do 
268-   info verbosity .  unlines  $ 
269-     " Including the following directories in PATH:" 
270-       :  paths
271-   return  paths
270+ pathAdditions  ::  ProjectBaseContext  ->  ProjectBuildContext  ->  [FilePath 
271+ pathAdditions ProjectBaseContext {.. } ProjectBuildContext {.. } = 
272+     paths ++  cabalConfigPaths
272273  where 
274+     cabalConfigPaths =  fromNubList
275+                        .  projectConfigProgPathExtra
276+                        .  projectConfigShared
277+                        $  projectConfig
273278    paths = 
274279      S. toList $ 
275280        binDirectories distDirLayout elaboratedShared elaboratedPlanToExecute
0 commit comments