diff --git a/Merge/Dependencies.hs b/Merge/Dependencies.hs
--- a/Merge/Dependencies.hs
+++ b/Merge/Dependencies.hs
@@ -328,6 +328,8 @@
       , ("odbc", any_c_p "dev-db" "unixODBC")
       , ("uuid", any_c_p "sys-apps" "util-linux")
       , ("notify", any_c_p "x11-libs" "libnotify")
+      , ("SDL2", any_c_p " media-libs" "libsdl2")
+      , ("SDL2_mixer", any_c_p "media-libs" "sdl2-mixer")
       ]
 
 ---------------------------------------------------------------
@@ -433,6 +435,9 @@
   ,("cairo-xlib",         ("x11-libs", "cairo", Portage.AnySlot))
   ,("cairo-xlib-xrender", ("x11-libs", "cairo", Portage.AnySlot))
 
+  ,("javascriptcoregtk-4.0",   ("net-libs", "webkit-gtk", Portage.GivenSlot "4"))
+  ,("webkit2gtk-4.0",          ("net-libs", "webkit-gtk", Portage.GivenSlot "4"))
+
   ,("pangocairo",       ("x11-libs", "pango", Portage.AnySlot))
   ,("pangoft2",         ("x11-libs", "pango", Portage.AnySlot))
   ,("pango",            ("x11-libs", "pango", Portage.AnySlot))
@@ -440,6 +445,7 @@
   ,("pangox",           ("x11-libs", "pango", Portage.AnySlot))
 
   ,("libglade-2.0", ("gnome-base", "libglade", Portage.AnySlot))
+  ,("libsoup-2.4",   ("net-libs", "libsoup", Portage.GivenSlot "2.4"))
   ,("gnome-vfs-2.0", ("gnome-base", "gnome-vfs", Portage.AnySlot))
   ,("gnome-vfs-module-2.0", ("gnome-base", "gnome-vfs", Portage.AnySlot))
   ,("webkit-1.0", ("net-libs","webkit-gtk", Portage.GivenSlot "2"))
@@ -497,4 +503,8 @@
   ,("Qt5Qml",                      ("dev-qt", "qtdeclarative", Portage.GivenSlot "5"))
   ,("Qt5Quick",                    ("dev-qt", "qtdeclarative", Portage.GivenSlot "5"))
   ,("Qt5Widgets",                  ("dev-qt", "qtwidgets", Portage.GivenSlot "5"))
+
+  ,("sdl2",                        ("media-libs", "libsdl2", Portage.AnySlot))
+  ,("SDL2_image",                  ("media-libs", "sdl2-image", Portage.AnySlot))
+  ,("SDL2_mixer",                  ("media-libs", "sdl2-mixer", Portage.AnySlot))
   ]
diff --git a/Portage/EBuild.hs b/Portage/EBuild.hs
--- a/Portage/EBuild.hs
+++ b/Portage/EBuild.hs
@@ -115,7 +115,7 @@
                          (license ebuild)). nl.
   ss "SLOT=". quote (slot ebuild). nl.
   ss "KEYWORDS=". quote' (sepBy " " $ keywords ebuild).nl.
-  ss "IUSE=". quote' (sepBy " " . sort_iuse $ iuse ebuild). nl.
+  ss "IUSE=". quote' (sepBy " " . sort_iuse $ L.nub $ iuse ebuild). nl.
   nl.
   dep_str "RDEPEND" (rdepend_extra ebuild) (rdepend ebuild).
   dep_str "DEPEND"  ( depend_extra ebuild) ( depend ebuild).
@@ -201,6 +201,7 @@
   esc = concatMap esc'
   esc' c =
       case c of
+          '\\' -> "\\\\"
           '"'  -> "\\\""
           '\n' -> " "
           '`'  -> "'"
