This Go language package will enable reading and writing of xz-compressed files and streams. The complete package will be written in Go and will not use any existing C library.
The package is currently under development. Don't expect the code to work for you or the APIs to be stable.
Package xz/lzma has now working support for "classic" lzma files. A lzmago binary supporting the typical flags for a UNIX compression command is provided.
To test it call the following command.
$ lzmago bigfile
After some time a much smaller file bigfile.lzma will replace bigfile. To decompress it use the following command.
$ lzmago -d bigfile.lzma
Be warned at this time the code cannot compete with the lzma binary from the xz tools. The algorithms in those tools have been developed over a long time and are highly optimized. But the lzmago tool happily decompresses files generated by lzma and lzma has no problems with files created by lzmago.