diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,3 +1,20 @@
+# 1.6.0.0
+
+_Andreas Abel, 2023-01-14_
+
+- Allow `directory-1.3.8.0` which is no longer `Safe` Haskell.
+  Thus, we need to revoke `Safe` status of the following modules:
+  * `Data.MIME.Types`
+  * `Network.Email.Sendmail`
+  * `System.IO.HVFS`
+  * `System.IO.HVFS.Combinators`
+  * `System.IO.HVFS.InstanceHelpers`
+  * `System.Path`
+  * `System.Path.Glob`
+  * `System.Path.NameManip`
+- Allow `unix-2.8.0.0` (enables `directory-1.3.8.0`).
+- Tested with GHC 7.10 - 9.6 alpha1.
+
 ### 1.5.0.1
 
 _Andreas Abel, 2022-03-14_
diff --git a/MissingH.cabal b/MissingH.cabal
--- a/MissingH.cabal
+++ b/MissingH.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.12
 name: MissingH
-version: 1.5.0.1
+version: 1.6.0.0
 
 build-type: Simple
 license: BSD3
@@ -10,7 +10,8 @@
 license-file: LICENSE
 
 tested-with:
-  GHC == 9.2.1
+  GHC == 9.4.4
+  GHC == 9.2.5
   GHC == 9.0.2
   GHC == 8.10.7
   GHC == 8.8.4
@@ -26,7 +27,7 @@
   programmers.  It is written in pure Haskell and thus should be
   extremely portable and easy to use.
 category: Unclassified
-bug-reports: https://github.com/hvr/missingh/issues
+bug-reports: https://github.com/haskell-hvr/missingh/issues
 
 extra-source-files:
   CHANGES.md
@@ -53,7 +54,7 @@
 
 source-repository head
   type: git
-  location: https://github.com/hvr/missingh.git
+  location: https://github.com/haskell-hvr/missingh.git
 
 library
   hs-source-dirs: src
@@ -122,7 +123,7 @@
 
   build-depends:
       array               >= 0.4.0.0 && < 0.6
-    , base                >= 4.8.0.0 && < 4.17
+    , base                >= 4.8.0.0 && < 5
     , containers          >= 0.4.2.1 && < 0.7
     , directory           >= 1.1.0.2 && < 1.4
     , filepath            >= 1.3.0.0 && < 1.5
@@ -142,7 +143,7 @@
     build-depends: network >= 2.6.3.1 && <2.9
 
   If !os(windows)
-    Build-Depends: unix   >= 2.5.1.0 && < 2.8
+    Build-Depends: unix   >= 2.5.1.0 && < 2.9
 
   ghc-options:     -Wall
   if impl(ghc >= 8)
