infocmp(1) on Solnix vs Linux and the BSDs

The Solnix infocmp(1) page is the ncurses page, published by pkgs.solnix.ncurses, but a default Solnix system runs the illumos infocmp at /usr/bin/infocmp. Linux and FreeBSD ship ncurses infocmp with nearly the same options as the Solnix page. NetBSD's infocmp is much smaller, with only 9 options (-1 -A -B -a -c -n -q -u -w -x).

What Solnix runs

The command on PATH on a default Solnix system is the illumos /usr/bin/infocmp, and no other variants are shipped. The bundle gives only the ncurses page from pkgs.solnix.ncurses, not the illumos page, so the comparisons below describe what that ncurses page says. The manual does not say where the ncurses binary is installed or whether it comes first on PATH. Check with 'command -v infocmp' and 'infocmp -V'.

Differences

Compared withTopicWhat differs
NetBSDoption setNetBSD infocmp accepts only -1 -A -B -a -c -n -q -u -w -x. The Solnix page also documents -d, -I, -L, -C, -K, -r, -T, -0, -v, -s, -Q, -R, -e, -E, -F, -i, -l and others. Scripts using those options fail on NetBSD.
Source: NetBSD infocmp(1) SYNOPSIS; Solnix infocmp(1) SYNOPSIS
NetBSDtermcap output (-C)Solnix documents -C (termcap names) with -r and -K to convert terminfo to termcap. The NetBSD page lists no -C, -r or -K, and no termcap conversion.
Source: Solnix infocmp(1) Source Listing Options; NetBSD infocmp(1) SYNOPSIS and options list
NetBSDdefault actionOn Solnix, Linux, FreeBSD and OpenBSD, no options with zero or one terminal prints in -I form, and two or more terminals imply -d. The NetBSD page says it reconstructs the first definition in terminfo format and compares if a second term is given. It names no -I or -d.
Source: Solnix infocmp(1) Default Options; NetBSD infocmp(1) DESCRIPTION
NetBSD-q meaningOn Solnix, -q shows the difference between absent and cancelled capabilities, in output that otherwise uses F and NULL. On NetBSD, -q shortens the comparison listing by dropping subheadings and writing - for absent and @ for cancelled instead of NULL.
Source: Solnix infocmp(1) Comparison Options; NetBSD infocmp(1) -q
NetBSD-u and -x meaningSolnix -u rewrites the first entry with use= fields. NetBSD -u builds a new description from the later ones and also sets -a. Solnix -x adds BSD-compatibility capabilities (names prefixed OT). NetBSD -x includes non-standard capabilities and needs a database compiled with tic -x.
Source: Solnix infocmp(1) Use= Option, Comparison Options (-x); NetBSD infocmp(1) -u, -x
NetBSD-A and -B argumentSolnix, Linux, FreeBSD and OpenBSD take a directory for -A and -B. NetBSD takes a database, which it uses to load the first terminal definition (-A) or the later ones (-B).
Source: Solnix infocmp(1) SYNOPSIS (-A directory, -B directory); NetBSD infocmp(1) -A, -B
Linux, FreeBSDcomparison output formatLinux and FreeBSD say -d and -c print string values between ' characters, and every entry ends with a period. With -c a space follows =. The Solnix and OpenBSD pages describe only ':' or '=' after the name. Do not use one parser for output from both.
Source: Linux infocmp(1m) Entry Comparison Options -c, -d, -n; FreeBSD infocmp(1) same section; Solnix infocmp(1) Comparison Options
Linux, FreeBSDsynopsis argument namesLinux and FreeBSD show -Q encoding, -s key and -v level. The Solnix and OpenBSD synopses show -Q n, -s d|i|l|c and -v n. The visible Solnix text does not explain these arguments, so check the full page before using them.
Source: Linux infocmp(1m) SYNOPSIS; FreeBSD infocmp(1) SYNOPSIS; Solnix infocmp(1) SYNOPSIS; OpenBSD infocmp(1) SYNOPSIS
OpenBSD-L meaningOpenBSD says -L uses the long C variable name listed in <term.h>. The Solnix, Linux and FreeBSD pages say it uses long capability names.
Source: OpenBSD infocmp(1) Source Listing Options -L; Solnix infocmp(1) Source Listing Options -L
NetBSDenvironment and exit statusNetBSD documents COLUMNS (overridden by -w), TERM, and exit 0 on success or >0 on error. The visible Solnix text mentions only TERM, and the bundle shows no exit status section for it.
Source: NetBSD infocmp(1) ENVIRONMENT, EXIT STATUS; Solnix infocmp(1) Comparison Options and Source Listing Options (TERM)

Standards

  • POSIX: infocmp is not a POSIX.1-2024 utility.
  • NetBSD: The infocmp utility outputs information that conforms to the X/Open Curses Issue 4, Version 2 (“XCURSES4.2”) standard.

Writing portable scripts

  • Stick to -I, -c, -d, -n, -u, -x, -1 and -w when scripting across systems. NetBSD lacks every other option, and its -q, -u and -x behave differently.
  • Do not parse -c or -d output across systems. Linux and FreeBSD add quotes, periods and spaces that the Solnix and OpenBSD pages do not describe.

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.