Dar bindings.

The DAR application suite is based on the Libdar library. Libdar is the standard implementation of the dar archive format. These wrapper libraries provide bindings to other languages for libdar.

Currently, I am writing a C binding. From the C binding, I will write a C# binding. Other libraries can be made from these as desired. If you would like to contribute to these or other bindings, please contact me or send a message to the darbinding-devel mailing list.

Python binding.

The Python bindings for libdar are developed using swig. The Python binding, called dar-python, is mostly feature complete and is well documented using pydocs.

Unlike libdarc, dar-python is developed as a patch against the DAR Suite sources. The current version, 0.1, targets DAR Suite 2.4.0_dev in CVS. The patch should also work with DAR Suite 2.3.0.

The most recent release is dar-python 0.1. It is available as both a source tarball and a patch on the project site.

C binding.

Because it is much easier to make bindings from C libraries, I have decided to start with this. The C binding, called libdarc, is fully implemented and documented.

The binding currently targets libdar 3.0.0. The libdarc release numbers do not match those of Libdar and it will be common for a single libdarc API to map to several libdar major API releases. The interface should be API and ABI compatible for as long as possible.

When building the library, you will need to have the DAR Suite installed. Because it directly links against libdar, the libdarc wrapper will have the same feature set as the original library. Libdarc can be built as a dependant library or it can be built in "combined library" mode, where libdar will be statically linked to libdarc. When compiled in such a way it is possible to use libdarc without the DAR Suite. It will still be necessary to have libraries such as zlib and libbzip2 available.

The most recent release is Libdarc 0.1. Sources can be found on the project site.

To see the API documentation for libdarc, look here.

C# binding.

I have currently not begun work on the C# binding.