cabal-sign 0.4.0.0 → 0.4.1.0
raw patch · 3 files changed
+8/−5 lines, 3 filesdep −SHA2
Dependencies removed: SHA2
Files
- cabal-sign.cabal +1/−2
- cabal-sign.sig binary
- src/Main.hs +7/−3
cabal-sign.cabal view
@@ -1,5 +1,5 @@ name: cabal-sign-version: 0.4.0.0+version: 0.4.1.0 synopsis: Sign and verify Cabal packages. description: Sign and verify Cabal packages. license: BSD3@@ -15,7 +15,6 @@ ghc-options: -O2 hs-source-dirs: src build-depends: base > 4 && < 5,- SHA2, zlib, tar, bytestring,
cabal-sign.sig view
binary file changed (287 → 287 bytes)
src/Main.hs view
@@ -41,9 +41,13 @@ then error $ fp ++ " doesn't exist" else do gzip <- fmap (L.fromChunks . return) (S.readFile fp) entries <- getGzipEntries gzip- _ <- rawSystem "gpg" ["--detach-sign",fp]- addSignature fp (fp <.> "sig") entries+ L.writeFile tar (Gzip.decompress gzip)+ _ <- rawSystem "gpg" ["--detach-sign",tar]+ addSignature fp (tar <.> "sig") entries+ removeFile tar + where tar = translate ".tar" fp+ addSignature :: FilePath -> FilePath -> [Entry] -> IO () addSignature gz sig entries = do signature <- L.readFile sig@@ -88,7 +92,7 @@ case find isSig entries of Nothing -> error $ "unable to find " ++ sigName ++ " in archive" Just entry -> do- L.writeFile stripped (Gzip.compress (Tar.write (filter (not . isSig) entries)))+ L.writeFile stripped (Tar.write (filter (not . isSig) entries)) L.writeFile sig (getEntryFileContent entry) _ <- rawSystem "gpg" ["--verify",sig,stripped] removeFile stripped