diff --git a/PkgDB.hs b/PkgDB.hs
--- a/PkgDB.hs
+++ b/PkgDB.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE CPP #-}
+
 module PkgDB where
 
 import Control.Applicative
@@ -83,8 +85,12 @@
 
 userPkgs :: IO (PkgInfo -> Bool)
 userPkgs = do
+#ifdef darwin_HOST_OS
     -- drop "/."
     userDirPref <- takeDirectory <$> getAppUserDataDirectory ""
+#else
+    userDirPref <- getAppUserDataDirectory ""
+#endif
     return $ \pkgi -> case libraryDirs pkgi of
         [] -> False -- haskell-platform for example
         xs -> any (userDirPref `isPrefixOf`) xs
diff --git a/Program.hs b/Program.hs
--- a/Program.hs
+++ b/Program.hs
@@ -1,7 +1,7 @@
 module Program where
 
 version :: String
-version = "0.1.4"
+version = "0.1.5"
 
 programName :: String
 programName = "cab"
diff --git a/cab.cabal b/cab.cabal
--- a/cab.cabal
+++ b/cab.cabal
@@ -1,5 +1,5 @@
 Name:                   cab
-Version:                0.1.4
+Version:                0.1.5
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
