diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
 # ats-pkg
 
+## 3.3.2.0
+
+  * Update `Debian` type and adjust prelude accordingly
+  * Allow Debian packages built to include header files and libraries.
+  * Bug fixes related to Debian packaging.
+
 ## 3.2.1.8
 
   * Update Dhall prelude
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,7 @@
 # ATSPackage
 
 [![Build Status](https://travis-ci.org/vmchale/atspkg.svg?branch=master)](https://travis-ci.org/vmchale/atspkg)
+[![Windows build status](https://ci.appveyor.com/api/projects/status/github/vmchale/atspkg?svg=true)](https://ci.appveyor.com/project/vmchale/atspkg)
 [![Hackage](https://img.shields.io/hackage/v/ats-pkg.svg)](http://hackage.haskell.org/package/ats-pkg)
 [![Dependencies of latest version on Hackage](https://img.shields.io/hackage-deps/v/ats-pkg.svg)](https://hackage.haskell.org/package/ats-pkg)
 
@@ -50,7 +51,7 @@
 The easiest way to install is via a script, viz.
 
 ```bash
-curl -sSl https://raw.githubusercontent.com/vmchale/atspkg/master/bash/install.sh | bash -s
+curl -sSl https://raw.githubusercontent.com/vmchale/atspkg/master/bash/install.sh | sh -s
 ```
 
 Thereafter, you can run
diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -50,6 +50,7 @@
                     }
              | Fetch { _url       :: String
                      , _atspkgArg :: Maybe String
+                     , _verbosity :: Int
                      }
              | Nuke
              | Upgrade
@@ -210,14 +211,15 @@
     (metavar "URL"
     <> help "URL pointing to a tarball containing the package to be installed.")
     <*> pkgArgs
+    <*> verbosity
 
-fetchPkg :: Maybe String -> String -> IO ()
-fetchPkg mStr pkg = withSystemTempDirectory "atspkg" $ \p -> do
+fetchPkg :: Maybe String -> String -> Int -> IO ()
+fetchPkg mStr pkg v = withSystemTempDirectory "atspkg" $ \p -> do
     let (dirName, url') = (p, pkg) & each %~ TL.pack
     buildHelper True (ATSDependency mempty dirName url' undefined undefined mempty mempty mempty mempty)
     ps <- getSubdirs p
     pkgDir <- fromMaybe p <$> findFile (p:ps) "atspkg.dhall"
-    let setup = [buildAll 0 mStr Nothing (Just pkgDir)]
+    let setup = [buildAll v mStr Nothing (Just pkgDir)]
     withCurrentDirectory (takeDirectory pkgDir) (mkPkg mStr False False False setup ["install"] Nothing 0)
     stopGlobalPool
 
@@ -236,7 +238,7 @@
 run (CheckSet p b)                     = void $ checkPkgSet p b
 run Upgrade                            = upgradeBin "vmchale" "atspkg"
 run Nuke                               = cleanAll
-run (Fetch u mArg)                     = fetchPkg mArg u
+run (Fetch u mArg v)                   = fetchPkg mArg u v
 run Clean                              = mkPkg Nothing False True False mempty ["clean"] Nothing 0
 run (Build rs mArg tgt rba v lint tim) = runHelper rba lint tim rs mArg tgt v
 run (Test ts mArg rba v lint tim)      = runHelper rba lint tim ("test" : ts) mArg Nothing v
diff --git a/ats-pkg.cabal b/ats-pkg.cabal
--- a/ats-pkg.cabal
+++ b/ats-pkg.cabal
@@ -1,12 +1,12 @@
 cabal-version: 2.0
 name: ats-pkg
-version: 3.2.1.8
+version: 3.2.2.0
 license: BSD3
 license-file: LICENSE
 copyright: Copyright: (c) 2018 Vanessa McHale
 maintainer: vamchale@gmail.com
 author: Vanessa McHale
-tested-with: ghc ==8.4.3
+tested-with: ghc ==8.4.3 ghc ==8.2.2
 bug-reports: https://github.com/vmchale/atspkg/issues
 synopsis: A build tool for ATS
 description:
@@ -169,7 +169,7 @@
         ghc-options: -eventlog -with-rtsopts=-l
     
     if flag(profile)
-        ghc-options: -with-rtsopts=-h
+        ghc-options: -with-rtsopts=-h -with-rtsopts=-p
     
     if flag(development)
         ghc-options: -Werror
diff --git a/dhall/atspkg-prelude.dhall b/dhall/atspkg-prelude.dhall
--- a/dhall/atspkg-prelude.dhall
+++ b/dhall/atspkg-prelude.dhall
@@ -68,6 +68,7 @@
   , manpage : Optional Text
   , binaries : List Text
   , libraries : List Text
+  , headers : List Text
   }
 in
 
@@ -229,6 +230,8 @@
   , binaries = []
     : List Text
   , libraries = []
+    : List Text
+  , headers = []
     : List Text
   }
 in
diff --git a/src/Language/ATS/Package/Build.hs b/src/Language/ATS/Package/Build.hs
--- a/src/Language/ATS/Package/Build.hs
+++ b/src/Language/ATS/Package/Build.hs
@@ -318,7 +318,7 @@
         -- TODO depend on tgt somehow?
         specialDeps %> \out -> do
             cfgBin' <- cfgBin
-            need [ cfgBin', flags, cfgFile]
+            need [ cfgBin', flags, cfgFile ]
             v'' <- getVerbosity
             liftIO $ fetchDeps v'' (ccFromString cc') mStr setup (first unpack <$> ds) (first unpack <$> cdps) (first unpack <$> bdeps) cfgBin' atslibSetup False *> writeFile out ""
 
diff --git a/src/Language/ATS/Package/Debian.hs b/src/Language/ATS/Package/Debian.hs
--- a/src/Language/ATS/Package/Debian.hs
+++ b/src/Language/ATS/Package/Debian.hs
@@ -25,6 +25,7 @@
                      , manpage     :: Maybe Text
                      , binaries    :: [Text]
                      , libraries   :: [Text]
+                     , headers     :: [Text]
                      }
                      deriving (Generic, Binary, Interpret)
 
@@ -45,17 +46,27 @@
 debRules deb =
     unpack (target deb) %> \out -> do
 
-        need (unpack <$> binaries deb)
+        let binaries' = unpack <$> binaries deb
+            libraries' = unpack <$> libraries deb
+            headers' = unpack <$> headers deb
 
+        traverse_ need [ binaries'
+                       , libraries'
+                       , headers'
+                       ]
+
         let packDir = unpack (package deb)
-            makeRel = (("target/" ++ packDir ++ "/") ++)
-            debianDir = makeRel "/DEBIAN"
-            binDir = makeRel "/usr/local/bin"
-            libDir = makeRel "/usr/local/lib"
-            manDir = makeRel "/usr/local/share/man/man1"
+            makeRel = (("target" </> packDir) </>)
+            debianDir = makeRel "DEBIAN"
+            binDir = makeRel "usr/local/bin"
+            libDir = makeRel "usr/local/lib"
+            manDir = makeRel "usr/local/share/man/man1"
+            includeDir = makeRel "usr/local/include"
 
+        liftIO $ print debianDir
+
         traverse_ (liftIO . createDirectoryIfMissing True)
-            [ binDir, debianDir, manDir ]
+            [ binDir, debianDir, manDir, includeDir ]
 
         fold $ do
             mp <- manpage deb
@@ -63,8 +74,11 @@
                 need [unpack mp] *>
                 copyFile' (unpack mp) (manDir ++ "/" ++ takeFileName (unpack mp))
 
-        zipWithM_ copyFile' (unpack <$> binaries deb) (((binDir ++ "/") ++) . unpack <$> binaries deb)
-        zipWithM_ copyFile' (unpack <$> libraries deb) (((libDir ++ "/") ++) . unpack <$> libraries deb)
+        let moveFiles files dir = zipWithM_ copyFile' files ((dir </>) . takeFileName <$> files)
+
+        moveFiles binaries' binDir
+        moveFiles libraries' libDir
+        moveFiles headers' includeDir
 
         writeFileChanged (debianDir ++ "/control") (control deb)
 
