From bcc77819d0e6cb05225c55bf5b2473d4d97c0cbe Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 13 Jul 2017 12:48:03 -0400 Subject: use stack build --dry-run to check if deps are installed The system might have stack installed, so stack --version would succeed, but need stack setup to be run to get a working ghc. This will fail if stack is not installed, or if stack setup needs to be run. It does not fail when haskell libraries are not installed, but stack build will install those anyway, so that's ok. --- src/Propellor/Bootstrap.hs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/Propellor/Bootstrap.hs') diff --git a/src/Propellor/Bootstrap.hs b/src/Propellor/Bootstrap.hs index baf36e49..d3d0264b 100644 --- a/src/Propellor/Bootstrap.hs +++ b/src/Propellor/Bootstrap.hs @@ -86,13 +86,12 @@ buildCommand bs = intercalate " && " (go (getBuilder bs)) , "ln -sf $(stack path --dist-dir)/build/propellor-config propellor" ] --- Run cabal configure to check if all dependencies are installed; --- if not, run the depsCommand. +-- Check if all dependencies are installed; if not, run the depsCommand. checkDepsCommand :: Bootstrapper -> Maybe System -> ShellCommand checkDepsCommand bs sys = go (getBuilder bs) where go Cabal = "if ! cabal configure >/dev/null 2>&1; then " ++ depsCommand bs sys ++ "; fi" - go Stack = "if ! stack --version >/dev/null 2>&1; then " ++ depsCommand bs sys ++ "; fi" + go Stack = "if ! stack build --dry-run >/dev/null 2>&1; then " ++ depsCommand bs sys ++ "; fi" -- Install build dependencies of propellor, using the specified -- Bootstrapper. -- cgit v1.3-2-g0d8e From 102ee2aeacf4c3561da52c2552d759dd0ded4cc4 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 13 Jul 2017 13:18:26 -0400 Subject: fix typo in build path --- src/Propellor/Bootstrap.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/Propellor/Bootstrap.hs') diff --git a/src/Propellor/Bootstrap.hs b/src/Propellor/Bootstrap.hs index d3d0264b..21f051c9 100644 --- a/src/Propellor/Bootstrap.hs +++ b/src/Propellor/Bootstrap.hs @@ -83,7 +83,7 @@ buildCommand bs = intercalate " && " (go (getBuilder bs)) ] go Stack = [ "stack build :propellor-config" - , "ln -sf $(stack path --dist-dir)/build/propellor-config propellor" + , "ln -sf $(stack path --dist-dir)/build/propellor-config/propellor-config propellor" ] -- Check if all dependencies are installed; if not, run the depsCommand. -- cgit v1.3-2-g0d8e