diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,8 @@
 # Changelog
 
+## 0.7.3 (2020-02-11)
+- fix CHECKSUM512 detection (for respins)
+
 ## 0.7.2 (2019-10-29)
 - add stage release target (useful just prior to release)
 
diff --git a/Main.hs b/Main.hs
--- a/Main.hs
+++ b/Main.hs
@@ -150,8 +150,8 @@
       hrefs <- httpDirectory mgr masterDir
       let prefixPat = makeFilePrefix mrelease
           selector = if '*' `elem` prefixPat then (=~ prefixPat) else (prefixPat `isPrefixOf`)
-          mfile = listToMaybe $ filter selector $ map T.unpack hrefs
-          mchecksum = listToMaybe $ filter ((if tgtrel == "respin" then T.isPrefixOf else T.isSuffixOf) (T.pack "CHECKSUM")) hrefs
+          mfile = find selector $ map T.unpack hrefs
+          mchecksum = find ((if tgtrel == "respin" then T.isPrefixOf else T.isSuffixOf) (T.pack "CHECKSUM")) hrefs
       case mfile of
         Nothing ->
           error' $ "no match for " <> prefixPat <> " in " <> masterDir
@@ -161,12 +161,6 @@
                        else prefixPat
               masterUrl = masterDir </> file
           masterSize <- httpFileSize mgr masterUrl
-          mlocaltime <- do
-            mUtc <- httpLastModified mgr masterUrl
-            case mUtc of
-              Nothing -> return Nothing
-              Just u -> Just <$> utcToLocalZonedTime u
-          maybe (return ()) putStrLn $ showMSize masterSize <> showMDate mlocaltime
           (finalurl, already) <- do
             let localfile = takeFileName masterUrl
             exists <- doesFileExist localfile
@@ -181,10 +175,20 @@
                   error' $ localfile <> " does have write permission, aborting!"
                 findMirror masterUrl path file
               else findMirror masterUrl path file
+          mlocaltime <- httpTimestamp masterUrl
+          unless (run && already) $
+            maybe (return ()) putStrLn $ showMSize masterSize <> showMDate mlocaltime
           let finalDir = dropFileName finalurl
-          putStrLn finalurl
+          unless run $
+            putStrLn finalurl
           return (finalurl, prefix, (masterUrl,masterSize), (finalDir </>) . T.unpack <$> mchecksum, already)
         where
+          httpTimestamp url = do
+            mUtc <- httpLastModified mgr url
+            case mUtc of
+              Nothing -> return Nothing
+              Just u -> Just <$> utcToLocalZonedTime u
+
           showMSize = fmap (\ s -> "size " <> show s <> " ")
           showMDate = fmap (\ s -> "(" <> show s <> ")")
 
@@ -208,7 +212,8 @@
       localsize <- toInteger . fileSize <$> getFileStatus localfile
       if Just localsize == masterSize
         then do
-        putStrLn "File already fully downloaded"
+        unless run $
+          putStrLn "File already fully downloaded"
         return True
         else do
         let showsize =
@@ -315,7 +320,7 @@
         chkgpg <- if pgp
           then checkForFedoraKeys
           else return False
-        let shasum = if "CHECKSUM512" `isPrefixOf` checksumfile
+        let shasum = if "CHECKSUM512" `isPrefixOf` takeFileName checksumfile
                      then "sha512sum" else "sha256sum"
         if chkgpg then do
           putStrLn $ "Running gpg verify and " <> shasum <> ":"
diff --git a/dl-fedora.cabal b/dl-fedora.cabal
--- a/dl-fedora.cabal
+++ b/dl-fedora.cabal
@@ -1,6 +1,6 @@
 cabal-version:       1.18
 name:                dl-fedora
-version:             0.7.2
+version:             0.7.3
 synopsis:            Fedora image download tool
 description:         Tool to download Fedora iso and image files
 -- can change to GPL-3.0-or-later with Cabal-2.2
