import System.Environment import System.Exit import AutoPkg.Debian import AutoPkg.Hackage main :: IO () main = do args <- getArgs case args of [pkg] -> genPackage pkg Nothing [p,v] -> genPackage p (Just v) _ -> usageExit genPackage :: String -> Maybe String -> IO () genPackage pkgname version = do cabal <- packageData pkgname version putStrLn $ "Generating package metadata for '" ++ pkgName cabal ++ "' version " ++ pkgVersion cabal ++ "." generateDeb cabal usageExit :: IO a usageExit = do mapM_ putStrLn $ [ "" , "Usage :" , "" , " cabal-autodeb []" , "" , "Search Hackage for a package named and if found, generate" , "all the meta data required to turn a cabal-ized Hackage package into" , "a debian package." , "" , "If no version is given, cabal-autodeb will grab the latest version" , "of the package." , "" ] exitSuccess