diff --git a/Portage/GHCCore.hs b/Portage/GHCCore.hs
--- a/Portage/GHCCore.hs
+++ b/Portage/GHCCore.hs
@@ -31,7 +31,7 @@
 -- It means that first ghc in this list is a minmum default.
 ghcs :: [(DC.CompilerInfo, InstalledPackageIndex)]
 ghcs = modern_ghcs
-    where modern_ghcs  = [ghc741, ghc742, ghc761, ghc762, ghc782, ghc7101, ghc7102, ghc801]
+    where modern_ghcs  = [ghc741, ghc742, ghc761, ghc762, ghc782, ghc7101, ghc7102, ghc801, ghc802]
 
 cabalFromGHC :: [Int] -> Maybe Cabal.Version
 cabalFromGHC ver = lookup ver table
@@ -43,6 +43,7 @@
           , ([7,10,1], Cabal.mkVersion [1,22,2,0])
           , ([7,10,2], Cabal.mkVersion [1,22,4,0])
           , ([8,0,1],  Cabal.mkVersion [1,24,0,0])
+          , ([8,0,2],  Cabal.mkVersion [1,24,2,0])
           ]
 
 platform :: Platform
@@ -112,6 +113,9 @@
 ghc nrs = DC.unknownCompilerInfo c_id DC.NoAbiTag
     where c_id = CompilerId GHC (mkVersion nrs)
 
+ghc802 :: (DC.CompilerInfo, InstalledPackageIndex)
+ghc802 = (ghc [8,0,2], mkIndex ghc802_pkgs)
+
 ghc801 :: (DC.CompilerInfo, InstalledPackageIndex)
 ghc801 = (ghc [8,0,1], mkIndex ghc801_pkgs)
 
@@ -139,6 +143,35 @@
 -- | Non-upgradeable core packages
 -- Source: http://haskell.org/haskellwiki/Libraries_released_with_GHC
 --         and our binary tarballs (package.conf.d.initial subdir)
+
+ghc802_pkgs :: [Cabal.PackageIdentifier]
+ghc802_pkgs =
+  [ p "array" [0,5,1,1]
+  , p "base" [4,9,1,0]
+  , p "binary" [0,8,3,0] -- used by libghc
+  , p "bytestring" [0,10,8,1]
+--  , p "Cabal" [1,24,2,0]  package is upgradeable
+  , p "containers" [0,5,7,1]
+  , p "deepseq" [1,4,2,0] -- used by time
+  , p "directory" [1,3,0,0]
+  , p "filepath" [1,4,1,1]
+  , p "ghc-boot" [8,0,2]
+  , p "ghc-boot-th" [8,0,2]
+  , p "ghc-prim" [0,5,0,0]
+  , p "ghci" [8,0,2]
+--  , p "haskeline" [0,7,3,0]  package is upgradeable
+  , p "hoopl" [3,10,2,1] -- used by libghc
+  , p "hpc" [0,6,0,3] -- used by libghc
+  , p "integer-gmp" [1,0,0,1]
+  , p "pretty" [1,1,3,3]
+  , p "process" [1,4,3,0]
+  , p "template-haskell" [2,11,1,0] -- used by libghc
+  -- , p "terminfo" [0,4,0,2]
+  , p "time" [1,6,0,1] -- used by unix, directory, hpc, ghc. unsafe to upgrade
+  , p "transformers" [0,5,2,0] -- used by libghc
+  , p "unix" [2,7,2,1]
+--  , p "xhtml" [3000,2,1]
+  ]
 
 ghc801_pkgs :: [Cabal.PackageIdentifier]
 ghc801_pkgs =
diff --git a/hackport.cabal b/hackport.cabal
--- a/hackport.cabal
+++ b/hackport.cabal
@@ -1,5 +1,5 @@
 Name:           hackport
-Version:        0.5.2
+Version:        0.5.3
 License:        GPL
 License-file:   LICENSE
 Author:         Henning Günther, Duncan Coutts, Lennart Kolmodin
