diff --git a/cblrepo.cabal b/cblrepo.cabal
--- a/cblrepo.cabal
+++ b/cblrepo.cabal
@@ -1,6 +1,6 @@
 name: cblrepo
-version: 0.21.0
-cabal-version: >= 1.6
+version: 0.22.0
+cabal-version: >= 1.23
 license: OtherLicense
 license-file: LICENSE-2.0
 copyright: Copyright (c) 2011 Magnus Therning
@@ -10,67 +10,70 @@
 bug-reports: mailto:magnus@therning.org
 synopsis: Tool to maintain a database of CABAL packages and their dependencies
 description:
-    Helper tool for people maintaining a set of CABAL packages for their
-    distribution. It maintains a database of packages and verifies dependencies
-    of the entire set as packages are added or updated. It also makes it trivial
-    to track packages as new versions are released on Hackage.
+            Helper tool for people maintaining a set of CABAL packages for their
+            distribution. It maintains a database of packages and verifies
+            dependencies of the entire set as packages are added or updated. It
+            also makes it trivial to track packages as new versions are released
+            on Hackage.
 
-    It can also be used to build source packages for the Arch Linux
-    distribution.
+            It can also be used to build source packages for the Arch Linux
+            distribution.
 category: Utils, Distribution
 build-type: Custom
 
+custom-setup
+    setup-depends: base, Cabal
+
 executable cblrepo
     hs-source-dirs: src
     main-is: Main.hs
-    other-modules:
-        Add
-        BuildPkgs
-        BumpPkgs
-        ConvertDB
-        CreateConfig
-        Extract
-        ListPkgs
-        OldPkgDB
-        OldPkgTypes
-        PkgBuild
-        PkgDB
-        PkgTypes
-        Remove
-        Update
-        Upgrades
-        Util.Cabal
-        Util.Cfg
-        Util.Dist
-        Util.HackageIndex
-        Util.Misc
-        Util.Translation
-        Versions
-    build-depends:
-        base ==4.8.*,
-        filepath ==1.4.*,
-        directory ==1.2.*,
-        Cabal ==1.22.*,
-        transformers ==0.4.*,
-        bytestring ==0.10.*,
-        tar ==0.5.*,
-        zlib ==0.6.*,
-        mtl ==2.2.*,
-        process ==1.2.*,
-        Unixutils ==1.54.*,
-        unix ==2.7.*,
-        ansi-wl-pprint ==0.6.*,
-        aeson ==0.11.*,
-        stringsearch ==0.3.*,
-        optparse-applicative ==0.12.*,
-        safe ==0.3.*,
-        containers ==0.5.*,
-        utf8-string ==1.0.*,
-        text,
-        vector
+    other-modules: Add
+                   BuildPkgs
+                   BumpPkgs
+                   ConvertDB
+                   CreateConfig
+                   Extract
+                   ListPkgs
+                   OldPkgDB
+                   OldPkgTypes
+                   PkgBuild
+                   PkgDB
+                   PkgTypes
+                   Remove
+                   Update
+                   Upgrades
+                   Util.Cabal
+                   Util.Cfg
+                   Util.Dist
+                   Util.HackageIndex
+                   Util.Misc
+                   Util.Translation
+                   Versions
+    build-depends: base ==4.9.*,
+                   filepath ==1.4.*,
+                   directory ==1.2.*,
+                   Cabal ==1.24.*,
+                   transformers ==0.5.*,
+                   bytestring ==0.10.*,
+                   tar ==0.5.*,
+                   zlib ==0.6.*,
+                   mtl ==2.2.*,
+                   process ==1.4.*,
+                   Unixutils ==1.54.*,
+                   unix ==2.7.*,
+                   ansi-wl-pprint ==0.6.*,
+                   aeson ==0.11.*,
+                   stringsearch ==0.3.*,
+                   optparse-applicative ==0.12.*,
+                   safe ==0.3.*,
+                   containers ==0.5.*,
+                   utf8-string ==1.0.*,
+                   text,
+                   vector
+    default-language: Haskell2010
 
 Source-Repository head
-    Type:                 git
-    Location:             https://github.com/magthe/cblrepo.git
+    Type: git
+    Location: https://github.com/magthe/cblrepo.git
 
 -- vim: set tw=0 :
