base64(1) on Solnix vs Linux and the BSDs

base64 is not in the base Solnix system: install pkgs.solnix.coreutils to get the GNU coreutils base64, which matches the Linux page. FreeBSD and NetBSD have a different base64 with no long options on NetBSD and a different page structure on FreeBSD.

What Solnix runs

Not installed by default: add pkgs.solnix.coreutils. The published page is GNU coreutils 9.7 base64. The bundle lists no other illumos variant.

Differences

Compared withTopicWhat differs
Linuxsame programThe Solnix page and the Linux page document the same GNU coreutils base64: the same synopsis, the same options (-d, -i, -w, --help, --version) and the same 76-column default wrap. The only difference is the version string on the page.
Source: Solnix base64(1) SYNOPSIS, DESCRIPTION; Linux base64(1) SYNOPSIS, DESCRIPTION
FreeBSD, OpenBSD, NetBSDnot in base systembase64 is absent from a default Solnix system and has to be installed from pkgs.solnix.coreutils. A script that calls base64 on a fresh Solnix install will fail until the package is added.
Source: Solnix base64(1) header: none: install pkgs.solnix.coreutils
FreeBSD-i implemented or ignoredOn Solnix, -i/--ignore-garbage makes decoding skip non-alphabet bytes. FreeBSD accepts --ignore-garbage and -i but says the option is unimplemented and silently ignored. Garbage input may fail on FreeBSD where it decodes on Solnix.
Source: Solnix base64(1) -i, --ignore-garbage; FreeBSD base64(1) DESCRIPTION
NetBSD-i implemented or ignoredOn Solnix, -i ignores non-alphabet characters when decoding. The NetBSD page marks -i as '(not implemented)'.
Source: Solnix base64(1) -i; NetBSD base64(1) -i
NetBSDno long optionsSolnix accepts --decode, --ignore-garbage, --wrap, --help and --version. The NetBSD synopsis lists only -d, -i and -w, and the page documents no long options.
Source: Solnix base64(1) SYNOPSIS/OPTIONS; NetBSD base64(1) SYNOPSIS
NetBSD-w syntax and multiple filesSolnix takes -w COLS or --wrap=COLS and at most one FILE. NetBSD takes -w wrap and accepts several file arguments. Both default to 76 columns and treat 0 as no wrapping.
Source: Solnix base64(1) SYNOPSIS, -w; NetBSD base64(1) SYNOPSIS, -w
FreeBSDlong options on FreeBSDFreeBSD base64 documents --decode (-d), --wrap (-w) and --ignore-garbage (-i) as accepted for compatibility with GNU base64. Its synopsis shows only -d, -w column and file. The page does not mention --help or --version.
Source: FreeBSD base64(1) SYNOPSIS, DESCRIPTION; Solnix base64(1) --help, --version
FreeBSDpage covers uuencode familyThe FreeBSD base64(1) page is shared with bintrans, uuencode, uudecode, b64encode and b64decode. The -m, -r, -o, -c, -p and -s options belong to those tools, not to base64. Solnix base64 has none of them.
Source: FreeBSD base64(1) NAME, SYNOPSIS, options sections; Solnix base64(1) SYNOPSIS
FreeBSDdecoder inputFreeBSD base64 as a decoder accepts only raw base64 input. The Solnix page says decoding accepts newlines in addition to the base64 alphabet, and recovers from other bytes with --ignore-garbage.
Source: FreeBSD base64(1) DESCRIPTION; Solnix base64(1) DESCRIPTION
all fourexit status documentedThe NetBSD page documents exit status: 0 on success, non-zero if it could not encode or decode. The Solnix page has no EXIT STATUS section. FreeBSD does not document it either.
Source: NetBSD base64(1) EXIT STATUS; Solnix base64(1); FreeBSD base64(1)
OpenBSDno OpenBSD counterpartThe bundle includes no OpenBSD base64 page, so nothing is said about OpenBSD.
Source: bundle header lists only linux, freebsd and netbsd counterparts

Standards

  • POSIX: base64 is not a POSIX.1-2024 utility.
  • Solnix: The page says data are encoded as described for the base64 alphabet in RFC 4648.
  • NetBSD: The NetBSD page describes the base64 scheme of RFC 3548.

Writing portable scripts

  • Use only base64, -d and -w in portable scripts. Avoid -i (ignored or not implemented on FreeBSD and NetBSD) and the long options, which NetBSD does not document.
  • Strip stray bytes before decoding instead of relying on -i. Pass -w 0 if you need single-line output, and check the target documents it (Solnix, Linux and NetBSD do).

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.