msgmerge(1) on Solnix vs Linux and the BSDs

msgmerge is GNU gettext's tool for merging a .po file with a .pot template. It is not in the base Solnix system: install pkgs.solnix.gettext. The Solnix page is GNU gettext-tools 0.22.5, so it sits between the NetBSD page (0.16.1) and Linux (1.0), and its option set is close to Linux.

What Solnix runs

Not installed by default: add pkgs.solnix.gettext. The bundle shows no illumos msgmerge and no other variants shipped, so there is nothing on the default PATH to compare against.

Differences

Compared withTopicWhat differs
NetBSD--color and --styleThe Solnix page documents --color[=WHEN] (always, never, auto, html) and --style=STYLEFILE for coloured output. The NetBSD page (gettext-tools 0.16.1) has neither option.
Source: Solnix msgmerge(1) Output details (--color, --style); NetBSD msgmerge(1) Output details
NetBSD--langSolnix msgmerge has --lang=CATALOGNAME to set the 'Language' field in the header entry. The NetBSD page does not list it.
Source: Solnix msgmerge(1) --lang; NetBSD msgmerge(1) Output details
NetBSD--for-msgfmtSolnix msgmerge has --for-msgfmt, which produces output for msgfmt rather than for a translator. The NetBSD page does not list it.
Source: Solnix msgmerge(1) Operation modifiers (--for-msgfmt); NetBSD msgmerge(1) Operation modifiers
NetBSD-n short optionOn Solnix, -n is the short form of --add-location, which is the default. On NetBSD the page lists --add-location with no short form, so a script using -n works on Solnix but the NetBSD page does not document it.
Source: Solnix msgmerge(1) -n, --add-location; NetBSD msgmerge(1) --add-location
Linux-s / --sort-outputThe Linux page marks -s, --sort-output as deprecated. The Solnix page describes it as 'generate sorted output' with no deprecation note. Prefer -F or no sorting in new scripts.
Source: Linux msgmerge(1) -s, --sort-output (deprecated); Solnix msgmerge(1) -s, --sort-output
Linuxsame program, older releaseSolnix and Linux document the same GNU msgmerge with an identical option list. Solnix is gettext-tools 0.22.5 (February 2024) and the Linux page is gettext-tools 1.0 (January 2026). The only difference in the bundle is the deprecation note on -s.
Source: Solnix msgmerge(1) footer (0.22.5); Linux msgmerge(1) footer (1.0)
all fourbackup controlOn Solnix, Linux and NetBSD, -U with --backup=CONTROL reads VERSION_CONTROL, and the suffix defaults to '~' unless --suffix or SIMPLE_BACKUP_SUFFIX is set. The bundle has no FreeBSD or OpenBSD page for msgmerge.
Source: Solnix msgmerge(1) --backup, --suffix; Linux msgmerge(1) --backup; NetBSD msgmerge(1) --backup
FreeBSD, OpenBSDFreeBSD and OpenBSDThe bundle contains no FreeBSD or OpenBSD msgmerge page. The manual does not say whether msgmerge is in their base systems.
Source: Bundle header: counterparts are only linux and netbsd

Standards

  • POSIX: msgmerge is not a POSIX.1-2024 utility.

Writing portable scripts

  • Use only the long options present in all three pages (such as --update, --backup, --no-fuzzy-matching, --width, --add-location). Avoid --color, --lang, --for-msgfmt and -n if the script must also run against the older NetBSD gettext 0.16.1.
  • Do not rely on -s / --sort-output in new scripts: the Linux page marks it deprecated.

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.