After a couple of apparently trouble-free beta-releases, I’m pleased to announce the first full version of my simple utility which uses AppleArchive to compress and decompress files: Cormorant 1.0.
AppleArchive is only supported on Big Sur, so I’m afraid that Cormorant does require macOS 11 to run. It uses Apple’s proprietary compression technique LZFSE, which is claimed to be both blazingly fast and efficient for general use. For those wanting to compare its performance between different architectures and models, Cormorant tells you how long it took to perform each compression and decompression.
To get an idea of how AppleArchive performs, I’ve run eight test files/folders many times, both on my iMac Pro and two shiny new M1 Macs. Overall, there’s little difference in their performance, with the M1 usually being slightly quicker to compress, but the iMac Pro slightly quicker to decompress my test samples. Compression and decompression of even relatively small files took no less than 0.27 seconds on either system. Decompression generally takes half the time required for compression.
Best throughputs were obtained on my M1 MacBook Pro, at 0.87 GB/s compressing and 2.97 GB/s decompressing. Compression ratios varied widely, as many of the test files already contained components which were compressed, but the best observed was 44% on an app.
Cormorant currently compresses and decompresses folders, apps and individual files. It tells them apart by its standard file extensions: when you compress a single file, it becomes an .lzfse archive, while a folder or app becomes an .aar. The latter is a standard supported by the command tool
aa (available in Big Sur), and Apple’s bundled Archive Utility (which doesn’t yet support compression).
New for this release version of Cormorant are:
- a brief Help document,
- built-in code integrity checking,
- auto-update, using the same system as my other apps,
- support for compressing and decompressing apps.
Cormorant is intended particularly for use with AirDrop of large and complex apps such as Xcode. By compressing them into a single archive file, they transfer much more quickly. It also works around a common problem with AirDrop: the fact that files transferred have a quarantine flag attached to them when they arrive on the other Mac. Unlike some other utilities, decompressing a quarantined archive using Cormorant doesn’t propagate quarantine to its decompressed contents. This makes it ideal for copying apps around, as they don’t then have to pass through the full Gatekeeper checks when they’re first run on the receiving Mac.
It has two rough edges at present: first, although it will happily compress any bundle, such as Photos libraries, they must first be placed inside a normal folder, otherwise Cormorant is fooled into thinking that they’re just a file. It does handle apps correctly, though. The other is that it currently doesn’t support drag and drop, which I will also fix in a future version.