sha1sum(1) on Solnix vs Linux and the BSDs

sha1sum is not in the Solnix base system; you install it with pkgs.solnix.coreutils, and it is the GNU coreutils sha1sum (page dated for coreutils 9.7). Its options match the Linux GNU sha1sum. On FreeBSD, sha1sum is one name of a shared multi-name program that runs in GNU mode because the name ends in "sum".

What Solnix runs

Not installed by default: add pkgs.solnix.coreutils. The header lists no other illumos variants. The page is the GNU coreutils 9.7 page. The bundle has no OpenBSD or NetBSD counterpart, so this page makes no claim about them.

Differences

Compared withTopicWhat differs
Linuxsame programSolnix and Linux both document GNU coreutils sha1sum with identical option sets: -b, -c, -t, -w, -z, --tag, --ignore-missing, --quiet, --status, --strict, --warn. The Linux page adds that it is a "legacy interface to the cksum utility". The Solnix page does not say this.
Source: Solnix sha1sum(1) SYNOPSIS/DESCRIPTION; Linux sha1sum(1) DESCRIPTION
FreeBSDinvocation name selects behaviourOn FreeBSD one page covers md5, sha1, sha1sum, shasum and others. Names ending in "sum" use GNU options; other names use BSD options such as -r, -s, -p, -x. Solnix sha1sum has only the GNU option set.
Source: FreeBSD sha1sum(1) SYNOPSIS, BSD OPTIONS, GNU OPTIONS; Solnix sha1sum(1) SYNOPSIS
FreeBSD-c depends on nameSolnix sha1sum -c reads checksum lines from the FILEs. FreeBSD does the same for sha1sum, but plain sha1 -c string compares a file's digest with a given string. A script that switches between the two names changes the meaning of -c.
Source: Solnix sha1sum(1) -c; FreeBSD sha1sum(1) BSD OPTIONS -c, GNU OPTIONS -c
FreeBSD-z and file name escapingSolnix -z ends lines with NUL and also disables file name escaping. FreeBSD -z only terminates output lines with NUL. FreeBSD separately says names with unprintable characters are encoded with vis(3) VIS_CSTYLE | VIS_OCTAL.
Source: Solnix sha1sum(1) -z; FreeBSD sha1sum(1) -z and DESCRIPTION (vis(3))
FreeBSDcheck-mode input and outputFreeBSD -c accepts digest lines in classical BSD format or GNU format. At the end it prints counts of failed and malformed lines. The Solnix page says only that input should be a former output of this program, and does not mention end counts.
Source: FreeBSD sha1sum(1) GNU OPTIONS -c; Solnix sha1sum(1) DESCRIPTION
FreeBSD--quiet wordingSolnix --quiet suppresses only the OK line for each verified file. FreeBSD --quiet says nothing is printed unless verification fails. Scripts that rely on failure messages are fine on both; do not depend on other output.
Source: Solnix sha1sum(1) --quiet; FreeBSD sha1sum(1) GNU OPTIONS --quiet
Linuxsecurity advice in BUGSSolnix advises against SHA-1 for security and points to sha224sum, sha256sum, sha384sum, sha512sum or b2sum. The Linux page names MD5 instead of SHA-1 and points to cksum for SHA-2, SHA-3 or BLAKE2.
Source: Solnix sha1sum(1) BUGS; Linux sha1sum(1) BUGS
FreeBSDsecurity adviceFreeBSD states that MD5 and SHA-1 are vulnerable to practical collision attacks and should not be used in cryptographic signature schemes. It recommends SHA-512 or SKEIN-512 for new applications.
Source: FreeBSD sha1sum(1) DESCRIPTION
FreeBSDbinary vs text modeSolnix and FreeBSD both say there is no difference between binary and text mode. Solnix output marks the mode with a '*' for binary or a space for text. The FreeBSD page does not describe that output character.
Source: Solnix sha1sum(1) DESCRIPTION; FreeBSD sha1sum(1) GNU OPTIONS -t

Standards

  • POSIX: sha1sum is not a POSIX.1-2024 utility.
  • Solnix: The sums are computed as described in FIPS-180-1.

Writing portable scripts

  • Do not assume sha1sum is on a Solnix PATH. Install pkgs.solnix.coreutils first, or test with command -v sha1sum.
  • Stick to -b, -c, --quiet, --status, --tag and --strict, which all three pages document. Avoid -z in scripts that handle unusual file names, since escaping behaviour differs.

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.