ngettext(1) on Solnix vs Linux and the BSDs

ngettext is not in the Solnix base system; it comes from the GNU gettext package pkgs.solnix.gettext. The Solnix page (GNU gettext-runtime 0.22.5) and the Linux page (GNU gettext-runtime 1.0) document the same synopsis and options. The bundle has no BSD counterpart pages.

What Solnix runs

Not installed by default: add pkgs.solnix.gettext. The Solnix page documents GNU gettext-runtime 0.22.5. No other illumos variants are shipped.

Differences

Compared withTopicWhat differs
Linuxsame programSolnix and Linux both document GNU gettext ngettext with the same synopsis, the same options (-d, -c, -e, -E, -h, -V) and the same argument order. Only the release differs: 0.22.5 on Solnix, 1.0 on Linux.
Source: Solnix ngettext(1) SYNOPSIS, DESCRIPTION; Linux ngettext(1) SYNOPSIS, DESCRIPTION
Linuxstandard search directoryBoth pages say the default catalog directory is a /nix/store path ending in share/locale. The store hashes and gettext versions differ (0.22.5 on Solnix, 1.0 on Linux). The text only states that TEXTDOMAINDIR overrides the directory.
Source: Solnix ngettext(1) final paragraph (Standard search directory); Linux ngettext(1) final paragraph
FreeBSD, OpenBSD, NetBSDno counterpart pageThe bundle has no ngettext(1) page for FreeBSD, OpenBSD or NetBSD. The manual does not say whether ngettext is present on those systems or how it behaves there.
Source: Bundle header (COUNTERPART lists only linux)
Linuxnot in the base systemThe command is not on PATH on a default Solnix system. Install pkgs.solnix.gettext first. Scripts that call ngettext fail with command not found until the package is installed.
Source: Header line: On a default Solnix system the command on PATH is: none: install pkgs.solnix.gettext

Standards

  • POSIX: ngettext is listed as a POSIX.1-2024 utility in the bundle header.
  • Solnix: The Solnix page has no STANDARDS or CONFORMING TO section.
  • Linux: The Linux page has no STANDARDS or CONFORMING TO section.

Writing portable scripts

  • Set TEXTDOMAIN or pass the TEXTDOMAIN argument explicitly, and set TEXTDOMAINDIR if catalogs are not in the default directory. The built-in search path is a package-specific store path.
  • Check that ngettext is installed (on Solnix, from pkgs.solnix.gettext) before relying on it in a script.

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.