runCommand -package:wai-app-static -package:graphviz -package:io-streams -package:process is:exact

Run command against the database and return its result
Retrieve getArgs, and attempt to parse it into a valid value of an Options type plus a list of left-over arguments. The options and arguments are then passed to the provided computation. If parsing fails, this computation will print an error and call exitFailure. If parsing succeeds, and the user has passed a --help flag, and the developer is using the default help flag definitions, then this computation will print documentation and call exitSuccess. See runSubcommand for details on subcommand support.
Given a list of command/action pairs, prompt the user to choose a command using dmenu and return the corresponding action.
Execute a Command.
Run a command within the PlotM monad. Stderr stream is read and decoded, while Stdout is ignored. Logging happens at the debug level if the command succeeds, or at the error level if it does not succeed.