diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,11 @@
 See also http://pvp.haskell.org/faq
 
+0.6.0.1
+-------
+
+* Fix bug in non-default `-lukko` build-configuration (#242)
+* Add support for `template-haskell-2.16.0.0` (#240)
+
 0.6.0.0
 -------
 
diff --git a/hackage-security.cabal b/hackage-security.cabal
--- a/hackage-security.cabal
+++ b/hackage-security.cabal
@@ -1,6 +1,6 @@
 cabal-version:       1.12
 name:                hackage-security
-version:             0.6.0.0
+version:             0.6.0.1
 
 synopsis:            Hackage security library
 description:         The hackage security library provides both server and
@@ -29,7 +29,7 @@
 homepage:            https://github.com/haskell/hackage-security
 bug-reports:         https://github.com/haskell/hackage-security/issues
 build-type:          Simple
-tested-with:         GHC==8.8.1, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2,
+tested-with:         GHC==8.10.1, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2,
                      GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2
 
 
@@ -110,13 +110,13 @@
                        Hackage.Security.Util.TypedEmbedded
                        Prelude
   -- We support ghc 7.4 (bundled with Cabal 1.14) and up
-  build-depends:       base              >= 4.5     && < 4.14,
+  build-depends:       base              >= 4.5     && < 4.15,
                        base16-bytestring >= 0.1.1   && < 0.2,
                        base64-bytestring >= 1.0     && < 1.1,
                        bytestring        >= 0.9     && < 0.11,
                        Cabal             >= 1.14    && < 1.26
                                       || >= 2.0     && < 2.6
-                                      || >= 3.0     && < 3.2,
+                                      || >= 3.0     && < 3.4,
                        containers        >= 0.4     && < 0.7,
                        ed25519           >= 0.0     && < 0.1,
                        filepath          >= 1.2     && < 1.5,
@@ -126,11 +126,11 @@
                        -- 0.4.2 introduces TarIndex, 0.4.4 introduces more
                        -- functionality, 0.5.0 changes type of serialise
                        tar               >= 0.5     && < 0.6,
+                       template-haskell  >= 2.7     && < 2.17,
                        time              >= 1.2     && < 1.10,
                        transformers      >= 0.3     && < 0.6,
                        zlib              >= 0.5     && < 0.7,
                        -- whatever versions are bundled with ghc:
-                       template-haskell,
                        ghc-prim
   if flag(old-directory)
     build-depends:     directory  >= 1.1.0.2 && < 1.2,
@@ -176,9 +176,9 @@
                        PackageImports
                        UndecidableInstances
 
-  -- use the new stage1/cross-compile-friendly Quotes subset of TH for new GHCs
+  -- use the new stage1/cross-compile-friendly DeriveLift extension for GHC 8.0+
   if impl(ghc >= 8.0)
-    other-extensions: TemplateHaskellQuotes
+    other-extensions: DeriveLift
   else
     other-extensions: TemplateHaskell
 
diff --git a/src/Hackage/Security/TUF/Patterns.hs b/src/Hackage/Security/TUF/Patterns.hs
--- a/src/Hackage/Security/TUF/Patterns.hs
+++ b/src/Hackage/Security/TUF/Patterns.hs
@@ -4,7 +4,8 @@
 -- It is currently unusued.
 {-# LANGUAGE CPP #-}
 #if __GLASGOW_HASKELL__ >= 800
-{-# LANGUAGE TemplateHaskellQuotes #-}
+{-# LANGUAGE DeriveLift #-}
+{-# LANGUAGE StandaloneDeriving #-}
 #else
 {-# LANGUAGE TemplateHaskell #-}
 #endif
@@ -272,6 +273,11 @@
       Left  err -> fail $ "Invalid delegation: " ++ err
       Right del -> TH.lift del
 
+#if __GLASGOW_HASKELL__ >= 800
+deriving instance TH.Lift (Pattern a)
+deriving instance TH.Lift (Replacement a)
+deriving instance TH.Lift Delegation
+#else
 instance TH.Lift (Pattern a) where
   lift (PatFileConst fn)  = [| PatFileConst fn  |]
   lift (PatFileExt   e)   = [| PatFileExt   e   |]
@@ -288,6 +294,7 @@
 
 instance TH.Lift Delegation where
   lift (Delegation pat repl) = [| Delegation pat repl |]
+#endif
 
 {-------------------------------------------------------------------------------
   JSON
diff --git a/src/Hackage/Security/Util/IO.hs b/src/Hackage/Security/Util/IO.hs
--- a/src/Hackage/Security/Util/IO.hs
+++ b/src/Hackage/Security/Util/IO.hs
@@ -141,10 +141,10 @@
             (me++"cannot remove lock file before directory lock fallback")
 
     releaseLock (Just h) =
-        hClose h
 #if MIN_VERSION_base(4,11,0)
-        >> hUnlock h
+        hUnlock h >>
 #endif
+        hClose h
     releaseLock Nothing  = removeDirectory lock
 #endif
 
