MAR
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.
Mozilla MAR Preview.
At a glance
| Purpose | A Mozilla archive: the signed container of Firefox and Thunderbird updates. |
| Extensions | .mar |
| Poka parser | poka-mar |
| 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-mar/src/main.rs (636 lines) and plugin.json. Seven unit tests and the_corpus_mar_states_its_entry_count over multiple_file.mar, checked against figures read separately. Covers .mar. The tree reads the header, signature block and additional sections (product and channel), and lists every index entry as a file tree with sizes and totals. Judgement: B4: the archive is listed but no member is extracted or shown.
What Poka does not read
- Entry contents (bzip2- or xz-compressed update files) are not extracted or shown
- Signatures are detected, not verified
- Caps of 1,000 entries and 3,000 nodes
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- mar (Mossop) (candidate; MPL-2.0; Rust; https://lib.rs/crates/mar) — Lists and extracts MAR contents; creating and signing not supported. Latest 0.2.0 (Aug 2022). Repo: github.com/mossop/mar.
- mar (build-mar) (candidate; MPL-2.0; Python; https://pypi.org/project/mar/) — Mozilla release engineering package to list, extract, verify and create MAR files; v3.2.1.
- Kaitai Struct mozilla_mar spec (candidate; CC0-1.0; unknown; https://formats.kaitai.io/mozilla_mar/rust.html) — language: Rust, Java, Python, C#, C++, PHP, Lua, Perl; Declarative format spec compiled to parsers; CC0-1.0 is shown on the page (exact scope not stated). Read-only structure parsing.
Sources
- parsers/poka-mar/src/main.rs
- parsers/poka-mar/plugin.json