Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How are the 7z files being generated? #418

Closed
coolaj86 opened this issue Oct 13, 2020 · 4 comments
Closed

How are the 7z files being generated? #418

coolaj86 opened this issue Oct 13, 2020 · 4 comments

Comments

@coolaj86
Copy link

coolaj86 commented Oct 13, 2020

I've been on the lookout for some way to uncompress the 7z files with command line tools that work reliably cross-platform and there are, literally... none.

However, there is someone who is trying to provide a solution: selmf/unarr#12

Unfortunately it appears that the 7z files that are being uploaded are not "standards" compliant files.

  • What software are you using to generate them?
  • On what OS / architecture?
  • And what checkboxes (or CLI flags) are used?

With that info it may be possible to get support for swiss in open source 7z unarchivers.

cc/ #238

@Extrems
Copy link
Collaborator

Extrems commented Oct 13, 2020

  • p7zip
  • Arch Linux / x86-64

@coolaj86
Copy link
Author

coolaj86 commented Oct 14, 2020

Were you even looking?

Yes, I'm looking for something that is cross-platform and easy to install and use in a scripted or automated fashion.

For example, Windows 10 comes with tar.exe. As does Mac and Linux. You can always count on tar to exist. If you could get to the command line of an Apple watch or a smart toaster, it's probably there too.

As for modern tools that aren't built-in, you've got things like arc, which is cross-platform and handles tar, xz, zip, lzma, and even rar. Anyone can download and use it, on any platform. 0 complexity. Anyone can write an install script for it on any platform, or bundle it in their own tooling or application without affecting the user's system in any negative way.

At the point that you have to run a hacked-together linux subsystem (MSYS2) or a 320mb+ package manager with loads of non-native libraries (brew), you're no longer in the realm of "cross platform". (in fact, p7zip isn't even an official 7zip project, and all of the builds are listed as "unofficial").

7zip / p7zip does NOT have

  • releases API
  • ready-to-use Mac builds
  • Windows CommandLine builds (or at least the website installer doesn't)
  • portable programming implementations

7z is virtually UNSUPPORTED in ANY mainstream archive library or programming language

I get that for you it's acceptable to have this kind of tooling, but I'm asking you to think outside of yourself:

Most people aren't the kind of people who can reverse engineer a GameCube bootloader, or even the people who use a DIY linux like Arch (when even an easy linux is already very DIY) - so from your perspective I can see how you might thing that 7z tools are easy to install and use, and back in the 90s and 00s when IT and programming were much more complicated, perhaps they were. But in the world of 2020 where modern, maintained projects have release APIs and self-contained static cross-platform builds... it's not. It's complex and annoying and nearly impossible to build tooling around.

As grateful as I am that you are doing very difficult things that most people would find impossible (Swiss is AMAZING), I don't understand why you wouldn't make it even more accessible and developer and user friendly by publishing it in a format that is easy to consume.

@Extrems
Copy link
Collaborator

Extrems commented Oct 14, 2020

7z is bundled with regular 7-Zip for Windows. This is a port of that application after all.
I've never used macOS, so I can't comment on the matter.

7-Zip is no problem to non-Mac users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants