diff options
Diffstat (limited to 'Command/Assistant.hs')
-rw-r--r-- | Command/Assistant.hs | 26 |
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 |