Unixutils 1.52 → 1.52.4
raw patch · 4 files changed
+10/−11 lines, 4 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
Files
- System/Unix/Chroot.hs +4/−5
- System/Unix/Directory.hs +3/−3
- System/Unix/Misc.hs +1/−1
- Unixutils.cabal +2/−2
System/Unix/Chroot.hs view
@@ -75,17 +75,16 @@ copySSH Nothing = return () copySSH (Just home) = -- Do NOT preserve ownership, files must be owned by root.+ createDirectoryIfMissing True (rootPath ++ "/root") >> run "/usr/bin/rsync" ["-rlptgDHxS", "--delete", home ++ "/.ssh/", rootPath ++ "/root/.ssh"] withSock Nothing action = action withSock (Just sockPath) action = withMountBind dir (rootPath ++ dir) action where dir = dropTrailingPathSeparator (dropFileName sockPath) withMountBind toMount mountPoint action =- do createDirectoryIfMissing True mountPoint- run "/bin/mount" ["--bind", escapePathForMount toMount, escapePathForMount mountPoint]- result <- action- run "/bin/umount" [escapePathForMount mountPoint]- return result+ (do createDirectoryIfMissing True mountPoint+ run "/bin/mount" ["--bind", escapePathForMount toMount, escapePathForMount mountPoint]+ action) `finally` (run "/bin/umount" [escapePathForMount mountPoint]) escapePathForMount = id -- FIXME - Path arguments should be escaped run cmd args =
System/Unix/Directory.hs view
@@ -12,7 +12,7 @@ import Control.Exception import Data.List (isSuffixOf)-import System.Cmd+import System.Process import System.Directory import System.Exit import System.FilePath@@ -84,7 +84,7 @@ -- when you are inside a chroot. removeRecursiveSafely :: FilePath -> IO () removeRecursiveSafely path =- traverse path removeFile removeDirectory umount+ System.Unix.Directory.traverse path removeFile removeDirectory umount where umount path = do@@ -102,7 +102,7 @@ -- unmounts anything it finds mounted. Note that this can be much -- slower than Mount.umountBelow, use that instead. unmountRecursiveSafely path =- traverse path noOp noOp umount+ System.Unix.Directory.traverse path noOp noOp umount where noOp _ = return () umount path =
System/Unix/Misc.hs view
@@ -11,7 +11,7 @@ import Data.ByteString.Lazy.Char8 (empty, readFile, writeFile) import Data.Digest.Pure.MD5 (md5) import Data.Maybe-import System.Cmd+import System.Process import System.Directory import System.Exit import System.IO
Unixutils.cabal view
@@ -1,9 +1,9 @@ Name: Unixutils-Version: 1.52+Version: 1.52.4 License: BSD3 License-File: COPYING Author: Jeremy Shaw, David Fox-Homepage: http://src.seereason.com/haskell-unixutils+Homepage: https://github.com/seereason/haskell-unixutils.git Category: System Synopsis: A crude interface between Haskell and Unix-like operating systems Maintainer: jeremy@n-heptane.com