module Archive.Generic ( packFromDir
, unpackFileToDir
, unpackFromFile
, packToFile
, archiveSigVersion
, packFromFiles
) where
import Archive
import Archive.Compression
import Control.Composition ((.@))
import qualified Data.ByteString.Lazy as BSL
import qualified Data.Version as V
import qualified Paths_archive_sig as P
archiveSigVersion :: V.Version
archiveSigVersion = P.version
packFromFiles :: FilePath
-> [FilePath]
-> IO ()
packFromFiles = packFromFilesAndCompress id
packToFile :: FilePath -> [Entry] -> IO ()
packToFile = writeArchiveBytes .@ BSL.writeFile
unpackFromFile :: FilePath -> IO [Entry]
unpackFromFile = fmap (either (error . show) id . readArchiveBytes) . BSL.readFile
unpackFileToDir :: FilePath
-> FilePath
-> IO ()
unpackFileToDir = unpackFileToDirAndDecompress id
packFromDir :: FilePath
-> FilePath
-> IO ()
packFromDir = packFromDirAndCompress id