diff --git a/docidx.cabal b/docidx.cabal
--- a/docidx.cabal
+++ b/docidx.cabal
@@ -1,5 +1,5 @@
 name:                   docidx
-version:                1.0.1
+version:                1.1.0
 license:                BSD3
 license-file:           LICENSE
 category:               Documentation
@@ -34,13 +34,12 @@
 executable docidx
   hs-source-dirs:       src
   main-is:              docidx.hs
-  build-depends:        base >= 4 && < 5, Cabal >= 1.8, containers >= 0.3,
+  build-depends:        base >= 4 && < 5, Cabal >= 1.16, containers >= 0.3,
                         directory >= 1.0, filepath >= 1.1, html >= 1.0,
                         MissingH >= 1.1, mtl >= 2, old-locale, tagsoup >= 0.11,
                         time >= 1.1
-  other-modules:   Distribution.DocIdx.Common,
-                        Distribution.DocIdx.Config, Distribution.DocIdx.Html,
-                        Distribution.GhcPkgList
+  other-modules:        Distribution.DocIdx.Common, Distribution.DocIdx.Config,
+                        Distribution.DocIdx.Html, Distribution.GhcPkgList
   ghc-options:          -fwarn-tabs -Wall
 
 source-repository head
diff --git a/src/Distribution/GhcPkgList.hs b/src/Distribution/GhcPkgList.hs
--- a/src/Distribution/GhcPkgList.hs
+++ b/src/Distribution/GhcPkgList.hs
@@ -72,7 +72,7 @@
 -- are where Cabal says they are (not whether they exist), so
 -- PackageMap is parameterised over such paths.
 groupPackages :: PackageIndex -> PackageMap FilePath
-groupPackages = foldr groupPackages' [] . allPackagesByName
+groupPackages = foldr groupPackages' [] . map snd . allPackagesByName
 
 groupPackages' :: [I.InstalledPackageInfo] -> PackageMap FilePath ->
                   PackageMap FilePath
