@@ -18,6 +18,7 @@ import qualified Elm.Details as Details
18import qualified Elm.Package as Pkg
18import qualified Elm.Package as Pkg
19import qualified Elm.Outline as Outline
19import qualified Elm.Outline as Outline
20import qualified Elm.Version as V
20import qualified Elm.Version as V
21+import qualified Lynx.Patches as Patches
21import qualified Reporting
22import qualified Reporting
22import Reporting.Doc ((<+>))
23import Reporting.Doc ((<+>))
23import qualified Reporting.Doc as D
24import qualified Reporting.Doc as D
@@ -50,17 +51,22 @@ run args () =
50 return (Left (Exit.InstallNoArgs elmHome))
51 return (Left (Exit.InstallNoArgs elmHome))
52 Install pkg ->
53 Install pkg ->
54+ case Patches.forkSuggestion pkg of
56+ return (Left (Exit.InstallForkSuggestion pkg forkPkg))
53− Task.run $
59+ Task.run $
54− do env <- Task.eio Exit.InstallBadRegistry $ Solver.initEnv
60+ do env <- Task.eio Exit.InstallBadRegistry $ Solver.initEnv
55− oldOutline <- Task.eio Exit.InstallBadOutline $ Outline.read root
61+ oldOutline <- Task.eio Exit.InstallBadOutline $ Outline.read root
56− case oldOutline of
62+ case oldOutline of
57− Outline.App outline ->
63+ Outline.App outline ->
58− do changes <- makeAppPlan env pkg outline
64+ do changes <- makeAppPlan env pkg outline
59− attemptChanges root env oldOutline V.toChars changes
65+ attemptChanges root env oldOutline V.toChars changes
61− Outline.Pkg outline ->
67+ Outline.Pkg outline ->
62− do changes <- makePkgPlan env pkg outline
68+ do changes <- makePkgPlan env pkg outline
63− attemptChanges root env oldOutline C.toChars changes
69+ attemptChanges root env oldOutline C.toChars changes