summaryrefslogtreecommitdiff
path: root/Command/Assistant.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Command/Assistant.hs')
-rw-r--r--Command/Assistant.hs26
1 files changed, 11 insertions, 15 deletions
diff --git a/Command/Assistant.hs b/Command/Assistant.hs
index ea8a87a3d..69a127b50 100644
--- a/Command/Assistant.hs
+++ b/Command/Assistant.hs
@@ -50,21 +50,17 @@ checkAutoStart = ifM (elem "--autostart" <$> getArgs)
autoStart :: IO ()
autoStart = do
- autostartfile <- autoStartFile
- let nothing = error $ "Nothing listed in " ++ autostartfile
- ifM (doesFileExist autostartfile)
- ( do
- dirs <- nub . lines <$> readFile autostartfile
- program <- readProgramFile
- when (null dirs) nothing
- forM_ dirs $ \d -> do
- putStrLn $ "git-annex autostart in " ++ d
- ifM (catchBoolIO $ go program d)
- ( putStrLn "ok"
- , putStrLn "failed"
- )
- , nothing
- )
+ dirs <- liftIO readAutoStartFile
+ when (null dirs) $ do
+ f <- autoStartFile
+ error $ "Nothing listed in " ++ f
+ program <- readProgramFile
+ forM_ dirs $ \d -> do
+ putStrLn $ "git-annex autostart in " ++ d
+ ifM (catchBoolIO $ go program d)
+ ( putStrLn "ok"
+ , putStrLn "failed"
+ )
where
go program dir = do
changeWorkingDirectory dir