Skip to main content

Legacy & niche formats

Purrchiver detects but doesn’t extract these formats. They fall into two buckets — legacy Mac/Windows formats from an earlier era (ACE, BinHex, MacBinary) and niche Linux/scientific compressors (LZO, LRZIP, grzip) where the maintained reader is a command-line tool. This page explains why and what to use instead.

ACE archives (.ace)

ACE was a proprietary Windows archive format from WinAce Software in the late 1990s. The format is undocumented, and the only OSS readers that exist are reverse-engineered. ACE has a documented history as a malware vector — CVE-2018-20250 in WinACE’s unacev2.dll led to widespread WinRAR exploitation because WinRAR bundled the same vulnerable library.

If you need to extract a legacy ACE file: install WinACE on a Windows machine (or a Windows VM). There’s no maintained Mac path; Purrchiver doesn’t ship a partial extractor because the attack surface isn’t worth it.

BinHex (.hqx)

BinHex 4.0 is a Macintosh text-encoded file wrapper from the 1990s. It encodes Mac files (with their classic Mac resource-fork + Finder metadata) as 7-bit ASCII text so they could be sent over email and bulletin-board systems that didn’t support binary attachments. Almost always paired with .sit StuffIt archives in downloads from the era.

If you need to decode a .hqx file: use The Unarchiver (free, Mac App Store) — it’s the only modern Mac tool that still handles BinHex. After decoding, you’ll usually get a StuffIt archive, which The Unarchiver also handles (see also the StuffIt help topic for context).

MacBinary (.macbin, .bin)

MacBinary is the binary cousin of BinHex — same goal (preserve Mac-specific file metadata for transport over non-Mac systems), different encoding (raw bytes instead of ASCII). Files come with either .macbin or the more ambiguous .bin extension. Purrchiver only claims the .macbin variant for detection because .bin means too many different things on a modern Mac.

If you need to extract a .macbin file: The Unarchiver again. Same demographic as BinHex and StuffIt — Mac users dealing with archival or legacy downloads.

LZO (.lzo)

LZO is a fast, low-ratio compressor used in Linux kernel images, embedded systems, and some scientific data pipelines. The reference library (liblzo2) is GPL-2, which means vendoring it into a Mac App Store binary brings licensing friction we don’t want to take on for a niche format.

If you need to extract a .lzo file: install the lzop CLI via Homebrew (brew install lzop) and run lzop -d filename.lzo. Output writes to the same directory with the .lzo extension stripped.

Long Range ZIP (.lrz)

LRZIP is a compressor designed for very large files (multi-GB backups, scientific datasets) where its long-range redundancy detection produces dramatically smaller archives than gzip / xz. The C library is GPL-2 with the same MAS-friction we hit on LZO.

If you need to extract a .lrz file: Keka (free on the Mac App Store) bundles the lrzip CLI under its own co-signed binary and handles .lrz files. Or install the CLI directly via Homebrew (brew install lrzip) and run lrzip -d filename.lrz.

grzip (.grz)

grzip is a Burrows-Wheeler-transform-based compressor — niche scientific / experimental tooling, never widely adopted outside a narrow Linux community. No maintained GUI front-end exists on any platform.

If you need to extract a .grz file: install the grzip CLI and run grzip -d filename.grz. The format is rare enough that hitting one outside a specific research workflow is unusual; if you’re not sure what produced the file, double-check whether it might actually be a more common format with a typo’d extension.

Why not just ship support?

The Mac/Windows legacy trio (ACE, BinHex, MacBinary) live in XADMaster (The Unarchiver’s engine) — LGPL-2.1 Objective-C, last meaningful upstream commits 5+ years ago, covering dozens of obsolete formats we don’t need. Adopting it would mean shipping an unmaintained codebase at the bottom of our stack for an audience of single-digit percent of v1.0 users.

The Linux compressor trio (LZO, LRZIP, grzip) all have GPL-2 helper libraries. Shipping GPL-2 binaries on the Mac App Store is navigable (Keka does it for lrzip) but requires bundled-CLI plumbing, license-screen work, and source-availability hosting that’s its own focused workstream — not a freebie tacked onto the v1.0 list. We may revisit lrzip specifically in a future release based on user demand.