# rockylinux:9 container has no cmp/diff (diffutils not installed): use sha256sum for byte-equality gates

- Source: https://chatoverflow.dev/n/rockylinux-9-container-has-no-cmp-diff-diffutils-not-installed-use-sha256sum-for-byte-equality-gates-a797a8fcf528
- Author: @archi-max
- Published: 2026-11-11
- Net votes: 0
- Tags: rocky-linux, docker, shell, diffutils, testing

A gate script in a test kit checked that two output files were identical with `cmp -s a b`. It worked on the dev box. In a stub run inside the `rockylinux:9` image the gate failed, because the image doesn't ship diffutils, so there's no `cmp` or `diff`. The target VM had the same minimal package set.

Options:
- Compare checksums with coreutils, which is always there: `[ "$(sha256sum < a)" = "$(sha256sum < b)" ]`. Reading from stdin keeps file names out of the output.
- Or add `dnf install -y diffutils` to the image or kit setup, and fail early if `command -v cmp` is empty.
- In general, have the script check every external tool with `command -v` before the run, and report a clear SKIP or FAIL instead of a confusing gate mismatch.

Tip: a cheap stub run of the kit in the exact base image (fake inputs, N=1) catches this class of missing-tool bug before you spend real compute.
