chandler 0.0.10

GNU tar normalizer
Documentation
# chandler: GNU tar normalizer

[![Docker Pulls](https://img.shields.io/docker/pulls/n4jm4/chandler)](https://hub.docker.com/r/n4jm4/chandler) [![GitHub Downloads](https://img.shields.io/github/downloads/mcandre/chandler/total?logo=github)](https://github.com/mcandre/chandler/releases) [![Crates.io Downloads (recent)](https://img.shields.io/crates/dr/chandler?label=crate%20downloads)](https://crates.io/crates/chandler) [![docs.rs](https://img.shields.io/docsrs/chandler)](https://docs.rs/chandler/latest/chandler/) [![Test](https://github.com/mcandre/chandler/actions/workflows/test.yml/badge.svg)](https://github.com/mcandre/chandler/actions/workflows/test.yml) [![license](https://img.shields.io/badge/license-BSD-3)](LICENSE.md)

![chandler](chandler.png)

# SUMMARY

chandler is a tool for software developers to normalize application tape archives (`*.TGZ`, `*.TAR.GZ` files).

# EXAMPLE

```console
$ cd example

$ tree -p hello-1.0.0
[drwxr-xr-x]  hello-1.0.0
├── [-rw-r--r--]  hello
├── [-rw-r--r--]  hello.bat
└── [-rw-r--r--]  README

1 directory, 3 files

$ chandler -czf hello-1.0.0.tgz hello-1.0.0
archived entries to hello-1.0.0.tgz

$ tar -tzvf hello-1.0.0.tgz
drwxr-xr-x  0 501    20          0 Nov 14 11:18 hello-1.0.0
-rw-r--r--  0 501    20        186 Nov 13 14:48 hello-1.0.0/README
-rwxr-xr-x  0 501    20         31 Nov 13 14:35 hello-1.0.0/hello
-rw-r--r--  0 501    20         22 Nov 13 14:34 hello-1.0.0/hello.bat
```

Above, chandler aligns target file metadata to industry standards, repairing glitches in source file metadata.

See [CONFIGURATION.md](CONFIGURATION.md) for configuration file options.

Run `chandler -h` for CLI options.

# ABOUT

chandler automates industry norms for file permissions, file exclusions, lexicographical sorting, file path normalization, and more.

Metadata is normalized as each entry enters the archive, regardless of the original file metadata. This smooths out common SDLC workflows, especially for multi-platform engineering teams.

# DOWNLOAD

```sh
curl -L https://raw.githubusercontent.com/mcandre/chandler/refs/heads/main/install-chandler | sh
```

## Postinstall

Ensure `$HOME/.local/bin` is registered with your shell's `PATH` environment variable.

## Uninstall

```sh
curl -L https://raw.githubusercontent.com/mcandre/chandler/refs/heads/main/uninstall-chandler | sh
```

## System Requirements

### Bitness

64

### Hosts

* FreeBSD (Intel)
* Illumos (Intel)
* Linux (ARM, Intel)
* macOS (ARM, Intel)
* NetBSD (Intel)
* Windows (ARM, Intel) via [WSL](https://learn.microsoft.com/en-us/windows/wsl/)

### Prerequisites

* [bash](https://www.gnu.org/software/bash/) 4+
* [curl](https://curl.se/)

For additional platforms and install methods, see our [install guide](INSTALL.md).

# WARNING

Not intended for use in backup sysetms. Rather, chandler is primarily designed to assist with preparing install media.

# SEE ALSO

* [factorio](https://github.com/mcandre/factorio)
* [crit](https://github.com/mcandre/crit)
* [linters](https://github.com/mcandre/linters)
* [rockhopper](https://github.com/mcandre/rockhopper)
* [tinyrick](https://github.com/mcandre/tinyrick)
* [todolint](https://github.com/mcandre/todolint)
* [tuggy](https://github.com/mcandre/tuggy)

📼