diff --git a/src/ListPkgs.hs b/src/ListPkgs.hs
--- a/src/ListPkgs.hs
+++ b/src/ListPkgs.hs
@@ -52,7 +52,7 @@
 printCblPkgNormal p =
     putStrLn $ pkgName p ++ "  " ++ v ++ "-" ++ r ++ showFlagsIfPresent p
         where
-            v = display (pkgVersion p) ++ if (not $ isGhcPkg p) then ("_" ++ show (pkgXRev p)) else ""
+            v = display (pkgVersion p) ++ if (not $ isGhcPkg p) then (".x" ++ show (pkgXRev p)) else ""
             r = if isGhcPkg p then "xx" else show (pkgRelease p)
             showFlagsIfPresent _p
                 | [] <- pkgFlags _p = ""
diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -94,7 +94,7 @@
 cmdPkgBuildCmd = command "pkgbuild" (info (helper <*> cmdPkgBuildOpts) (fullDesc <> progDesc "Create PKGBUILD other files necessary for an Arch package"))
   where
     cmdPkgBuildOpts = CmdPkgBuild
-                      <$> option ghcVersionArgReader (long "ghc-version" <> value ghcDefVersion <> help "GHC version to use in PKGBUILD (default: 7.10.3)")
+                      <$> option ghcVersionArgReader (long "ghc-version" <> value ghcDefVersion <> help "GHC version to use in PKGBUILD (default: 8.0.1)")
                       <*> option auto (long "ghc-release" <> value ghcDefRelease <> showDefault <> help "GHC release to use in PKGBUILD")
                       <*> strOption (long "patchdir" <> value "patches" <> showDefault  <> help "Location of patches")
                       <*> some (strArgument (metavar "PKGNAME ..."))
diff --git a/src/Util/HackageIndex.hs b/src/Util/HackageIndex.hs
--- a/src/Util/HackageIndex.hs
+++ b/src/Util/HackageIndex.hs
@@ -36,6 +36,7 @@
 import Distribution.PackageDescription.Parse
 import Distribution.Text
 import System.FilePath
+import Safe (atMay)
 
 readIndexFile :: FilePath -> FilePath -> IO BSL.ByteString
 readIndexFile indexLocation indexFilename = exitOnException
@@ -57,7 +58,7 @@
                 Just ver -> createPkgVerMap (M.insertWith (++) (head parts) [(ver, xrev)] acc) es
             where
                 parts = splitDirectories (Tar.entryPath e)
-                ver = simpleParse $ parts !! 1
+                ver = parts `atMay` 1 >>= simpleParse
                 content = case Tar.entryContent e of
                     Tar.NormalFile c _ -> Just $ BSLU.toString c
                     _ -> Nothing
diff --git a/src/Util/Misc.hs b/src/Util/Misc.hs
--- a/src/Util/Misc.hs
+++ b/src/Util/Misc.hs
@@ -56,8 +56,8 @@
 progName = "cblrepo"
 dbName = progName ++ ".db"
 
-ghcDefVersion = Version [7, 10, 3] []
-ghcDefRelease = 3 :: Int
+ghcDefVersion = Version [8, 0, 1] []
+ghcDefRelease = 1 :: Int
 ghcVersionDep :: Version -> Int -> String
 ghcVersionDep ghcVer ghcRel = "ghc=" ++ display ghcVer ++ "-" ++ show ghcRel
 
diff --git a/src/Util/Translation.hs b/src/Util/Translation.hs
--- a/src/Util/Translation.hs
+++ b/src/Util/Translation.hs
@@ -161,7 +161,7 @@
             , pretty xrev
             , empty, text "# PKGBUILD options/directives"
             , pretty pkgName
-            , text "pkgver=${_ver}_${_xrev}"
+            , text "pkgver=${_ver}.x${_xrev}"
             , pretty pkgRel
             , pretty pkgDesc
             , pretty url
@@ -341,7 +341,7 @@
         remPkgs = map DB.pkgName (filter isGhcPkg db) ++ [pkgNameStr pd]
         deps = filter (not . (`elem` remPkgs)) (map depName (buildDepends pd))
 
-        depString n = "haskell-" ++ name ++ "=" ++ ver ++ "_" ++ xrev ++ "-" ++ rel
+        depString n = "haskell-" ++ name ++ "=" ++ ver ++ ".x" ++ xrev ++ "-" ++ rel
             where
                 pkg = fromJust $ lookupPkg db n
                 name = map toLower $ DB.pkgName pkg
