Support creating v1.0 ZIP archives (was unzip does not retain permissions)

I have found a problem with zips created by some programs (not exactly sure, maybe winrar). Where they have a compatibility level/featureset of zip 2.0 (seen with the file command). Setting permissions with plus-x works perfectly, however, MOST linux extractors will not extract these permissions correctly. Specifically, unzip will fail to extract permissions (and all libraries that rely on it). The only one I could get to extract the permissions correctly was 7zip with 7z x [zipfile]

Example zip with this issue: https://cdn.thunderstore.io/live/repository/packages/denikson-BepInExPack_Valheim-5.4.800.zip

How to reproduce:

  1. Download this zip file
  2. Using plus-x mark any of the files as executable
  3. Extract using unzip and note that none of those executable marked files stayed that way
  4. Extract using 7z and note that the executable files did stay that way.

This does not seem like a bug in plus-x, but would it be possible, none-the-less to add a workaround for this? I am not a technical person and don't really understand how zips work or how to go about fixing it but it would be useful.

Edited by Cheeseness