gawk(1) on Solnix vs Linux and the BSDs

gawk is not in the Solnix base system: you install it with pkgs.solnix.gawk. The Solnix and Linux gawk(1) pages show the same synopsis and the same option list, so it is the same program. The bundle has no BSD pages, so no BSD comparison is possible.

What Solnix runs

Not installed by default: add pkgs.solnix.gawk. No other illumos variants are shipped. The bundle does not say which awk, if any, is on PATH as awk in the base system, so do not assume that awk and gawk are the same program on Solnix.

Differences

Compared withTopicWhat differs
Linuxsame programThe Solnix pkgs.solnix.gawk page and the Linux gawk(1) page (gawk-5.4.1) have the same synopsis and the same option list, including --csv, --sandbox, --bignum, --load, --include and --exec. Behaviour should match Linux gawk. The only text difference visible in the bundle is line wrapping.
Source: Solnix gawk(1) SYNOPSIS, OPTIONS; Linux gawk(1) SYNOPSIS, OPTIONS; mechanically extracted option flags are identical
LinuxavailabilityOn most Linux systems gawk is a package you may or may not have installed. On Solnix it is never in the base system. A script that calls gawk fails with 'not found' until pkgs.solnix.gawk is installed.
Source: Solnix bundle header (none: install pkgs.solnix.gawk); Solnix gawk(1) NAME
Linux-M / --bignum depends on build-M has no effect, and gawk warns, if gawk was not compiled with the GNU MPFR and GMP libraries. The Solnix page does not say whether the pkgs.solnix.gawk build includes them. The page also says the feature is 'on parole'.
Source: Solnix gawk(1) -M, --bignum; Linux gawk(1) -M, --bignum
FreeBSD, OpenBSD, NetBSDno BSD counterpart in the bundleNo FreeBSD, OpenBSD or NetBSD page was supplied for comparison. The manual texts here do not say how their awk differs from gawk, so no BSD difference is claimed. The Solnix page describes -k/--csv, -S/--sandbox, -i/--include, -l/--load and -b as gawk options.
Source: Bundle header (only COUNTERPART linux listed); Solnix gawk(1) OPTIONS
LinuxPOSIX statusgawk is not a POSIX.1-2024 utility per the bundle header. Both pages say gawk conforms to the language definition in the POSIX 1003.1 standard and adds GNU extensions. -P/--posix disables a number of common extensions. -c/--traditional makes gawk behave like Brian Kernighan's awk.
Source: Solnix bundle header (POSIX.1-2024 utility: no); Solnix gawk(1) DESCRIPTION, -P, -c; Linux gawk(1) DESCRIPTION

Standards

  • POSIX: gawk is not a POSIX.1-2024 utility.
  • Solnix: Gawk conforms to the definition of the AWK language in the POSIX 1003.1 standard.
  • Linux: Gawk conforms to the definition of the AWK language in the POSIX 1003.1 standard.

Writing portable scripts

  • Make scripts that need gawk check for it, or install pkgs.solnix.gawk first, since it is not in the Solnix base system.
  • Use -L/--lint or -t/--lint-old to get warnings about constructs not portable to other AWK implementations. Avoid gawk-only options such as -k, -S, -i, -l and -M if the script must run on other awks.

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.