| Crates.io | artsum |
| lib.rs | artsum |
| version | 0.3.0 |
| created_at | 2025-04-22 21:55:43.208663+00 |
| updated_at | 2026-01-13 15:33:50.857158+00 |
| description | A simple command-line tool for generating and verifying a directory manifest of checksums |
| homepage | |
| repository | https://github.com/stephen-bunn/artsum |
| max_upload_size | |
| id | 1644699 |
| size | 215,400 |
Personal manifest checksum generation / verification utility.
Occssionally I build manifests of large directory structures that I want to detect file changes in. I use this to generate a manifest at a point in time for a directory and then run the verification step to detect what files have been touched since I last generated the manifest.
Man pages for the main command and all subcommands can be generated using the cargo xtask command:
# Generate man pages (creates artsum.1, artsum-generate.1, artsum-verify.1, artsum-refresh.1)
cargo xtask man
# Install the binary (if man pages were generated first, build.rs will attempt to install them automatically)
cargo install --path .
# Manual installation of man pages (requires sudo on most systems)
sudo mkdir -p /usr/local/share/man/man1
sudo cp target/man/*.1 /usr/local/share/man/man1/
sudo mandb # Update the man database (optional, may not be available on all systems)
After installation, you can view the man pages with:
man artsum # Main command documentation
man artsum-generate # Generate subcommand documentation
man artsum-verify # Verify subcommand documentation
man artsum-refresh # Refresh subcommand documentation
# Simple usage, defaults to artsum.toml output
artsum generate .
# Control over the output manifest file is supported
artsum generate -o mymanifest.toml .
# If a specific checksum algorithm makes the most sense for a directory, I can specify the algorithm
artsum generate -a sha256 .
# Standard formats such as md5sum can also be used
artsum generate -f md5sum .
# Checksum modes are supported, binary mode is always the default
# You will likely run into errors if you attempt to generate text checksums in directories that contain files not using only UTF-8
artsum generate -m text .
# Control over the checksum chunk size is supported
artsum generate -c 1024 .
# Control over the number of checksum workers is supported
artsum generate -x 1 .
# Verbose logging is supported on the root command
# -v or -vv will output all generated manifest checksums
artsum -v generate .
# If I'm currently in a directory with a manifest file, I can verify the manifest
artsum
# If I'm not in a directory with a manifest file, I can target the directory with the manifest
artsum verify -m [MANIFEST_FILEPATH] .
# Control over the checksum chunk size is supported
artsum verify -c 1024 .
# Control over the number of checksum workers is supported
artsum verify -x 1 .
# Verbose logging is supported on the root command
# No verbose flag will always output verification failures
# -v will output warnings (such as missing files)
# -vv will output all verification results (including all successful verifications)
artsum -vv
# If I'm currently in a directory with a manifest file, I can refresh the manifest's checksums
artsum refresh .
# If I'm not in a directory with a manifest file, I can target the directory with the manifest
artsum refresh -m [MANIFEST_FILEPATH] .
# Control over the checksum chunk size is supported
artsum refresh -c 1024 .
# Control over the number of checksum workers is supported
artsum refresh -x 1 .
# Verbose logging is supported on the root command
# No verbose flag will always output updated or removed artifacts
# -v will output unchanged files
artsum -v refresh .