libaaruformat 1.0.0-alpha.32
See the version list below for details.
dotnet add package libaaruformat --version 1.0.0-alpha.32
NuGet\Install-Package libaaruformat -Version 1.0.0-alpha.32
<PackageReference Include="libaaruformat" Version="1.0.0-alpha.32" />
<PackageVersion Include="libaaruformat" Version="1.0.0-alpha.32" />
<PackageReference Include="libaaruformat" />
paket add libaaruformat --version 1.0.0-alpha.32
#r "nuget: libaaruformat, 1.0.0-alpha.32"
#:package libaaruformat@1.0.0-alpha.32
#addin nuget:?package=libaaruformat&version=1.0.0-alpha.32&prerelease
#tool nuget:?package=libaaruformat&version=1.0.0-alpha.32&prerelease
libaaruformat
C implementation of Aaru file format.
The target is to be able to compile it with a normal C (C89 compliant) compiler.
There are no external dependencies.
cmake is not a hard dependency, it's merely for the ease of using IDEs (specifically CLion).
Currently supported features:
- AaruFormat V1 images reading (writing will never be implemented)
- AaruFormat V2 images reading and writing
- LZMA compression
- Claunia Subchannel Transform
- Optical disc tracks
- XML metadata retrieval (writing will never be implemented)
- JSON metadata retrieval and writing
- Hashing while writing (MD5, SHA1, SHA256, SpamSum and BLAKE3)
- Deduplication
- Tape file and partitions
- Dump hardware lists
- Currently on sync (as of October 2025) with Aaru's media type list
- CHS geometry retrieval and setting
- Metadata
- Unit testing
- Automatic generation of API documentation
- It is to all effects feature parity with C#
Things still to be implemented that are already in the C# version:
- Automatic media type generation from C# enumeration
- Nuget package for linking with Aaru
Things to be implemented not in the C# version (maybe):
- Compile for Dreamcast (KallistiOS preferibly)
- Compile for PlayStation Portable
- Compile for Wii
- Compile for Wii U
- Compile for PlayStation 2
- Compile for PlayStation 3
- Snapshots
- Parent images
- Data positioning measurements
Building and Testing
Standard Build
mkdir build
cd build
cmake ..
cmake --build .
Running Tests
cd build
ctest --verbose
Building with Address Sanitizer
For debugging memory issues, you can build with Address Sanitizer enabled:
mkdir build-asan
cd build-asan
cmake -DUSE_ASAN=ON -DCMAKE_BUILD_TYPE=Debug ..
cmake --build .
ctest --verbose
For detailed information on using Address Sanitizer to detect memory issues, see docs/ASAN_USAGE.md.
Other Build Options
-DUSE_SLOG=ON- Enable slog logging for debugging-DUSE_ASAN=ON- Enable Address Sanitizer for memory error detection
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on libaaruformat:
| Package | Downloads |
|---|---|
|
Aaru.Images
Media image formats used by the Aaru Data Preservation Suite. |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on libaaruformat:
| Repository | Stars |
|---|---|
|
aaru-dps/Aaru
Aaru Data Preservation Suite
|
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-beta.2 | 208 | 10/8/2026 |
| 1.0.0-beta.1.2 | 224 | 9/2/2026 |
| 1.0.0-beta.1.1 | 1,049 | 7/31/2026 |
| 1.0.0-beta.1 | 264 | 7/14/2026 |
| 1.0.0-alpha.42 | 189 | 7/11/2026 |
| 1.0.0-alpha.41 | 818 | 4/12/2026 |
| 1.0.0-alpha.40 | 98 | 4/12/2026 |
| 1.0.0-alpha.39 | 84 | 4/12/2026 |
| 1.0.0-alpha.38 | 93 | 4/12/2026 |
| 1.0.0-alpha.37 | 102 | 4/12/2026 |
| 1.0.0-alpha.36 | 252 | 4/11/2026 |
| 1.0.0-alpha.35 | 383 | 3/25/2026 |
| 1.0.0-alpha.34 | 121 | 3/22/2026 |
| 1.0.0-alpha.33 | 134 | 3/18/2026 |
| 1.0.0-alpha.32 | 97 | 3/18/2026 |
| 1.0.0-alpha.31 | 149 | 3/17/2026 |
| 1.0.0-alpha.30 | 1,219 | 1/6/2026 |
| 1.0.0-alpha.29 | 106 | 1/6/2026 |
| 1.0.0-alpha.28 | 302 | 1/4/2026 |
| 1.0.0-alpha.27 | 150 | 12/31/2025 |