diff --git a/jack.cabal b/jack.cabal
--- a/jack.cabal
+++ b/jack.cabal
@@ -1,5 +1,5 @@
 Name:               jack
-Version:            0.6
+Version:            0.6.1
 License:            GPL
 License-File:       LICENSE
 Author:             Soenke Hahn, Henning Thielemann
@@ -22,7 +22,7 @@
 Source-Repository this
   type:     darcs
   location: http://code.haskell.org/jack/
-  tag:      0.6
+  tag:      0.6.1
 
 Flag buildExamples
   description: Build example executables
@@ -30,12 +30,12 @@
 
 Library
   Build-Depends:
-    midi >=0.1.5.2 && <0.2,
+    midi >=0.1.5.2 && <0.3,
     bytestring >=0.9.1.4 && <0.10,
     explicit-exception >=0.1.5 && <0.2,
-    transformers >=0.2 && <0.3,
+    transformers >=0.2 && <0.4,
     enumset >=0.0 && <0.1,
-    array >=0.2 && <0.4,
+    array >=0.2 && <0.5,
     unix >=2.3 && <2.6,
     base >=4.0 && <5.0
   Exposed-Modules:
diff --git a/src/Sound/JACK/Audio.hs b/src/Sound/JACK/Audio.hs
--- a/src/Sound/JACK/Audio.hs
+++ b/src/Sound/JACK/Audio.hs
@@ -23,7 +23,7 @@
 
 import Foreign.ForeignPtr (newForeignPtr_, )
 import Foreign.C.Error (eOK, )
-import Foreign.C.Types (CFloat, )
+import qualified Foreign.C.Types as C
 
 import System.Environment (getProgName)
 
@@ -32,7 +32,7 @@
            unsafeForeignPtrToStorableArray)
 
 
-type Sample = CFloat
+type Sample = C.CFloat
 
 type Port = Priv.Port Sample
 
diff --git a/src/Sound/JACK/FFI.hs b/src/Sound/JACK/FFI.hs
--- a/src/Sound/JACK/FFI.hs
+++ b/src/Sound/JACK/FFI.hs
@@ -26,7 +26,7 @@
 import Foreign.Ptr (Ptr, FunPtr)
 import Foreign.C.String (CString)
 import Foreign.C.Error (Errno, )
-import Foreign.C.Types (CUInt, CInt, CULong, )
+import qualified Foreign.C.Types as C
 
 import qualified Data.EnumSet as ES
 import Data.Word (Word, )
@@ -45,10 +45,10 @@
   client_new :: CString -> IO (Ptr Client)
 
 foreign import ccall "static jack/jack.h jack_get_sample_rate"
-  get_sample_rate :: Ptr Client -> IO CInt
+  get_sample_rate :: Ptr Client -> IO C.CInt
 
 
-type OpenOptionSet = ES.T CULong OpenOptions
+type OpenOptionSet = ES.T C.CULong OpenOptions
 
 data OpenOptions =
      NoStartServer
@@ -63,7 +63,7 @@
 wordServerName    = ES.fromEnum ServerName
 
 
-type StatusSet = ES.T CULong Status
+type StatusSet = ES.T C.CULong Status
 
 data Status =
      Failure
@@ -95,7 +95,7 @@
 wordVersionError  = ES.fromEnum VersionError
 
 
-type PortFlagSet = ES.T CULong PortFlag
+type PortFlagSet = ES.T C.CULong PortFlag
 
 data PortFlag =
      PortIsInput
@@ -115,11 +115,11 @@
 
 foreign import ccall "static jack/jack.h jack_port_register"
   port_register :: Ptr Client -> PortName -> CString ->
-        PortFlagSet -> CULong -> IO (Ptr (Port a))
+        PortFlagSet -> C.CULong -> IO (Ptr (Port a))
 
 
 -- | represents absolute frame time
-newtype NFrames = NFrames CUInt
+newtype NFrames = NFrames C.CUInt
     deriving (Show, Eq, Ord)
 
 nframesToWord :: NFrames -> Word
