diff --git a/haskeline.cabal b/haskeline.cabal
--- a/haskeline.cabal
+++ b/haskeline.cabal
@@ -1,6 +1,6 @@
 Name:           haskeline
 Cabal-Version:  >=1.6
-Version:        0.6
+Version:        0.6.0.1
 Category:       User Interfaces
 License:        BSD3
 License-File:   LICENSE
@@ -76,9 +76,14 @@
         install-includes: win_console.h
         cpp-options: -DMINGW
     } else {
-        Build-depends: unix==2.2.* || ==2.3.*
+        Build-depends: unix>=2.2 && < 2.4
                         -- unix-2.3 doesn't build on ghc-6.8.1
-        Extra-libraries: iconv
+        -- temporary hack: some OSes provide iconv in (g)libc, and
+        -- some provide it as a separate libiconv.  It would be
+        -- better if we could detect this automatically, though.
+        if os(darwin) || os(freebsd) {
+            Extra-libraries: iconv
+        }
         Other-modules: 
                 System.Console.Haskeline.Backend.Posix
                 System.Console.Haskeline.Backend.IConv
