xar
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/xar package

    1.1.1 • Public • Published

    xar

    NPM js-standard-style

    This is a very basic/alpha version of a JS Mac OSX xar implementation.

    Pack a directory like:

    var xar = require('xar')
    xar.pack(dir, {compresssion: 'gzip'}).pipe(process.stdout)

    Compression formats supported: none, gzip Default is gzip

    Unpack a directory like:

    var fs =require('fs')
     
    xar.unpack(data, function (err, file, content) {
      if (err) return console.error(err)
      if (file.type[0] === 'directory') {
        fs.mkdirSync(file.path)
      } else {
        fs.writeFileSync(file.path, content)
      }
    })

    xar.pack(dir)

    returns a readable stream

    It is not possible to create the archive in a streaming fashion though, since it has a TOC in the beginning. The file is constructed in a tmp file, which is then streamed to you.

    xar.unpack(buffer, cb)

    callback called for each file with (err, file, content)

    file is the parsed header from the TOC

    Note that this is mainly made for testing the pack function, if someone wants to improve it, feel free to create a PR!

    Keywords

    Install

    npm i xar

    DownloadsWeekly Downloads

    205

    Version

    1.1.1

    License

    ISC

    Last publish

    Collaborators

    • finnpauls