Best practices
Start lossless, measure first
- Run
filerepack doctorafter install so missing binaries are obvious. - Use
--dryrun(and--stats) on a sample before rewriting a tree. - Keep JPEG/PNG/PDF lossless unless you explicitly want
--lossyor a quality flag. - Do not pass
--allow-growunless you are debugging a packer.
Nested files and Office
- Leave
--deepon so images and XML inside.docx/.xlsx/ ZIP are packed. - Install Info-ZIP
zipfor OOXML so Word/Excel stay happy. - Use
--no-imageswhen you only want XML/JSON minify and archive rewrite.
Bulk directories
- Prefer
--jobs autoon multi-core machines. - Filter with
--include-ext/--exclude-extand--min-sizeso you do not touch tiny files. - Default skipped directories already cover
.git, virtualenvs, andnode_modules. Add more with--exclude-dir. bulkskips top-level.zipby default (--no-skip-zipto include them). Nested zips inside other archives are still walked.- Pass
--progress(andfilerepack[progress]) for long jobs.
PDFs and scans
- Lossless:
pip install 'filerepack[pdf]'thenfilerepack repack file.pdf. - Scanned pages:
--lossy(Ghostscript/ebook). Use--pdf-profile prepressfor print-quality Ghostscript. --jpeg-qualityalso re-encodes images inside PDFs.
Data and media extras
- Parquet:
filerepack[parquet]or[data];--ultrais zstd level 22. - Cover art:
filerepack[media]. - Fonts:
filerepack[fonts].
Configuration
Put tool paths in ~/.config/filerepack/config.toml or environment variables
(FILEREPACK_7ZZ, …). See External tools.