Error parsing index -> End Of Central Directory signature not found

Since a couple of days I get this error when trying to update F-Droid main repo


I tried deleting F-Droid and reinstalling, 1.8 and 1.7.1, but the error persists.
I know close to nothing about Android, so if you need logs please tell me how to get them :smiley:

Device? Android version? Fails on both Wi-Fi and mobile data?

An old ZenFone A450CG (Intel CPU)
Android 5.0
Both Wi-Fi and mobile

This is the best I was able to get on my own, with a thing called Logcat Reader (installed manually):

[07-01 11:27:10.787 12621:12979 E/UpdateService]
Error updating repository https://f-droid.org/repo

[07-01 11:27:10.787 12621:12979 W/System.err]
org.fdroid.fdroid.IndexUpdater$UpdateException: Error parsing index

[07-01 11:27:10.787 12621:12979 W/System.err]
	at org.fdroid.fdroid.IndexUpdater.processDownloadedFile(IndexUpdater.java:243)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at org.fdroid.fdroid.IndexUpdater.update(IndexUpdater.java:169)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at org.fdroid.fdroid.UpdateService.onHandleWork(UpdateService.java:479)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at android.support.v4.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:391)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at android.support.v4.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:382)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at android.os.AsyncTask$2.call(AsyncTask.java:288)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)

[07-01 11:27:10.787 12621:12979 W/System.err]
	at java.lang.Thread.run(Thread.java:818)

[07-01 11:27:10.787 12621:12979 W/System.err]
Caused by: java.util.zip.ZipException: End Of Central Directory signature not found

[07-01 11:27:10.797 12621:12979 W/System.err]
	at java.util.zip.ZipFile.readCentralDir(ZipFile.java:401)

[07-01 11:27:10.797 12621:12979 W/System.err]
	at java.util.zip.ZipFile.<init>(ZipFile.java:163)

[07-01 11:27:10.797 12621:12979 W/System.err]
	at java.util.jar.JarFile.<init>(JarFile.java:199)

[07-01 11:27:10.797 12621:12979 W/System.err]
	at java.util.jar.JarFile.<init>(JarFile.java:182)

[07-01 11:27:10.797 12621:12979 W/System.err]
	at org.fdroid.fdroid.IndexUpdater.processDownloadedFile(IndexUpdater.java:216)

[07-01 11:27:10.797 12621:12979 W/System.err]
	... 9 more

[07-01 11:27:10.797 12621:12979 I/UpdateService]
Updating repo(s) complete, took 2 seconds to complete.

The official Guardian Project repo (shipped with F-Droid app) works fine.

Sorry for the multiple posts, I’m trying to narrow this down a bit at a time as things come to my mind.

@hans Thoughts?

@Shiba What version is the log from? 1.8?

Yes, 1.8. Trying 1.7.1 was a very long shot just to be 100% sure.

So, according to the logs a zip library is throwing an exception. Assuming the repo index is provided in a zip file, did something change very recently in how F-Droid makes zip?

What I’m thinking about is that if something did, maybe that library on my device (is it installed systemwide and not provided by F-Droid apk?) is very old and can’t handle the new method.

Are there direct links to indexes of both F-Droid and Guardian Project? Just to compare them out of curiosity, I dunno how much I’ll actually be able to understand.

Android 5.0 was super buggy, that’s my first thought. Any other version is much better, even older versions. Does this happen on any other Android version?

Asking my friends with newer versions, it seems I’m the only one with this problem (although I’ve yet to receive a clear answer from someone with Android 5.1). Yes 5.0 was very bad, unfortunately it’s not up to me to decide which version I run (:sad_face:)

Browsing the repo I found some alternatives to the official F-Droid client: G-Droid simply crashes, so… whatever ¯_ (ツ) _/¯
The recently released Foxy Droid however is able to sync and so far seems to work fine. I’m not sure what to think, but it’s better than nothing I guess :smiley: