poka.sh

Docs

XAR

Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.

XAR Archive Preview.

At a glance

Purpose An eXtensible ARchive (XAR), the container of macOS installer packages: a zlib-compressed XML table of contents and a data heap.
Extensions .xar
Poka parser poka-xar
Viewer poka-tree-viewer
Depth tier Parser with a shared viewer (see Depth tiers)
Breadth tier B4 Summary (see Breadth tiers)

How much Poka reads

B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.

Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-26: read parsers/poka-xar/src/main.rs (695 lines) and plugin.json. Six unit tests, the_corpus_xar_states_its_entries_and_declared_size (checked against figures read separately) and corpus_xars_have_no_integrity_findings over sample.xar. Covers .xar and .xip. The tree reads the header (version, TOC sizes, checksum algorithm), inflates the table of contents and walks the nested file elements into a file tree with sizes, with totals. Judgement: B4: the archive is listed but no member is extracted or shown.

What Poka does not read

  • File contents in the heap are not extracted or shown
  • Checksums are named, not verified; the signature (if any) is not read
  • For macOS packages, Distribution, PackageInfo, Bom and scripts are listed as files, not decoded
  • Extended attributes, owners and modes in the TOC are not shown
  • Caps of 2,000 files and 3,000 nodes

Libraries

Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.

  • flate2 (used; MIT OR Apache-2.0; Rust)
  • roxmltree (used; MIT OR Apache-2.0; Rust)
  • apple-xar (candidate; MPL-2.0; Rust; https://www.lib.rs/crates/apple-xar) — Reads and writes Apple-flavoured XAR; part of indygreg/apple-platform-rs. Version 0.20.0 (29 November 2024) seen.
  • zar (candidate; MIT; Rust; https://docs.rs/zar) — XAR reader/writer fuzz-tested against macOS xar; supports signing and verification. Repository: igankevich/zar.

Sources

  • parsers/poka-xar/src/main.rs
  • parsers/poka-xar/plugin.json