CONFIGURATION
November 24, 2025 ยท View on GitHub
chandler loads an optional chandler.toml file in the current working directory.
Example
# verbose = true
# header.type = "UStar"
# cwd = "..."
# skip_paths = [
# ".DS_Store",
# "Thumbs.db",
# ]
# [[rules]]
# permissions = 0o755
#
# [[rules]]
# when.mode.type = "File"
# when.paths = "(?i)^aliases|(ba|(m)?k|z)shrc|(bsd|gnu)?makefile|changelog|exports|fstab|license|readme|group|hosts|issue|mime|modules|profile|protocols|resolv|services|t(e)?mp|zshenv|((.*/)?etc/.+)$"
# permissions = 0o644
#
# [[rules]]
# when.mode.type = "File"
# when.paths = "^(.*/)*[^/]*\\.[^/]*$"
# permissions = 0o644
#
# [[rules]]
# when.paths = "^(.*/)?etc/init\\.d(/.*)?$"
# permissions = 0o755
verbose
Default: false.
When true, enables additional logging.
header.type
Default: UStar.
Controls the inner TAR format.
Supported TAR formats:
UStar- Modern, POSIX compliant tarballsGnu- Classical, GNU tarballsTarV7- Vintage tarballs
cwd
Default: The working directory of the shell that invokes chandler.
When customized, chandler adjusts its current working directory to some given location. This helps, for example, to build clean tarballs when the original files are nested within a larger project directory.
Note that it is often good practice to preserve a parent top level directory for each tarball entry, so that the files don't explode to interleave with user files, when the archive expands.
skip_paths
Default:
[
".DS_Store",
"Thumbs.db",
]
skip_paths collects Rust regex patterns for excluding entries from archival.
rules
Default:
- Assume
chmod 0755permissions by default. - Apply
chmod 0644permissions for common, nonexecutable files. - Apply
chmod 0644permissions for filenames that include a file extension. - Apply
chmod 0755permissions for legacy SysVinit files.
Rules define behaviors for archive metadata, such as tuning chown and chmod permissions.
For more information on rules, see Rules.