hascar: Decompress SAPCAR archives

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


Decompressor command line utility and library for SAP's SAPCAR format.

[Skip to ReadMe]


Change logchangelog.md
Dependenciesansi-wl-pprint, array, base (>=4.7 && <5), binary, bytestring, conduit, containers, directory, exceptions, filepath, gitrev, hascar, mtl, optparse-applicative, path, text, time, transformers, unix [details]
Copyright2016-2018, Virtual Forge GmbH
AuthorHans-Christian Esperer <hc@hcesperer.org>
MaintainerHans-Christian Esperer <hc@hcesperer.org>
Home pagehttps://github.com/VirtualForgeGmbH/hascar
Source repositoryhead: git clone https://github.com/VirtualForgeGmbH/hascar.git
UploadedWed Jan 31 16:58:34 UTC 2018 by hc




Maintainers' corner

For package maintainers and hackage trustees

Readme for hascar-

[back to package description]

Build Status

What is hascar?

HASCAR is a free unzip utility for SAP's SAPCAR format. You can use it to decompress sap car files on the command line. The command line utility also supports unwrapping of transport files that are contained inside patch files. (Option -p, --depat) You can also use it as a library in your own haskell programs. So far, only the latest version of sapcar files are is supported, which is 2.01.

It is implemented 100% in haskell, including the lzh decompression routine.

This is not yet in a stable state. It should successfully unpack lzh compressed files and uncompressed files.

The SAPCAR container format decoder is based on research done by Martin Gallo with further investigation by Hans-Christian Esperer hc@hcesperer.org, who also did the LZH decompressor reimplementation.

What is supported:


Installing hascar


Users of nixos can simply install hascar by issuing "nix-env -iaP haskellPackages.hascar". Or if you only need it temporarily, open a nix-shell like this: "nix-shell -p haskellPackages.hascar"

FreeBSD/GNU_Linux/OS X/Windows

To compile and install, first [get stack]( http://docs.haskellstack.org/en/stable/README/), then issue:

stack build && stack install

hascar will be installed to ~/.local/bin . You should set your PATH variable to point to this directory.

Verifying signatures and encrypted archives

Since both use a proprietary crypto API, this is currently not supported.


Run hascar with the -h flag to get help. The basic usage should be the same as with SAP(R)'s sapcar tool. It should be noted that the used command line parser is a bit more strict than what you might be used to.

Extracting transport files from PAT files

SAR files can contain transport files that are wrapped inside PAT (patch) files. Since hascar the option -p is offered, that will try to automatically detect PAT files. If such a file is detected, the contained transport file is extracted. In verbose mode, this is denoted by a 'P' next to the filename instead of an 'x'.