From 7d20671bb3ff7b970ff7556ed18fd5714ab962da Mon Sep 17 00:00:00 2001
From: Jasper Van der Jeugt <m@jaspervdj.be>
Date: Thu, 6 Dec 2012 13:41:16 +0100
Subject: I have this huge hangover

---
 src/Hakyll/Init.hs | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

(limited to 'src')

diff --git a/src/Hakyll/Init.hs b/src/Hakyll/Init.hs
index 974cacb..3e2969e 100644
--- a/src/Hakyll/Init.hs
+++ b/src/Hakyll/Init.hs
@@ -5,7 +5,11 @@ module Main
 
 
 --------------------------------------------------------------------------------
+import           Control.Monad         (forM_)
 import           System.Directory      (copyFile)
+import           System.Environment    (getArgs, getProgName)
+import           System.Exit           (exitFailure)
+import           System.FilePath       ((</>))
 
 
 --------------------------------------------------------------------------------
@@ -16,8 +20,18 @@ import           Paths_hakyll
 --------------------------------------------------------------------------------
 main :: IO ()
 main = do
-    let dstDir = "."
-    srcDir <- getDataFileName "example"
-    files  <- getRecursiveContents srcDir
-    print files
-    return ()
+    progName <- getProgName
+    args     <- getArgs
+    srcDir   <- getDataFileName "example"
+    files    <- getRecursiveContents srcDir
+
+    case args of
+        [dstDir] -> forM_ files $ \file -> do
+            let dst = dstDir </> file
+                src = srcDir </> file
+            putStrLn $ "Creating " ++ dst
+            makeDirectories dst
+            copyFile src dst
+        _ -> do
+            putStrLn $ "Usage: " ++ progName ++ " <directory>"
+            exitFailure
-- 
cgit v1.2.3