loadkeys(1) on Solnix vs Linux and the BSDs

On Solnix, loadkeys is the illumos /usr/bin/loadkeys. It takes at most one file name and no options, and changes the keyboard streams module's translation tables. The Linux loadkeys takes options and several files, and loads the kernel console keymap. The bundle has no FreeBSD, OpenBSD or NetBSD counterpart.

What Solnix runs

A default Solnix system runs the illumos loadkeys at /usr/bin/loadkeys. The same page also documents dumpkeys, which writes the current translation tables to standard output in the format given by keytables(5). No other variants are shipped.

Differences

Compared withTopicWhat differs
Linuxsynopsis and optionsSolnix loadkeys is documented as loadkeys [filename], with no options. Linux loadkeys takes [OPTION]... FILENAME... and has --default, --mktable, --bkeymap, --tkeymap[=shape] and --parse. A Linux invocation using any of these fails to match the Solnix synopsis.
Source: Solnix loadkeys(1) SYNOPSIS; Linux loadkeys(1) SYNOPSIS
Linuxnumber of filesSolnix loadkeys reads one file, named by filename. Linux loadkeys reads the file or files given as FILENAME.... A script that passes several keymaps in one call works on Linux but does not match the Solnix synopsis.
Source: Solnix loadkeys(1) SYNOPSIS, DESCRIPTION; Linux loadkeys(1) SYNOPSIS, DESCRIPTION
Linuxdefault file when none is givenWith no argument, Solnix loadkeys loads /usr/share/lib/keytables/type_tt/layout_dd. tt comes from the KIOCTYPE ioctl and dd from the KIOCLAYOUT ioctl. The Linux page excerpt does not describe a default file for a bare invocation.
Source: Solnix loadkeys(1) DESCRIPTION; Linux loadkeys(1) SYNOPSIS, DESCRIPTION
Linuxwhat is modifiedSolnix loadkeys modifies the keyboard streams module's translation tables. Linux loadkeys loads the kernel keymap for the console. On Linux the console device can be chosen with -C or --console. The Solnix page documents no such option.
Source: Solnix loadkeys(1) DESCRIPTION; Linux loadkeys(1) DESCRIPTION
Linuxpartial keytable filesSolnix keytable files list only the entries that differ between the chosen layout and the default layout for that keyboard type. The Linux page excerpt does not say whether keymaps are partial.
Source: Solnix loadkeys(1) DESCRIPTION; Linux loadkeys(1) DESCRIPTION
Linuxdumpkeys in the same pageOn Solnix, loadkeys(1) and dumpkeys are documented on one page. dumpkeys takes no arguments and writes the tables in keytables(5) format to standard output. Linux lists dumpkeys(1) only as a separate page under SEE ALSO.
Source: Solnix loadkeys(1) NAME, SYNOPSIS, DESCRIPTION; Linux loadkeys(1) SEE ALSO
Linuxkeyboard layout detectionOn self-identifying keyboards, the Solnix layout value from KIOCLAYOUT is set from the DIP switches. The Linux page excerpt documents no equivalent.
Source: Solnix loadkeys(1) DESCRIPTION; Linux loadkeys(1) DESCRIPTION
FreeBSD, OpenBSD, NetBSDno counterpart in the bundleThe bundle contains no FreeBSD, OpenBSD or NetBSD page for loadkeys, so no comparison with them can be made from it.
Source: Bundle header: counterparts list only linux loadkeys(1)

Standards

  • POSIX: loadkeys is not a POSIX.1-2024 utility.
  • Solnix: Interface Stability: Evolving.

Writing portable scripts

  • Do not rely on loadkeys options or multiple file arguments in scripts that must also run on Solnix. Pass at most one file name, and expect the file format to be the platform's own keytable format.
  • Treat keymap files as non-portable: Solnix uses keytables(5) files under /usr/share/lib/keytables, and Linux uses keymaps(5).

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.