diff options
author | Joey Hess <joey@kitenet.net> | 2013-09-09 09:58:17 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-09-09 10:02:15 -0400 |
commit | 6d3c84755bc79f04724a0f88975d7e9400395f10 (patch) | |
tree | e7cd10c5a1040a8044aa65b29891416c7a59733d /Remote | |
parent | 62dc499541761d43f9938b34561bc93bb3f67e4e (diff) |
sync: support gcrypt4.20130909
Diffstat (limited to 'Remote')
-rw-r--r-- | Remote/Git.hs | 8 | ||||
-rw-r--r-- | Remote/List.hs | 7 |
2 files changed, 12 insertions, 3 deletions
diff --git a/Remote/Git.hs b/Remote/Git.hs index 149146616..795823ca6 100644 --- a/Remote/Git.hs +++ b/Remote/Git.hs @@ -125,6 +125,14 @@ gen r u c gc repoAvail :: Git.Repo -> Annex Bool repoAvail r | Git.repoIsHttp r = return True + | Git.GCrypt.isEncrypted r = do + g <- gitRepo + liftIO $ do + er <- Git.GCrypt.encryptedRepo g r + if Git.repoIsLocal er || Git.repoIsLocalUnknown er + then catchBoolIO $ + void (Git.Config.read er) >> return True + else return True | Git.repoIsUrl r = return True | Git.repoIsLocalUnknown r = return False | otherwise = liftIO $ catchBoolIO $ onLocal r $ return True diff --git a/Remote/List.hs b/Remote/List.hs index c106e9ad9..f38c1daaa 100644 --- a/Remote/List.hs +++ b/Remote/List.hs @@ -100,6 +100,7 @@ updateRemote remote = do Remote.Git.configRead r | otherwise = return r -{- Checks if a remote is a special remote -} -specialRemote :: Remote -> Bool -specialRemote r = remotetype r /= Remote.Git.remote +{- Checks if a remote is syncable using git. -} +syncableRemote :: Remote -> Bool +syncableRemote r = remotetype r `elem` + [ Remote.Git.remote, Remote.GCrypt.remote ] |