diff --git a/CabalHelper/Wrapper.hs b/CabalHelper/Wrapper.hs
--- a/CabalHelper/Wrapper.hs
+++ b/CabalHelper/Wrapper.hs
@@ -219,7 +219,7 @@
 \        $ cabal clean && cabal configure\n\
 \    You might also have to install some version of the Cabal to do this:\n\
 \        $ cabal install Cabal\n\
-\\n" sver (distdir </> "setup-config") sver sver
+\\n" sver sver
  where
    sver = showVersion cabalVer
 
diff --git a/Distribution/Helper.hs b/Distribution/Helper.hs
--- a/Distribution/Helper.hs
+++ b/Distribution/Helper.hs
@@ -98,7 +98,7 @@
 -- running all possible queries against it at once is cheap.
 newtype Query m a = Query { unQuery :: StateT (Maybe SomeLocalBuildInfo)
                                          (ReaderT (Programs, FilePath) m) a }
-    deriving (Functor, Applicative, Monad)
+    deriving (Functor, Applicative, Monad, MonadIO)
 
 type MonadQuery m = ( MonadIO m
                     , MonadState (Maybe SomeLocalBuildInfo) m
diff --git a/cabal-helper.cabal b/cabal-helper.cabal
--- a/cabal-helper.cabal
+++ b/cabal-helper.cabal
@@ -1,5 +1,5 @@
 name:                cabal-helper
-version:             0.3.3.0
+version:             0.3.4.0
 synopsis:            Simple interface to Cabal's configuration state used by ghc-mod
 description:
     @cabal-helper@ provides a library which wraps the internal use of executables
@@ -73,3 +73,13 @@
                      , transformers
                      , template-haskell
                      , temporary
+
+
+Test-Suite spec
+  Default-Language:    Haskell2010
+  Type:                exitcode-stdio-1.0
+  Main-Is:             Spec.hs
+  Hs-Source-Dirs:      tests
+  GHC-Options:         -Wall
+  Build-Depends:       base >= 4.5 && < 5
+                     , cabal-helper
diff --git a/tests/Spec.hs b/tests/Spec.hs
new file mode 100644
--- /dev/null
+++ b/tests/Spec.hs
@@ -0,0 +1,4 @@
+import Distribution.Helper
+
+main = do
+  writeAutogenFiles "./dist"
