Skip to main content

Package for handling Mozilla Archive files.

Project description

Package for handling Mozilla Archive files. MAR file format is documented at https://wiki.mozilla.org/Software_Update:MAR

  • Free software: MPL 2.0 license

Usage

To list the contents of a mar:

mar -t complete.mar

To list the contents of a mar with extra detail:

mar -T complete.mar

To extract a mar:

mar -x complete.mar

To extract, and uncompress a bz2 compressed mar:

mar -j -x complete.mar

To verify a mar:

mar -k :mozilla-nightly -v complete.mar

To create a mar, using bz2 compression:

mar -j -c complete.mar *

To create a mar, using xz compression:

mar -J -c complete.mar *

To create a signed mar:

mar -J -c complete.mar -k private.key -H nightly -V 123 tests

Installation

pip install mar

Documentation

https://mar.readthedocs.io/en/latest/

Development

To run the all tests run:

tox

Changelog

3.2.0 (2022-09-01)

  • Dropped python3.6 support

  • Added python3.9 and python3.10 support

  • Fixed file descriptor leaks

3.1.0 (2019-02-19)

  • Added new autograph stage public key

  • Dropped python3.5 support

3.0.0 (2018-09-06)

  • Support extracting mar hash for external signing, and injecting signatures into unsigned files.

  • File modes are set on extraction

  • mar -v can now verify that unsigned mar files are well formed

  • Added helper productinfo property to MarReader to allow convenient access to the product information information

  • Internal signing API changed: * Got rid of Verifier/Signer classes

  • Internal API for the mar format changed: * offets added for the beginning and end of signature and additional blocks * correctly represent additional section padding

  • Support MAR files without additional sections

2.3.0 (2018-07-23)

  • Remove deprecated usage of signature generation and verification in cryptography library. This changes the type of object returned by the make_signer and make_verifier functions.

2.2.3 (2018-01-18)

  • Update dependencies; dependencies are now also pinned in setup.py

  • Correct the key size in exception messages

  • Fix for construct 2.8.22 and higher

  • Fix for hypothesis 3.44.16

2.2.2 (2017-07-06)

  • Fix bug when writing MAR files: the index size was incorrect

  • Support writing interable streams

  • Add new Mozilla SHA384 public keys

2.2.1 (2017-08-23)

  • Output compression and signature type

2.1.0 (2017-06-28)

  • Implement XZ compression

2.0.0 (2017-01-12)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mar-3.2.0.tar.gz (65.3 kB view hashes)

Uploaded Source

Built Distribution

mar-3.2.0-py2.py3-none-any.whl (30.7 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page