@@ -167,7 +167,7 @@
   port_get_buffer :: Ptr (Port a) -> NFrames -> IO (Ptr a)
 
 foreign import ccall "static jack/jack.h jack_get_buffer_size"
-  get_buffer_size :: Ptr Client -> IO (CUInt)
+  get_buffer_size :: Ptr Client -> IO (C.CUInt)
 
 foreign import ccall "static jack/jack.h jack_activate"
   activate :: Ptr Client -> IO Errno
@@ -176,8 +176,8 @@
   client_close :: Ptr Client -> IO Errno
 
 foreign import ccall "static jack/jack.h jack_get_ports"
-  get_ports :: Ptr Client -> CString -> CString -> CULong -> IO (Ptr CString)
---  get_ports :: Ptr Client -> CString -> CString -> CULong -> IO (Ptr PortName)
+  get_ports :: Ptr Client -> CString -> CString -> C.CULong -> IO (Ptr CString)
+--  get_ports :: Ptr Client -> CString -> CString -> C.CULong -> IO (Ptr PortName)
 
 -- may return eEXIST
 foreign import ccall "static jack/jack.h jack_connect"
diff --git a/src/Sound/JACK/FFI/MIDI.chs b/src/Sound/JACK/FFI/MIDI.chs
--- a/src/Sound/JACK/FFI/MIDI.chs
+++ b/src/Sound/JACK/FFI/MIDI.chs
@@ -30,7 +30,8 @@
 import Foreign.ForeignPtr (withForeignPtr, )
 import Foreign.Ptr (Ptr, castPtr, )
 import Foreign.Storable (Storable, peekByteOff, pokeByteOff, sizeOf, alignment, peek, poke)
-import Foreign.C.Types (CULong, CUInt, CUChar, CSize)
+import qualified Foreign.C.Types as C
+import Foreign.C.Types (CUInt, CUChar, )
 import Foreign.C.Error (Errno, )
 import Data.Word (Word8, )
 
@@ -75,7 +76,7 @@
 instance Storable RawEvent where
     sizeOf    _ = {# sizeof jack_midi_event_t #}
 
-    alignment _ = alignment (undefined :: CUInt)
+    alignment _ = alignment (undefined :: C.CUInt)
 
     peek pointer = do
         time_ <- {# get jack_midi_event_t-> time #} pointer
@@ -141,7 +142,7 @@
 
 -- nullPtr may be mapped to eNOBUFS exception as in event_write
 foreign import ccall "static jack/midiport.h jack_midi_event_reserve"
-  event_reserve :: Ptr EventBuffer -> NFrames -> CSize -> IO (Ptr Word8)
+  event_reserve :: Ptr EventBuffer -> NFrames -> C.CSize -> IO (Ptr Word8)
 
 foreign import ccall "static jack/midiport.h jack_midi_event_write"
-  event_write :: Ptr EventBuffer -> NFrames -> Ptr Word8 -> CULong -> IO Errno
+  event_write :: Ptr EventBuffer -> NFrames -> Ptr Word8 -> C.CULong -> IO Errno
diff --git a/src/Sound/JACK/Private.hs b/src/Sound/JACK/Private.hs
--- a/src/Sound/JACK/Private.hs
+++ b/src/Sound/JACK/Private.hs
@@ -12,7 +12,7 @@
 import qualified Foreign.C.String as CString
 import Foreign.Storable (Storable, )
 import Foreign.Ptr (Ptr, )
-import Foreign.C.Types (CFloat, )
+import qualified Foreign.C.Types as C
 import Foreign.C.Error (Errno, eOK, )
 
 
@@ -24,7 +24,7 @@
 class PortType typ where
     portTypeToCString :: typ -> String
 
-instance PortType CFloat where
+instance PortType C.CFloat where
     portTypeToCString _ = "32 bit float mono audio"
 
 instance PortType EventBuffer where
