Show HN: 789-Zip – A native macOS app for 7-Zip
github.com
github.com
Edit: wow, I looked at the repo and there is no source, just points at a release download. I would call that straight up abuse of GitHub.
I also have another open source repo with several releases at ~40MB per release.
If the repo starts to get really large, then yes, I should host it somewhere else. But, putting it into perspective, I just released an initial MVP, and the repo size is less than 5MB in total.
This is really inflammatory. GitHub explicitly allows publishing release artifacts without source - if GitHub considered this abuse they could make it so compilation had to occur as a github action such that the artifact is guaranteed to be compiled from the source as it exists within the repo. As it is users can push any old binary up and claim that it was built with the code in the repo.
https://docs.github.com/en/repositories/releasing-projects-o...
If the repo is public, it's highly suspicious that you're serving malware. Even if not, it doesn't match a sensible git workflow. You wouldn't run a private repo with a README and no source code with some binary links. That's not a sensible way to do any project, open or not.
edit: Just found MacZip as another nice alternative that does it all. Would wish I could look at the code for security purposes.
Think more MacOS style would also instead of having that weird modal toggle at the top between creating and opening just have dragging to the dock icon or File>Open opens one, and File>New creates a blank one.
The toggle is actually a native SwiftUI Picker in the toolbar. Adding command options and dragging and dropping on the dock icon is on the roadmap!
> I initially designed those buttons to be familiar for users coming over from Windows
I'd suggest leaning more into MacOS as they're on MacOS so they wanna use things that feel like MacOS right? The default MacOS toolbar controls work and look really nice.
789-Zip will be able to create multiple types of formats and will also allow editing (renaming, adding in files one by one, renaming, moving, and deleting) within the Finder view.
Check out their acceptable use policy, they are concerned with worse evils than proprietary software: https://docs.github.com/en/site-policy/acceptable-use-polici...
Does it or will it support zstd?
"in the final comparison, ZStandard beat ZLib in every way. At the same compression ratio, it compresses three to five times faster .at the same compression speed, it results in files that are 10 to 15% smaller. And besides all this, it can decompress twice as fast regardless of compression speed. The only thing even close to ZStandard is Brotli from Google."
On the decompression side ZSTD is absolutely blazing in comparison to LZMA. Decompression requirements also don't scale based in compression settings (i.e. doing some ultra super duper compression of a big file places no more memory requirement on the client doing the decompression later).
In short, ZSTD is great because it can be your reliable go-to regardless of your particularly use case. For more detail check out https://gregoryszorc.com/blog/2017/03/07/better-compression-...
What UI framework are you using? The headline says native, but the toolbar looks unusual for a Mac app.
I really liked the animated transition into a list after you dropped the zip file!
I'm using SwiftUI + AppKit in XCode to make the app. The toolbar is just a row of big native buttons :D. I initially designed it to be familiar to Windows users & 7-Zip. But, after actually playing with 7-Zip recently, I think it can be unintuitive at times (ex. the extract/copy/move buttons can all unarchive and the button to create an archive is labeled "Add"), so I plan to modify it. I'm also planning on adding customization options to move these buttons to the native macOS toolbar so it can fit in better with the macOS design langauge.
Thanks I spent quite some time playing around with that animation! It is also fully coded in SwiftUI.
GitHub allows private repos, proprietary licenses, and releases explicitly allow publishing a binary, so, why not use github? it's free.
I think the easiest to follow explanation of the requirements for this case is https://softwareengineering.stackexchange.com/a/86146/332347
Native can mean many things, like "not a web-app".
I'm also going to be adding features to update the archive so you can just drag and drop new files into the archive in addition to renaming files and moving them around inside of the archive (and deleting files).