Natalia Portillo 12a4d684f5 Add support for various ZIP compression methods
- Implement Deflate64 decompression in zip/deflate64.h and zip/deflate64.c.
- Add ZIP Implode decompression functionality in zip/implode.h and zip/implode.c.
- Introduce ZIP Reduce decompression in zip/reduce.h and zip/reduce.c.
- Implement ZIP Shrink decompression in zip/shrink.h and zip/shrink.c.
- Create a unified ZIP interface in zip/zip.h and zip/zip.c to handle multiple compression methods including PPMd, WavPack, and WinZip JPEG.
- Ensure all new functions adhere to the Aaru Data Preservation Suite licensing and documentation standards.
2026-04-15 00:52:22 +01:00
2024-12-19 15:24:07 +00:00
2025-12-23 08:21:08 +00:00
2025-12-23 08:21:08 +00:00
2025-12-23 08:21:08 +00:00
2024-12-19 15:24:27 +00:00
2025-12-26 14:09:26 +01:00
2024-04-30 15:37:29 +01:00
2024-04-30 15:37:29 +01:00
2025-12-23 08:21:08 +00:00
2025-12-23 08:21:08 +00:00
2025-08-23 21:55:21 +01:00
2024-04-30 15:37:29 +01:00
2021-10-14 04:44:34 +01:00
2025-12-23 08:21:08 +00:00
2025-12-26 14:09:26 +01:00

Aaru.Compression.Native

This repository contains the Aaru.Compression.Native library for Aaru.

The purpose of this library is to provide compression and de-compression algorithms for Aaru.

No archiver processing code should fall here, those go in Aaru.Compression.

To build you just need Docker on Linux and run build.sh, that will generate a NuGet package for use with Aaru.Compression.

Currently implemented algorithms are:

  • Apple Data Compression (RLE with sliding dictionary created for Apple Disk Copy's NDIF)
  • Apple RLE (Run Length Encoding created for Apple DART)
  • BZIP2
  • FLAC
  • LZ4
  • LZFSE
  • LZIP
  • LZMA
  • Zstandard

Each of these algorithms have a corresponding license, that can be found in their corresponding folder.

The resulting output of build.sh falls under the LGPL 2.1 license as stated in the LICENSE file.

Any new algorithm added should be under a license compatible with the LGPL 2.1 license to be accepted.

© 2021-2026 Natalia Portillo

Description
C library of compression algorithms used by Aaru.
Readme LGPL-2.1 36 MiB
Languages
C 93.9%
C++ 4.8%
CMake 0.8%
Shell 0.5%