diff --git a/CHANGES.txt b/CHANGES.txt
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,5 +1,9 @@
 Changelog for Hoogle
 
+5.0.1
+    #178, support the --link argument
+    #178, add module names to results on the command line
+    #177, require containers 0.5 or above
 5.0
     #172, make sure --local links work on Linux
     #116, store data files in getAppUserDataDirectory by default
diff --git a/hoogle.cabal b/hoogle.cabal
--- a/hoogle.cabal
+++ b/hoogle.cabal
@@ -1,7 +1,7 @@
 cabal-version:      >= 1.10
 build-type:         Simple
 name:               hoogle
-version:            5.0
+version:            5.0.1
 license:            BSD3
 license-file:       LICENSE
 category:           Development
@@ -51,7 +51,7 @@
         conduit,
         conduit-extra,
         connection,
-        containers,
+        containers >= 0.5,
         deepseq,
         directory,
         extra >= 1.4,
diff --git a/src/Action/CmdLine.hs b/src/Action/CmdLine.hs
--- a/src/Action/CmdLine.hs
+++ b/src/Action/CmdLine.hs
@@ -118,9 +118,9 @@
     {port = 80 &= typ "INT" &= help "Port number"
     ,cdn = "" &= typ "URL" &= help "URL prefix to use"
     ,logs = "" &= opt "log.txt" &= typFile &= help "File to log requests to (defaults to stdout)"
-    ,local = False &= help "Allow following file:// links, restricts to 127.0.0.1"
+    ,local = False &= help "Allow following file:// links, restricts to 127.0.0.1  Set --host explicitely (including to '*' for any host) to override the localhost-only behaviour"
     ,scope = def &= help "Default scope to start with"
-    ,host = "*" &= help "Set the host to bind on (e.g., an ip address; '!4' for ipv4-only; '!6' for ipv6-only; default: '*' for any host)."
+    ,host = "" &= help "Set the host to bind on (e.g., an ip address; '!4' for ipv4-only; '!6' for ipv6-only; default: '*' for any host)."
     ,https = def &= help "Start an https server (use --cert and --key to specify paths to the .pem files)"
     ,cert = "cert.pem" &= typFile &= help "Path to the certificate pem file (when running an https server)"
     ,key = "key.pem" &= typFile &= help "Path to the key pem file (when running an https server)"
diff --git a/src/Action/Search.hs b/src/Action/Search.hs
--- a/src/Action/Search.hs
+++ b/src/Action/Search.hs
@@ -32,7 +32,11 @@
         if null compare_ then do
             (q, res) <- return $ search store $ parseQuery $ unwords query
             whenLoud $ putStrLn $ "Query: " ++ unescapeHTML (renderQuery q)
-            let (shown, hidden) = splitAt count $ nubOrd $ map targetItem res
+            let disp Target{..} = unwords $
+                    fmap fst (maybeToList targetModule) ++
+                    [targetItem] ++
+                    ["-- " ++ targetURL | link]
+            let (shown, hidden) = splitAt count $ nubOrd $ map disp res
             if null res then
                 putStrLn "No results found"
              else if info then do
diff --git a/src/General/Web.hs b/src/General/Web.hs
--- a/src/General/Web.hs
+++ b/src/General/Web.hs
@@ -63,9 +63,15 @@
 server _ _ _ = return ()
 #else
 server log Server{..} act = do
-    logAddMessage log $ "Server started on port " ++ show port
     let
-        host' = fromString $ if local then "127.0.0.1" else host
+        host' = fromString $
+                  if host == "" then
+                    if local then
+                      "127.0.0.1"
+                    else
+                      "*"
+                  else
+                    host
         set = setOnExceptionResponse exceptionResponseForDebug
             . setHost host'
             . setPort port $
@@ -73,6 +79,9 @@
         runServer :: Application -> IO ()
         runServer = if https then runTLS (tlsSettings cert key) set
                              else runSettings set
+
+    logAddMessage log $ "Server starting on port " ++ show port ++ " and host/IP " ++ show host'
+
     runServer $ \req reply -> do
         putStrLn $ BS.unpack $ rawPathInfo req <> rawQueryString req
         let pay = Input (map Text.unpack $ pathInfo req)
