stackage-update-0.1.1.0: app/stackage-update.hs
import Stackage.Update
import System.Environment (getArgs)
import Data.List ((++), concat, intersperse)
main :: IO ()
main = do
args <- getArgs
case args of
["--help"] -> putStrLn $ unlines
[ "Usage: stackage-update [--verify] [--hashes]"
, "Run this command with no arguments to update your package index."
, ""
, " --verify : Verify GPG signature on the repo"
, " --hashes : Download from the all-cabal-hashes repo"
]
["--summary"] -> putStrLn "Update your package index incrementally (requires git)"
_ -> stackageUpdate $ foldr addArg defaultStackageUpdateSettings args
addArg :: String -> StackageUpdateSettings -> StackageUpdateSettings
addArg "--verify" = setVerify True
addArg "--hashes" = setRemote allCabalHashes . setDirectoryName "all-cabal-hashes"
addArg s = error $ concat
[ "Did not understand argument "
, show s
, ", try 'stackage-update --help' for more information"
]