NanaZip
NanaZip copied to clipboard
List of formats planning to add support
Here are some formats planning to add support in NanaZip development stage. I think users will be happy if I can implement all of these. But I also need some help.
Note: You can give your suggestions about the new formats want to be added in NanaZip as comments for this issue. I will read that without replying in most cases.
- [ ] BTRFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/maharmstone/btrfs
- Note: WinBtrfs's author suggested me to reference the other two implementations will reduce the integration work.
- Implementation Reference: https://github.com/maharmstone/btrfs/blob/master/src/btrfs.h
- Implementation Reference: https://github.com/maharmstone/quibble/tree/master/src/btrfs
- Implementation Reference: https://github.com/maharmstone/btrfs
- [x] Electron Archive (asar) (Unpacking)
- Implementation Reference: https://github.com/electron/asar
- [x] .NET Single-file Publish binaries packing (Unpacking)
- Implementation Reference: https://github.com/dotnet/designs/blob/main/accepted/2020/single-file/bundler.md
- Implementation Reference: https://github.com/dotnet/designs/blob/main/accepted/2020/single-file/design_3_0.md#the-bundler
- [ ] REFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/libyal/libfsrefs
- Note: libfsrefs's author noted me that libfsrefs is work in progress, and currently mostly focussed on research of the format.
- Implementation Reference: https://github.com/libyal/libfsrefs
- [x] UFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/freebsd/freebsd-src/tree/main/sys/ufs
- [ ] WIM and ESD support with WIMGAPI backend (Packing and Unpacking)
- Implementation Reference: Cooperate with DISM++'s author, @mingkuang-Chuyu
- [ ] ZFS filesystem image (Unpacking)
- Implementation Reference: OpenZFS (looks too complex to integrate)
- Implementation Reference: ZFS On-Disk Specification (looks too complex to integrate)
- [ ] ZPAQ (Packing and Unpacking)
- Implementation Reference: https://github.com/zpaq/zpaq
- Implementation Reference: https://github.com/fcorbelli/zpaqfranz
- [ ] Some formats which not supported in NanaZip and not mentioned in this issue but mentioned in https://www.tc4shell.com/en/7zip
- Implementation Reference: Not Available (Need to research first)
- [ ] NXFFS (NuttX FLASH File System) filesystem image (Unpacking)
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/nxffs
- [x] ROMFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/romfs
- [ ] SMARTFS (NuttX SMART Flash File System) filesystem image (Unpacking)
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/smartfs
- [ ] CROMFS (Compressed Read-Only File System) filesystem image (Unpacking)
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/cromfs
- [ ] LITTLEFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/littlefs-project/littlefs
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/littlefs
- [ ] SPIFFS (SPI Flash File System) filesystem image (Unpacking)
- Implementation Reference: https://github.com/pellepl/spiffs
- Implementation Reference: https://github.com/apache/nuttx/tree/master/fs/spiffs
- [ ] MFS (Minix File System) filesystem image (Unpacking)
- Implementation Reference: https://github.com/Stichting-MINIX-Research-Foundation/minix/tree/master/minix/fs/mfs
- [ ] XFS filesystem image (Unpacking)
- Implementation Reference: https://www.dubeyko.com/development/FileSystems/xfs.html
- [ ] F2FS filesystem image (Unpacking)
- Implementation Reference: https://docs.kernel.org/filesystems/f2fs.html
- [ ] EROFS filesystem image (Unpacking)
- Implementation Reference: https://docs.kernel.org/filesystems/erofs.html
- [ ] exFAT filesystem image (Unpacking)
- Implementation Reference: Microsoft document
- [ ] BZIP3 (Packing and Unpacking)
- Implementation Reference: https://github.com/kspalaiologos/bzip3
- [ ] BCACHEFS filesystem image (Unpacking)
- Implementation Reference: https://bcachefs-docs.readthedocs.io/en/latest/ondiskformat.html
- [x] ZealFS filesystem image (Unpacking)
- Implementation Reference: https://github.com/Zeal8bit/ZealFS
Kenji Mouri
warc (ISO 28500:2017, wikipedia) is mentioned in tc4. It's also supported by libarchive (bsdtar), another "decompress anything" tool.
tc4 mentions a bunch of e-mail and usenet formats. these tend to be not too complex, but really ancient and hard to hunt down. having someone do it once and for all is of course great.
Now NanaZip can't unpack NSIS2020+ Package such as Unity Editor 2020+ Installer.
Unpacking&packing PRI is needed.
Unpack .unitypackage, NanaZip can't parse file path&name in zip
Unpack .resS,Implementation Reference:Perfare/AssetStudio
Apple seems to have cooked up a new format called aar and made it the default output for their OS right-click. https://eclecticlight.co/2022/05/10/inside-apple-archive-more-than-a-compression-format/
Thing is, nobody knows what's in the format beyond what Apple APIs to call. So a very good-to-support format, but impossible to support for now.
To follow
Any chance for this one to be supported?
https://github.com/FS-make-simple/paq9a
hmm, do people really use paq outside of compression challenges? It's even more niche than ZPAQ...
hmm, do people really use paq outside of compression challenges? It's even more niche than ZPAQ...
I've seen it do some extreme compression on these old psx iso roms -
https://archive.org/details/psxrip
- #159
- #181
- #182
- #178
- #190
- #223
Asar would be nice, indeed
I would like to request support for ZArchive (.ZAR/.WUA), here's a reference implementation. AFAICT it's just ZStd with a different container format...
With plugin in support i suggest the developer to release the source code these files I have read on some forums that contain malware
The thing about "some forums" is that you can say whatever you want on them. I am all for making things open-source, but developers are free to do whatever they want given the plugin API license, and being a clueless panicking person who hasn't heard of VirusTotal is surely not a very persuasive way to encourage open-sourcing.
@Artoria2e5, it's within their discretion to make their choices. However, I haven't personally used or tested their services; my knowledge is based solely on feedback from other users and sources.
Please don't add "advanced" filesystems (anything besides UDF/ISO9660/Juliet/Other-Optical-Formats, (ex)Fat(32), Maybe the ext file systems). Resist feature creep, stick to the core value of "archive opening utility"
Some formats which not supported in NanaZip and not mentioned in this issue but mentioned in https://www.tc4shell.com/en/7zip
It would be very useful to have extraction support for disk images from Iso7z, at least BIN/CUE and IMG.
Hi @MouriNaruto ,
I was wondering if plugin support is no longer being considered for NanaZip. If that's the case, will NanaZip continue to receive updates every time a new feature is requested by users? Just trying to understand the direction moving forward—what's the plan regarding this?
Thanks in advance!
@DevX-Cipher
For external plugin support, you should read https://github.com/M2Team/NanaZip/issues/563 first.
Kenji Mouri
Hi @MouriNaruto, I’ve created some plugins that might be useful if you're considering adding additional functionality directly into the NanaZip source code, without relying on an external plugin system. You're welcome to take a look and integrate them as you see fit: https://github.com/DevX-Cipher/7zip-plugin
I am also working on Xar archive for Windows as well
@AndromedaMelody It would be helpful to implement proper support for opening and interacting with MSI installers—not just displaying the internal tables. Presenting only the tables can be confusing or unhelpful for many users. A more intuitive or user-friendly approach to opening and inspecting MSI files would greatly improve usability.
Any chance for this one to be supported?
https://github.com/FS-make-simple/paq9a
@MxMaster3 this would be ideal as a plugin
@MouriNaruto I have implemented pyinstaller archives in the source code I will make a pull request tomorrow please keep an eye out for it
I would like to request (for the future, not high priority of course) support for extracting files from Inno Setup installer, NSIS is already supported and these are probably the most common installer types today.
For reference: jrsoftware/issrc, dscharrer/innoextract, InnoExtractor.
@manfromarce I was working on a plugin for this. I have made plenty of plugins for 7zip
@MouriNaruto I have made a ExFat plugin here https://github.com/DevX-Cipher/7zip-plugin/tree/main/CPP/7zip/Archive/Exfat