diff --git a/src/Data/MIME/Types.hs b/src/Data/MIME/Types.hs
--- a/src/Data/MIME/Types.hs
+++ b/src/Data/MIME/Types.hs
@@ -1,5 +1,3 @@
-{-# LANGUAGE Safe #-}
-
 {- arch-tag: MIME Types main file
 Copyright (c) 2004-2011 John Goerzen <jgoerzen@complete.org>
 
@@ -37,14 +35,14 @@
 
 import qualified Data.Map as Map
 import qualified Control.Exception (try, IOException)
-import safe Control.Monad ( foldM )
-import safe System.IO
+import Control.Monad ( foldM )
+import System.IO
     ( Handle, hClose, openFile, IOMode(ReadMode) )
-import safe System.IO.Error ()
-import safe System.IO.Utils ( hGetLines )
-import safe System.Path ( splitExt )
-import safe Data.Map.Utils ( flippedLookupM )
-import safe Data.Char ( toLower )
+import System.IO.Error ()
+import System.IO.Utils ( hGetLines )
+import System.Path ( splitExt )
+import Data.Map.Utils ( flippedLookupM )
+import Data.Char ( toLower )
 
 ----------------------------------------------------------------------
 -- Basic type declarations
diff --git a/src/Network/Email/Sendmail.hs b/src/Network/Email/Sendmail.hs
--- a/src/Network/Email/Sendmail.hs
+++ b/src/Network/Email/Sendmail.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE CPP #-}
-{-# LANGUAGE Safe #-}
 
 {- arch-tag: Sendmail utility
 Copyright (c) 2004-2011 John Goerzen <jgoerzen@complete.org>
@@ -31,11 +30,11 @@
 module Network.Email.Sendmail(sendmail)
 where
 
-import safe System.Cmd.Utils ( PipeMode(WriteToPipe), pOpen )
-import safe System.Directory
+import System.Cmd.Utils ( PipeMode(WriteToPipe), pOpen )
+import System.Directory
     ( doesFileExist, getPermissions, Permissions(executable) )
-import safe System.IO ( hPutStr )
-import safe System.IO.Error ()
+import System.IO ( hPutStr )
+import System.IO.Error ()
 import qualified Control.Exception(try, IOException)
 
 sendmails :: [String]
diff --git a/src/System/Daemon.hs b/src/System/Daemon.hs
--- a/src/System/Daemon.hs
+++ b/src/System/Daemon.hs
@@ -86,7 +86,13 @@
 child2 = trap $
     do setCurrentDirectory "/"
        mapM_ closeFd [stdInput, stdOutput, stdError]
-       nullFd <- openFd "/dev/null" ReadWrite Nothing defaultFileFlags
+       nullFd <- openFd
+         "/dev/null"
+         ReadWrite
+#if !MIN_VERSION_unix(2,8,0)
+         Nothing
+#endif
+         defaultFileFlags
        mapM_ (dupTo nullFd) [stdInput, stdOutput, stdError]
        closeFd nullFd
 #endif
diff --git a/src/System/IO/HVFS.hs b/src/System/IO/HVFS.hs
--- a/src/System/IO/HVFS.hs
+++ b/src/System/IO/HVFS.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE CPP                  #-}
-{-# LANGUAGE Safe                 #-}
 {-# LANGUAGE TypeSynonymInstances #-}
 {- arch-tag: HVFS main file
 Copyright (c) 2004-2011 John Goerzen <jgoerzen@complete.org>
diff --git a/src/System/IO/HVFS/Combinators.hs b/src/System/IO/HVFS/Combinators.hs
--- a/src/System/IO/HVFS/Combinators.hs
+++ b/src/System/IO/HVFS/Combinators.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE CPP #-}
-{-# LANGUAGE Safe #-}
 {- arch-tag: HVFS Combinators
 Copyright (c) 2004-2011 John Goerzen <jgoerzen@complete.org>
 
@@ -26,10 +25,10 @@
                                     HVFSChroot, newHVFSChroot)
     where
 
-import safe System.IO ( IOMode(ReadMode) )
-import safe System.IO.Error
+import System.IO ( IOMode(ReadMode) )
+import System.IO.Error
     ( doesNotExistErrorType, permissionErrorType )
-import safe System.IO.HVFS
+import System.IO.HVFS
     ( HVFSOpenable(vOpen),
       HVFS(vRemoveFile, vCreateLink, vCreateSymbolicLink, vRenameFile,
            vRenameDirectory, vRemoveDirectory, vCreateDirectory,
diff --git a/src/System/IO/HVFS/InstanceHelpers.hs b/src/System/IO/HVFS/InstanceHelpers.hs
--- a/src/System/IO/HVFS/InstanceHelpers.hs
+++ b/src/System/IO/HVFS/InstanceHelpers.hs
@@ -1,4 +1,3 @@
-{-# LANGUAGE Safe #-}
 {-# LANGUAGE LambdaCase #-}
 {-# OPTIONS_GHC -fno-warn-name-shadowing #-}
 {- arch-tag: HVFS instance helpers
@@ -38,11 +37,11 @@
 import           Data.IORef            (IORef, newIORef, readIORef, writeIORef)
 import           Data.List             (genericLength)
 import           System.FilePath       (isPathSeparator, pathSeparator, (</>))
-import safe System.IO ( IOMode(ReadMode) )
+import           System.IO             ( IOMode(ReadMode) )
 import           System.IO.Error       (doesNotExistErrorType,
                                         illegalOperationErrorType,
                                         permissionErrorType)
-import safe System.IO.HVFS
+import System.IO.HVFS
     ( FileOffset,
       HVFSOpenable(vOpen),
       HVFS(vGetDirectoryContents, vGetFileStatus, vSetCurrentDirectory,
diff --git a/src/System/Path.hs b/src/System/Path.hs
--- a/src/System/Path.hs
+++ b/src/System/Path.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE CPP #-}
-{-# LANGUAGE Safe #-}
 {- arch-tag: Path utilities main file
 Copyright (C) 2004-2011 John Goerzen <jgoerzen@complete.org>
 
@@ -31,22 +30,22 @@
                      mktmpdir, brackettmpdir, brackettmpdirCWD
                     )
 where
-import safe Data.List.Utils ( startswith, alwaysElemRIndex )
+import Data.List.Utils ( startswith, alwaysElemRIndex )
 #if !(defined(mingw32_HOST_OS) || defined(mingw32_TARGET_OS) || defined(__MINGW32__))
-import safe System.Directory
+import System.Directory
     ( getCurrentDirectory, removeFile, setCurrentDirectory )
-import safe System.Posix.Directory ( createDirectory )
-import safe System.Posix.Temp ( mkstemp )
+import System.Posix.Directory ( createDirectory )
+import System.Posix.Temp ( mkstemp )
 #else
-import safe System.Directory
-import safe System.IO ( openTempFile )
+import System.Directory
+import System.IO ( openTempFile )
 #endif
-import safe Control.Exception ( finally )
-import safe System.FilePath ( pathSeparator )
-import safe System.IO ( hClose )
-import safe System.IO.HVFS.Utils
+import Control.Exception ( finally )
+import System.FilePath ( pathSeparator )
+import System.IO ( hClose )
+import System.IO.HVFS.Utils
     ( SystemFS(SystemFS), recurseDir, recurseDirStat, recursiveRemove )
-import safe System.Path.NameManip
+import System.Path.NameManip
     ( normalise_path, absolute_path_by, guess_dotdot )
 
 {- | Splits a pathname into a tuple representing the root of the name and
diff --git a/src/System/Path/Glob.hs b/src/System/Path/Glob.hs
--- a/src/System/Path/Glob.hs
+++ b/src/System/Path/Glob.hs
@@ -1,5 +1,3 @@
-{-# LANGUAGE Safe #-}
-
 {-
 Copyright (c) 2006-2011 John Goerzen <jgoerzen@complete.org>
 
@@ -30,7 +28,7 @@
 import           Data.List             (isSuffixOf)
 import           Data.List.Utils       (hasAny)
 import           System.FilePath       (pathSeparator, splitFileName, (</>))
-import safe      System.IO.HVFS        (HVFS (vDoesDirectoryExist, vDoesExist, vGetDirectoryContents),
+import           System.IO.HVFS        (HVFS (vDoesDirectoryExist, vDoesExist, vGetDirectoryContents),
                                          SystemFS (SystemFS))
 import           System.Path.WildMatch (wildCheckCase)
 
diff --git a/src/System/Path/NameManip.hs b/src/System/Path/NameManip.hs
--- a/src/System/Path/NameManip.hs
+++ b/src/System/Path/NameManip.hs
@@ -1,4 +1,3 @@
-{-# LANGUAGE Safe #-}
 {-# LANGUAGE LambdaCase #-}
 {-# OPTIONS_GHC -fno-warn-name-shadowing #-}
 {- |
