+showPackageDot :: Verbosity -> [Flag] -> IO ()
+showPackageDot _verbosity myflags = do
+ (db_stack, _) <- getPkgDatabases False myflags
+ let all_pkgs = allPackagesInStack db_stack
+ ipix = PackageIndex.listToInstalledPackageIndex all_pkgs
+
+ putStrLn "digraph {"
+ let quote s = '"':s ++ "\""
+ mapM_ putStrLn [ quote from ++ " -> " ++ quote to
+ | p <- all_pkgs,
+ let from = display (package p),
+ depid <- depends p,
+ Just dep <- [PackageIndex.lookupInstalledPackage ipix depid],
+ let to = display (package dep)
+ ]
+ putStrLn "}"
+