STANNIX Solutions for the Real World


Manual: inxi

INXI(1)						 inxi manual					     INXI(1)

NAME
       inxi - Command line system information tool for console and IRC

SYNOPSIS
       inxi

       inxi [-AbBCdDeEfGhiIjJlLmMnNopPrRsSuUwyYzZ]

       inxi  [-c  -NUMBER]  [--sensors-exclude SENSORS] [--sensors-use SENSORS] [-t [c|m|cm|mc][NUMBER]] [-v
       NUMBER] [-w [LOCATION]] [--weather-unit {m|i|mi|im}] [-y WIDTH]

       inxi  [--edid]  [--memory-modules]  [--memory-short]  [--recommends]  [--sensors-default]   [--slots]
       [--version]  [--version-short]

       inxi [-x|-xx|-xxx|-a] -OPTION(s)

       All short form options have long form variants - see below for these and more advanced options.

DESCRIPTION
       inxi is a command line system information tool built for console and IRC. It is also used as a debug‐
       ging tool for forum technical support to quickly ascertain users' system configurations and hardware.
       inxi  shows system hardware, CPU, drivers, Xorg, Desktop, Kernel, compiler version(s), Processes, RAM
       usage, and a wide variety of other useful information.

       inxi output varies depending on whether it is being used on CLI or IRC, with some default filters and
       color options applied only for IRC use. Colors can be turned off if desired with -c 0, or changed us‐
       ing the -c color options listed in the STANDARD OPTIONS section below.

PRIVACY AND SECURITY
       In order to maintain basic privacy and security, inxi used on IRC automatically filters out your net‐
       work device MAC address, WAN and LAN IP, your /home username directory in partitions, and a few other
       items.

       Because inxi is often used on forums for support, you can also trigger this filtering with the -z op‐
       tion (-ez, for example). To override the IRC filter, you can use the -Z option. This can be useful in
       debugging network connection issues online in a private chat, for example.

       See FILTER OPTIONS for all filters. If you want to filter everything, use --za though that's  usually
       overkill.

TABLE OF CONTENTS
       This man page is pretty long and information packed. It is divided into the following sections:

       * USING OPTIONS How to use the command line options.

       * STANDARD OPTIONS Primary data types trigger items.

       * FILTER OPTIONS Apply a variety of output filters.

       * OUTPUT CONTROL OPTIONS Change default colors, widths, heights, output types, etc.

       * EXTRA DATA OPTIONS What -x, -xx, and -xxx add to the report per primary data type.

       *  ADMIN EXTRA DATA OPTIONS What -a adds to the report per primary data type. These have a lot of in‐
       formation because this is advanced admin data, which are not always intuitive or easy to understand.

       * ADVANCED OPTIONS Modify behavior or choice of data sources, and other advanced switches.

       * DEBUGGING OPTIONS For development use mainly, or contributing datasets to the project.

       * DEBUGGING OPTIONS TO DEBUG DEBUGGER FAILURES Only for advanced users, sometimes something will hang
       the debuggers, this shows you various ways to get around those failures.

       * SUPPORTED IRC CLIENTS List of known good IRC clients. Not checked often, let us know  if  something
       is not working.

       * RUNNING IN IRC CLIENT How to run inxi in various IRC clients.

       * CONFIGURATION FILE Configuration file locations and priority in using.

       * CONFIGURATION OPTIONS Most of the commonly used configuration options, along with sample values.

       * BUGS How and where to report bugs.

       *  HOMEPAGE, AUTHOR AND CONTRIBUTORS TO CODE, SPECIAL THANKS TO THE FOLLOWING These are self explani‐
       tory.

USING OPTIONS
       Options can be combined if they do not conflict. You can either group the letters together  or  sepa‐
       rate them.

       Letters with numbers can have no gap or a gap at your discretion, except when using  -t. Note that if
       you  use an option that requires an additional argument, that must be last in the short form group of
       options. Otherwise you can use those separately as well.

       For example: inxi -AG | inxi -A -G | inxi -b | inxi -c10 | inxi -exxzJy90 | inxi -bay

       Note that all the short form options have long form equivalents, which  are  listed  below.  However,
       usually the short form is used in examples in order to keep things simple.

STANDARD OPTIONS
       -A , --audio
	      Show Audio/sound device(s) information, including device driver. Shows active sound API(s) and
	      sound server(s).

	      Supported	 APIs:	ALSA,  OSS, sndio. Supported servers: aRts (artsd), Enlightened Sound Daemon
	      (esound, esd), JACK, NAS	(Network  Audio	 System,  nasd),  PipeWire,  PulseAudio,  RoarAudio,
	      sndiod.

	      Use  -Ax	to  show all sound APIs/servers detected, including inactive, -Axx to see API/Server
	      helper daemons/plugin/modules, and -Aa to see API/sound server tools.

	      Audio:
		Device-1: C-Media CMI8788 [Oxygen HD Audio] driver: snd_virtuoso
		Device-2: AMD Cedar HDMI Audio [Radeon HD 5400/6300/7300 Series]
		  driver: snd_hda_intel
		Device-3: AMD Family 17h HD Audio driver: snd_hda_intel
		API: ALSA v: k5.19.0-16.2-liquorix-amd64 status: kernel-api
		Server-1: PulseAudio v: 16.1 status: active

       -b , --basic
	      Show basic report with the following items: System (-S); Machine (-M); Battery (-B) (if avail‐
	      able); basic CPU (cores, type, average clock speed, and min/max speeds, if available);  Graph‐
	      ics (-G); Networking devices (-N); basic Disk; Info (-I).

	      The  CPU	and  Disk short forms are special, and are only used in -b. To see their full forms,
	      add -C or -D.

	      Same as: inxi -v 2

	      For expanded -b report, see -e/--expanded.

       -B , --battery
	      Show system battery (ID-x)  data,	 charge,  condition,  plus  extra  information	(if  battery
	      present).	 Uses  /sys  or, for BSDs without systctl battery data, use --dmidecode to force its
	      use.  dmidecode  does  not  have	very  much  information,  and  none  about  current  battery
	      state/charge/voltage. Supports multiple batteries when using /sys or sysctl data.

	      Note that for charge:, the report shows the current charge, as well as its value as a percent‐
	      age  of  the  available  capacity, which can be less than the original design capacity. In the
	      following example, the actual current available capacity of the battery is 22.2 Wh.

	      charge: 20.1 Wh (95.4%)

	      If charge percent > 100, adds note: check. The causes from that can range	 from  driver  bugs,
	      hardware bugs, odd behaviors, so there's no way to know why.

	      The  condition:  item  shows  the remaining available capacity / original design capacity, and
	      then this figure as a percentage of original capacity available in the battery.

	      condition: 22.2/36.4 Wh (61%)

	      Corner cases of failing battery show < 1 Wh and percent values for charge, capacity, and	con‐
	      dition, and an alert.

	      condition: 0.01/62.6 Wh (0.02%) alert: bad battery?

	      If  health  item is available and if it is not 'good', shows health: value.  Always shows with
	      -x if present.

	      With -x, or if voltage difference is critical, volts: item shows the current voltage, and	 the
	      min:  voltage. Note that if the current is below the minimum listed the battery is essentially
	      dead and will not charge.	 Test that to confirm, but that's technically how it's	supposed  to
	      work.

	      volts: 12.0 min: 11.4

	      With  -x	shows attached Device-x information (mouse, keyboard, etc.) if they are battery pow‐
	      ered.

       --bluetooth
	      See -E.

       -c , --color
	      See OUTPUT CONTROL OPTIONS.

       --config, --configuration
	      Show active configuration values, by file, and exit.

       -C , --cpu
	      Show full CPU report (if each item available): basic CPU topology, model, type, L2 cache,	 av‐
	      erage  speed  of all cores (if > 1 core, otherwise speed of the core), min/max speeds for CPU,
	      and per CPU clock speed. More data available with -x, -xxx, and -a options.

	      Explanation of CPU type (type: MT MCP) abbreviations:

	      * AMCP - Asymmetric Multi Core Processor. More than 1 core per CPU, and  more  than  one	core
	      type (single and multithreaded cores in the same CPU).

	      *	 AMP  - Asymmetric Multi Processing (more than 1 physical CPU, but not identical in terms of
	      core counts or min/max speeds).

	      * MT - Multi/Hyper Threaded CPU (more than 1 thread per core, previously HT).

	      * MST - Multi and Single Threaded CPU (a CPU with both Single and Multi Threaded cores).

	      * MCM - Multi Chip Model (more than 1 die per CPU).

	      * MCP - Multi Core Processor (more than 1 core per CPU).

	      * SMP - Symmetric Multi Processing (more than 1 physical CPU).

	      * UP - Uni (single core) Processor.

	      Note that min/max: speeds are not necessarily true in cases of overclocked  CPUs	or  CPUs  in
	      turbo/boost  mode. See -Ca for alternate base/boost: speed data, more granular cache data, and
	      more.

	      Sample:
	      CPU:
		Info: 2x 8-core model: Intel Xeon E5-2620 v4 bits: 64 type: MT MCP SMP
		  cache: L2: 2x 2 MiB (4 MiB)
		Speed (MHz): avg: 1601 min/max: 1200/3000 cores: 1: 1280 2: 1595 3: 1416
		  ... 32: 1634

       -d , --disk-full,--optical
	      Show optical drive data as well as -D HDD/SSD drive data. With -x, adds a feature line to	 the
	      report.  Also  shows floppy disks if present. Note that there is no current way to get any in‐
	      formation about the floppy device that we are aware of, so it will simply show the  floppy  ID
	      without any extra data. -xx adds a few more features.

       -D , --disk
	      Show  HDD/SSD drive info. Shows total drive space and used percentage. The drive used percent‐
	      age includes space used by swap partition(s), since those are not	 usable	 for  data  storage.
	      Also,  unmounted	partitions are not counted in drive use percentages since inxi has no access
	      to the used amount.

	      If the system has RAID or other logical storage, and if inxi can determine the size  of  those
	      vs  their	 components,  you  will see the storage total raw and usable sizes, plus the percent
	      used of the usable size. The no argument short form of inxi will show only the usable (or	 to‐
	      tal  if  no usable) and used percent. If there is no logical storage detected, only total: and
	      used: will show. Sample (with RAID logical size calculated):

	      Local Storage: total: raw: 5.49 TiB usable: 2.80 TiB used: 1.35 TiB (48.3%)

	      Without logical storage detected:

	      Local Storage: total: 2.89 TiB used: 1.51 TiB (52.3%)

	      Also shows per drive information: Disk ID, type (FireWire, Removable, USB if present),  vendor
	      (if  detected),  model, and size. See Extra Data Options (-x options) and Admin Extra Data Op‐
	      tions (--admin options) for many more features.

       -e , --expanded
	      Show expanded -b report. Includes all Upper Case options (except -J), plus --swap, -s and	 -n.
	      Does not show extra verbose options such as -d -f -i -J -l -m -o -p -r -t -u -x unless you use
	      those arguments in the command, e.g.: inxi -ermxx

	      The  basic  CPU line is expanded to full CPU data (-C); the basic disk information line is ex‐
	      panded to full drive information (-D) plus primary system	 partition  data  (-P),	 along	with
	      adding,  if  found, RAID (-R) and Logical (-L) items; the Network line (-N) is expanded to ad‐
	      vanced network (-n).

	      Note that with -e, to avoid clutter, -B, -E, -L, and -R only show if results are	found  since
	      those are often not relevant.

	      For basic report, see -b/--basic.

	      The previous -F/--full are deprecated because the expanded report has not been full for a long
	      time.

       -E, --bluetooth
	      Show  bluetooth  device(s),  drivers. Show Report: with HCI ID, state, address per device (re‐
	      quires btmgmt, bt-adapter, or hciconfig), and if available (hciconfig, btmgmt only)  bluetooth
	      version (bt-v). See Extra Data Options for more.

	      If  bluetooth  shows as status: down, shows bt-service: state and rfkill software and hardware
	      blocked states, and rfkill ID.

	      Note that Report-ID: indicates that the HCI item was not able to be linked to a  specific	 de‐
	      vice, similar to IF-ID: in -n.

	      If  your	internal bluetooth device does not show, it's possible that it has been disabled, if
	      you try enabling it using for example:

	      hciconfig hci0 up

	      and it returns a blocked by RF-Kill error, you can do one of these:

	      connmanctl enable bluetooth

	      or

	      rfkill list bluetooth

	      rfkill unblock bluetooth

       --edid
	      Triggers full EDID data in Graphics, activates -G and -a.

	      - Adds monitor chromacity (chroma: red:..green:...blue:...white:).

	      - Shows all available monitor modes if > 2 present, in comma separated list.

	      - Shows EDID errors and warnings if any present.

       --filter, -z
	      See FILTER OPTIONS.

       -f , --flags
	      Show all CPU flags used, not just the short list. Not shown with -e in order  to	avoid  spam‐
	      ming. ARM CPUs: show features items.

       -F , --full
	      Deprecated. See -e/--expanded.

       -G , --graphics
	      Show  Graphic  device(s)	information,  including	 details  of  device and display drivers (X:
	      loaded:, and, if applicable: unloaded:, failed:, dri: (if X and different from loaded  X	dri‐
	      vers)  drivers,  and  active  gpu:  drivers),  display protocol (if available), display server
	      (and/or Wayland compositor), vendor and version number, e.g.:

	      Display: x11 server: Xorg v: 1.15.1

	      or:

	      Display: wayland server: X.org v: 1.20.1 with: Xwayland v: 20.1

	      If protocol is not detected, shows:

	      Display: server: Xorg 1.15.1

	      Adds with: Xwayland v:... if xwayland server is installed, regardless of protocol.

	      Also shows screen resolution(s) (per monitor/X screen). Shows  graphics  API  information	 (if
	      available).  EGL:	 EGL version, drivers, acdtive platforms; OpenGL: renderer, OpenGL core pro‐
	      file version/OpenGL version (if core/compat versions different, shows that as  well);  Vulkan:
	      Vulkan version, drivers, surfaces;VESA: data (for Xvesa).

	      Compositor  information  will show if detected using -xx option or always if detected and Way‐
	      land since the compositor is the server with Wayland.

	      -Gxx shows monitor data as well, if detected. --edid shows advanced monitor data (full  modes,
	      chroma, etc.).

       -h , --help
	      The  help	 menu. Features dynamic sizing to fit into terminal window. Set global COLS_MAX_CON‐
	      SOLE if you want a different default value, or use -y [width] to temporarily override the	 de‐
	      faults or actual window width.

       -i , --ip
	      Show  WAN	 IP  address  and local interfaces (latter requires ifconfig or ip network tool), as
	      well as network report from -n. Not shown with -e for user  security  reasons.  You  shouldn't
	      paste your local/WAN IP.	Shows both IPv4 and IPv6 link IP addresses.

       --ip-limit, --limit [-1 - x]
	      Raise or lower max report limit of IP addresses for -i. -1 removes limit.

       -I , --info
	      Show  Information:  processes,  uptime, memory, IRC client (or shell type if run in shell, not
	      IRC), inxi version. See -Ix, -Ixx, and -Ia for  extra  information  (init	 type/version,	run‐
	      level/target, packages).

	      Note:  if	 -m  or	 -tm  are  active,  the	 memory item will show in the main Memory: report of
	      -m/-tm/, not in Info:.

	      See -m for explanation of Memory: fields and values..

       -j, --swap
	      Shows all active swap types (partition, file, zram). When this option  is	 used,	swap  parti‐
	      tion(s) will not show on the -P line to avoid redundancy.

	      To show partition labels or UUIDs (when available and relevant), use with -l or -u.

       -J , --usb
	      Show  USB	 data for attached Hubs and Devices. Hubs also show number of ports. Be aware that a
	      port is not always external, some may be internal, and either used or unused (for	 example,  a
	      motherboard USB header connector that is not used).

	      Hubs and Devices are listed in order of BusID.

	      BusID is generally in this format: BusID-port[.port][.port]:DeviceID

	      Device ID is a number created by the kernel, and has no necessary ordering or sequence connec‐
	      tion,  but can be used to match this output to lsusb values, which generally shows BusID / De‐
	      viceID (except for tree view, which shows ports).

	      Examples: Device-3: 4-3.2.1:2 or Hub: 4-0:1

	      The rev: 2.0 item refers to the USB revision number, like 1.0 or 3.1.

	      Use -Jx for basic Si base 10 bits/s speed, -Jxx for Si and IEC base 2 Bytes/s speeds. -Ja adds
	      USB mode.

       -l , --label
	      Show partition labels. Use with -j, -o, -p, and -P to show partition labels. Requires  one  of
	      those options.

	      Sample: -ojpl.

       -L, --logical
	      Show  Logical  volume information, for LVM, LUKS, bcache, etc. Shows size, free space (for LVM
	      VG). For LVM, shows Device-[xx]: VG: (Volume Group) size/free, LV-[xx]  (Logical	Volume).  LV
	      shows type, size, and components.	 Note that components are made up of either containers (aka,
	      logical devices), or physical devices. The full report requires doas/sudo/root.

	      Logical  block devices can be thought of as devices that are made up out of either other logi‐
	      cal devices, or physical devices. inxi does its best to show what each logical device is	made
	      out  of.	RAID  devices form a subset of all possible Logical devices, but have their own sec‐
	      tion, -R.

	      If -R is used with -Lxx, -Lxx will not show RAID information for LVM RAID devices	 since	it's
	      redundant. If -R is not used, a simple RAID line will appear for LVM RAID in -Lxx.

	      -Lxx  also shows all components and devices. Note that since components can go in many levels,
	      each level per primary component is indicated by either another 'c', or ends with	 a  'p'	 de‐
	      vice,  the physical device. The number of c's or p's indicates the depth, so you can see which
	      component belongs to which.

	      -L shows only the top level components/devices (like -R).	 -La  shows  component/device  size,
	      maj:min ID, mapped name (if applicable), and puts each component/device on its own line.

	      Sample:

		Device-10: mybackup type: LUKS dm: dm-28 size: 6.36 GiB Components:
		  c-1: md1 cc-1: dm-26 ppp-1: sdj2 cc-2: dm-27 ppp-1: sdk2
		LV-5: lvm_raid1 type: raid1 dm: dm-16 size: 4.88 GiB
		  RAID: stripes: 2 sync: idle copied: 100% mismatches: 0
		Components: c-1: dm-10 pp-1: sdd1 c-2: dm-11 pp-1: sdd1 c-3: dm-13
		  pp-1: sde1 c-4: dm-15 pp-1: sde1

	      It is easier to follow the flow of components and devices using -y1. In this example, there is
	      one  primary  component  (c-1),  md1,  which  is made up of two components (cc-1,2), dm-26 and
	      dm-27. These are respectively made from physical devices (p-1) sdj2 and sdk2.

	      Device-10: mybackup
		maj-min: 254:28
		type: LUKS
		dm: dm-28
		size: 6.36 GiB
		Components:
		  c-1: md1
		  maj-min: 9:1
		  size: 6.37 GiB
		  cc-1: dm-26
		    maj-min: 254:26
		    mapped: vg5-level1a
		    size: 12.28 GiB
		    ppp-1: sdj2
		      maj-min: 8:146
		      size: 12.79 GiB
		  cc-2: dm-27
		    maj-min: 254:27
		    mapped: vg5-level1b
		    size: 6.38 GiB
		    ppp-1: sdk2
		      maj-min: 8:162
		      size: 12.79 GiB

	      Other types of logical block handling like LUKS, bcache show as:

	      Device-[xx] [name/id] type: [LUKS|Crypto|bcache]:

       -m , --memory
	      Memory (RAM) data. Does not display with -b or -e unless you use	-m  explicitly.	 Ordered  by
	      system  board  physical system memory array(s) (Array-[number]), and individual memory devices
	      (Device-[number]).  Physical memory array data shows array capacity, number  of  devices	sup‐
	      ported,  and Error Correction information. Devices shows locator data (highly variable in syn‐
	      tax), type (eg: type: DDR3)size, speed.

	      Note: inxi -m uses either dboot (BSDs), dmidecode, or udevadm (Linux) to collect the RAM data.
	      Not all boards have DMI RAM data available.

	      dmidecode must be run as root (or start inxi with doas/sudo), unless you figure out how to set
	      up doas/sudo to permit dmidecode to read /dev/mem as user.

	      udevadm can be run by non-superuser, or if dmidecode is not installed (Linux only). It  has  a
	      slightly less reliable dmi table report, and does not seem to support more than 1 board memory
	      array, but is pretty good. Voltages may be wrong however.

	      Both  dmidecode  and udevadm need a DMI table with RAM data to create the report. Most SBC/SOC
	      boards don't have dmi based RAM data. But most other machines do.

	      speed and bus-width will not show if no module installed is found in size.

	      Note: If -m is triggered RAM available/used report will appear in this section, not in  -I  or
	      -tm items.

	      Because dmi source data is somewhat unreliable, inxi will try to make best guesses. If you see
	      (check)  after  the  capacity  number,  you  should check it with the specifications. (est) is
	      slightly more reliable, but you should still check the real specifications before buying	RAM.
	      Unfortunately  there  is	nothing inxi can do to get truly reliable data about the system RAM;
	      maybe one day the kernel devs will put this data into /sys, and make it real data, taken	from
	      the  actual  system,  not dmi data. For most people, the data will be right, but a significant
	      percentage of users will have either a wrong max module size, if available, or max capacity.

	      Under dmidecode/udevadm, speed: is the expected speed of the memory (spec:, what is advertised
	      on the memory spec sheet) and actual:, what the actual speed is now. To handle this, if  speed
	      and configured speed values are different, you will see this instead:

	      speed: spec: [specified speed] MT/s actual: [actual] MT/s

	      Also, if DDR, and speed in MHz, will change to: speed: [speed] MT/s ([speed] MHz)

	      If  the detected speed is logically absurd, like 1 MT/s or 69910 MT/s, adds: note: check. Sam‐
	      ple:

	      Memory:
		System RAM: total: 32 GiB note: est. available: 31.38 GiB
		  used: 20.65 GiB (65.8%)
		Array-1: capacity: N/A slots: 4 note: check EC: N/A
		Device-1: DIMM_A1 type: DDR3 size: 8 GiB speed: 1600 MT/s (800 MHz)
		Device-2: DIMM_A2 type: DDR3 size: 8 GiB speed: spec: 1600 MT/s (800 MHz)
		  actual: 61910 MT/s (30955 MHz) note: check
		Device-3: DIMM_B1 type: DDR3 size: 8 GiB speed: 1600 MT/s (800 MHz)
		Device-4: DIMM_B2 type: DDR3 size: 8 GiB speed: spec: 1600 MT/s (800 MHz)
		  actual: 2 MT/s (1 MHz) note: check

	      See --memory-modules and --memory-short if you want a shorter report.

	      Notes on System RAM: / Memory: report item:

	      * total: and igpu: do not show for short form.

	      * The total: can come from several possible sources:

	      - If not superuser, and if /sys/devices/system/memory exists, it will estimate the  total	 RAM
	      based  on	 how many RAM blocks and their size. Sometimes the block count is not an exact match
	      to installed RAM, and inxi will attempt to guess the actual RAM amount, except for virtual ma‐
	      chines. When it synthesizes the actual physical RAM total, it will show note: est..

	      Note that not all kernels are compiled to support generating this /sys directory (kernel needs
	      to be compiled with CONFIG_MEMORY_HOTPLUG).

	      - For OpenBSD and not superuser, the total comes from the detected RAM in dboot, if available.

	      - If superuser, and if -m used, it comes from the dmidecode RAM totals if	 available,  and  if
	      not,  it comes from counting up the System RAM ranges in /proc/iomem (Linux only), then round‐
	      ing up, since that total is usually slightly under the actual physical RAM total. If  inxi  is
	      unsure about the total, it will show note: est..

	      If no total data found, shows total: N/A.

	      *	 The available: item is the total installed RAM minus some reserved and kernel code RAM (and
	      in some cases iGPU assigned main system RAM) that is allocated on system	boot,  and  thus  is
	      generally less than the actual physical RAM installed. This is called MemTotal in free/meminfo
	      even though it isn't, though it is the total available the kernel has to work with.

	      * The used: is the percent of the available RAM used, NOT of the total physical RAM.

	      *	 The  igpu:  item  either  comes  from Raspberry Pi gpu RAM, or from /proc/iomem. The latter
	      source is Linux + superuser only, and is not guaranteed to be accurate, but sometimes is. That
	      is for iGPU system RAM used, not for standalone GPUs with their  own  internal  RAM.  Not	 all
	      types of internal VRAM are detectable, it depends on how the hardware assigns RAM to iGPU.

	      Raspberry	 Pi  uses  vcgencmd get_mem gpu to get gpu RAM amount, if user is in video group and
	      vcgencmd is installed.

       --memory-modules, --mm
	      Memory (RAM) data. Show only RAM arrays and modules in Memory report.  Skip empty	 slots.	 See
	      -m.

       --memory-short, --ms
	      Memory (RAM) data. Show a one line RAM report in Memory. See -m.

	      Sample: Report: arrays: 1 slots: 4 modules: 2 type: DDR4

       -M , --machine
	      Show  machine  data.  Device, Motherboard, BIOS, and if present, System Builder (Like Lenovo).
	      Older systems/kernels without the required /sys data can use dmidecode instead, run  as  root.
	      If  using	 dmidecode,  may also show BIOS/UEFI revision as well as version. --dmidecode forces
	      use of dmidecode data instead of /sys. Will also attempt to show if the system was  booted  by
	      BIOS,  UEFI,  or UEFI [Legacy], the latter being legacy BIOS boot mode in a system board using
	      UEFI.

	      Device information requires either /sys or dmidecode. Note that other-vm? is a type that means
	      it's usually a VM, but inxi failed to detect which type, or positively confirm which VM it is.
	      Primary VM identification is via systemd-detect-virt but fallback tests that should also	sup‐
	      port  some  BSDs are used. Less commonly used or harder to detect VMs may not be correctly de‐
	      tected. If you get an incorrect report, post an issue and we'll get it fixed if possible.

	      Due to unreliable vendor data, device type  will	show:  desktop,	 laptop,  notebook,  server,
	      blade, plus some obscure stuff that inxi is unlikely to ever run on.

       -n , --network-advanced
	      Show  Advanced Network device information in addition to that produced by -N. Shows interface,
	      speed, MAC ID, state, etc.

       -N , --network
	      Show Network device(s) information, including device driver. With -x, shows Bus ID, Port	num‐
	      ber.

       -o , --unmounted
	      Show  unmounted partition information (includes UUID and LABEL if available).  Shows file sys‐
	      tem type if you have lsblk installed (Linux only). For BSD/GNU Linux: shows file	system	type
	      if file is installed, and if you are root or if you have added to /etc/sudoers (sudo v. 1.7 or
	      newer):

	       ALL = NOPASSWD: /usr/bin/file (sample)

	      doas users: see man doas.conf for setup.

	      Does not show components (partitions that create the md-raid array) of md-raid arrays.

	      To show partition labels or UUIDs (when available and relevant), use with -l or -u.

       -p , --partitions-full
	      Show full Partition information (-P plus all other detected mounted partitions).

	      To show partition labels or UUIDs (when available and relevant), use with -l or -u.

       --partitions-sort, --ps [dev-base|fs|id|label|percent-used|size|uuid|used]
	      Change  default  sort  order  of partition report. Corresponds to PARTITION_SORT configuration
	      item. These are the available sort options:

	      dev-base - /dev partition identifier, like /dev/sda1.  Note that it's an alphabetic  sort,  so
	      sda12 is before sda2.

	      fs  - Partition filesystem. Note that sorts will be somewhat random if all filesystems are the
	      same.

	      id - Mount point of partition (default).

	      label - Label of partition. If partitions have no labels, sort will be random.

	      percent-used - Percentage of partition size used.

	      size - KiB size of partition.

	      uuid - UUID of the partition.

	      used - KiB used of partition.

       -P , --partitions
	      Show basic Partition information.	 Shows, if detected: / /boot /boot/efi /home /opt /tmp	/usr
	      /usr/home	 /var  /var/tmp	 /var/log  (for	 android, shows /cache /data /firmware /system).  If
	      --swap is not used, shows active swap partitions (never shows file or zram type swap). Use  -p
	      to see all mounted partitions.

	      To show partition labels or UUIDs (when available and relevant), use with -l or -u.

       --processes
	      See -t.

       -r , --repos
	      Show distro repository data. Currently supported repo types:

	      APK (Alpine Linux + derived versions)

	      APT  (Debian,  Ubuntu  +	derived versions, as well as rpm based apt distros like PCLinuxOS or
	      Alt-Linux)

	      CARDS (NuTyX + derived versions)

	      EMERGE (T2 SDE, svn target URL)

	      EOPKG (Solus)

	      NETPKG (Zenwalk/Slackware)

	      NIX (NixOS + other distros as alternate package manager)

	      PACMAN (Arch Linux, KaOS + derived versions)

	      PACMAN-G2 (Frugalware + derived versions)

	      PISI (Pardus + derived versions)

	      PKG (OpenBSD, FreeBSD, NetBSD + derived OS types)

	      PORTAGE (Gentoo, Sabayon + derived versions)

	      PORTS (OpenBSD, FreeBSD, NetBSD + derived OS types)

	      SBOPKG (Slackware + derived versions)

	      SBOUI (Slackware + derived versions)

	      SCRATCHPKG (Venom + derived versions)

	      SLACKPKG (Slackware + derived versions)

	      SLAPT_GET (Slackware + derived versions)

	      SLPKG (Slackware + derived versions)

	      TCE (TinyCore)

	      TAZPKG (Slitaz)

	      URPM (Mandriva, Mageia + derived versions)

	      XBPS (Void)

	      YUM/ZYPP (Fedora, Red Hat, Suse + derived versions)

	      More will be added as distro data is collected. If yours is missing please show us how to	 get
	      this information and we'll try to add it.

	      See -rx, -rxx, and -ra for installed package count information.

       -R , --raid
	      Show RAID data. Shows RAID devices, states, levels, device/array size, and components. See ex‐
	      tra data with -x / -xx.

	      md-raid: If device is resyncing, also shows resync progress line.

	      Note:  supported	types:	lvm raid, md-raid, softraid, ZFS, and hardware RAID.  Other software
	      RAID types may be added, if the software RAID can be made to give the required output.

	      The component ID numbers work like this: mdraid: the numerator is the actual mdraid  component
	      number; lvm/softraid/ZFS: the numerator is auto-incremented counter only. Eg. Online: 1: sdb1

	      If  hardware  RAID  is detected, shows basic information. Due to complexity of adding hardware
	      RAID device disk / RAID reports, those will only be added if there is demand,  and  reasonable
	      reporting tools.

       --recommends
	      Checks  inxi  application dependencies and recommends, as well as directories, then shows what
	      package(s) you need to install to add support for each feature.

       -s , --sensors
	      Show report from sensors if sensors  installed/configured:  Motherboard/CPU/GPU  temperatures;
	      detected	fan  speeds. GPU temperature when available. Nvidia shows screen number for multiple
	      screens. IPMI sensors are also used (root required) if present.

	      See Advanced options --sensors-use or --sensors-exclude if you want to use only  a  subset  of
	      all sensors, or exclude one (currently only for lm-sensors and /sys sourced data).

	      For current Linux, will fallback gracefully to using /sys/class/hwmon as sensor data source if
	      lm-sensors  is not installed. You can compare the two by using --force sensors-sys option with
	      -s.

       --slots
	      Show PCI slots with type, speed, and status information.

       --swap
	      See -j

       -S , --system
	      Show System information: host name, kernel, desktop environment (if in X),  distro.  With	 -xx
	      show  dm - or startx - (only shows if present and running if out of X), and if in X, with -xxx
	      show more desktop info, e.g. taskbar or panel.

       -t , --processes
	      [c|m|cm|mc NUMBER] Show processes. If no arguments, defaults to cm. If followed by  a  number,
	      shows that number of processes for each type (default: 5; if in IRC, max: 5)

	      Make sure that there is no space between letters and numbers (e.g. write as -t cm10).

       -t c   - CPU only. With -x, also shows memory for that process on same line.

       -t m   -	 memory	 only. With -x, also shows CPU for that process on same line.  If the -I or -m lines
	      are not triggered, will also show the system RAM used/total information.

	      See -m for explanation of System RAM: fields and values.

       -t cm  - CPU+memory. With -x, shows also CPU or memory for that process on same line.

       -u , --uuid
	      Show UUIDs. Use with -j, -M -o, -p, and -P to show partition/system board (not common)  UUIDs.
	      Requires one of those options.

	      Sample: -opju.

       -U , --update
	      Note - Maintainer may have disabled this function.

	      If inxi -h has no listing for -U then it's disabled.

	      Auto-update  inxi or pinxi. Note: if you installed as root, you must be root to update, other‐
	      wise user is fine. Also installs / updates current man page to: /usr/local/share/man/man1	 (if
	      /usr/local/share/man/  exists  AND there is no inxi man page in /usr/share/man/man1, otherwise
	      it goes to /usr/share/man/man1). This requires that you be root to write	to  that  directory.
	      See --man or --no-man to force or disable man install.

	      -U accepts the following options (inxi and pinxi):

	      No arg - Get from main git branch.

	      3	 -  Get	 the  dev server (smxi.org) version. Be aware that pinxi when taken from here can be
	      very unstable during active development! The inxi version is the stable master branch version.
	      Also useful to update if you have SSL issues and --no-ssl works.

	      4 - Get the dev server (smxi.org) FTP version (same as 3	version).  Use	if  SSL	 issues	 and
	      --no-ssl doesn't work. For very old systems with SSL 1, you will probably need to use this op‐
	      tion,  which  bypasses  HTTP  downloading, and uses straight FTP to get the file from smxi.org
	      server.

	      [http|https|ftp] - Get a version of $self_name from your own server.  Use	 the  full  download
	      path, e.g.

	      inxi -U https://myserver.com/inxi

	      For failed downloads, use the debug option --dbg 1 in addition to get more verbose failure re‐
	      ports.

       --usb
	      See -J.

       -v , --verbosity
	      Report  verbosity	 levels. If no verbosity level number is given, 0 is assumed.  Should not be
	      used with -b or -e since the option that triggers the most features will override the one with
	      fewer.

	      Supported levels: 0-8

	      Can be used together with other options.

	      Examples: inxi -v 4  or inxi -v4 or inxi --verbosity 4 or inxi -zv8

       -v 0   - Simple report. Same as: inxi (with no options).

       -v 1   - Basic report: System (-S); basic CPU (cores, type, average clock speed, and min/max  speeds,
	      if available); Graphics (-G); basic Disk; Info (-I).

       -v 2   - Adds: Machine (-M); Battery (-B) (if available); Networking devices (-N). Same as inxi -b.

       -v 3   - Adds: full CPU (-C); advanced network (-n); triggers -x extra data option.

       -v 4   - Adds: full Drive (-D); system Partitions (-P) (if present): / /home /var/ /boot.

       -v 5   -	 Adds:	memory/RAM  (-m); audio device (-A); bluetooth (-E) (if present); RAID data (-R) (if
	      present); partition label (-l) and UUID (-u); swap (-j); sensors (-s),

       -v 6   - Adds: full mounted partitions (-p); unmounted partitions  (-o);	 optical  drives  (-d);	 USB
	      (-J); triggers -xx extra data option.

       -v 7   -	 Adds: full CPU flags/features (-f); advanced network IP (-i); triggers -xxx; forces battery
	      (-B), bluetooth (-E), Logical devices (-L) and RAID (-R) regardless whether data was found for
	      them or not.

       -v 8   - Adds: PCI slots (--slots); GPU advanced EDID data (--edid); Repos  (-r);  Processes  (-tcm);
	      triggers -a admin data option. This is all the available system data.

       --version, --vf
	      inxi full version and license information. Prints information then exits.

       --version-short, --vs
	      inxi  single  line version information. Prints information if not short form (which shows ver‐
	      sion info already). Does not exit unless used without any other options. Can be used with nor‐
	      mal line options, and prints version info line as first line of output.

       -w , --weather [location]
	      DO NOT USE THIS FEATURE FOR AUTOMATED WEATHER UPDATES! Automated or excessive use will lead to
	      your being blocked from any further access. This feature is not meant for widget type  weather
	      monitoring,  or  Conky type use. It is meant to get weather when you need to see it, for exam‐
	      ple, on a remote server. If you did not type the weather option in manually, it's an automated
	      request.

	      Adds weather line for your current location (by IP address) if no location requested.  To	 get
	      weather for an alternate location, add [location]. See also -x, -xx, -xxx options. Please note
	      that your distribution's maintainer may chose to disable this feature.

	      With  optional  [location]  -  get weather/time for an alternate location.  Accepts postal/zip
	      code[, country], city,state pair, or latitude,longitude.	Note: city/country/state names	must
	      not  contain  spaces.  Replace spaces with the '+' sign. Don't place spaces around any commas.
	      Postal code is not reliable except for North America and maybe the UK. Try postal	 codes	with
	      and  without  country  code  added.  Note	 that City,State applies only to USA, otherwise it's
	      City,Country. If country name (english) does not work, try  2  character	country	 code  (e.g.
	      Spain: es; Great Britain: gb).

	      See https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 for current 2 letter country codes.

	      Use only ASCII letters in city/state/country names.

	      Examples:	 -w  OR	 -w 95623,us OR -w Boston,MA OR -w 45.5234,-122.6762 OR -w new+york,ny OR -w
	      bodo,norway.

       --weather-source, --ws [source-id]
	      [1-9] Switches weather data source. Possible values are 1-9.  1-4 will  generally	 be  active,
	      and 5-9 may or may not be active, so check. 1 may not support city / country names with spaces
	      (even if you use the + sign instead of space). 2 offers pretty good data, but may not have all
	      small city names for -w location.

	      Please note that the data sources are not static per value, and can change any time, or be re‐
	      moved, so always test to verify which source is being used for each value if that is important
	      to  you.	Data sources may be added or removed on occasions, so try each one and see which you
	      prefer. If you get unsupported source message, it means that number has not been implemented.

       --weather-unit, --wu [unit]
	      [m|i|mi|im] Sets weather units to metric (m), imperial (i), metric (imperial)  (mi,  default),
	      imperial (metric) (im). If metric or imperial not found,sets to default value, or N/A.

FILTER OPTIONS
       The following options allow for applying various types of filtering to the output.

       --filter , --filter-override
	      See -z, -Z.

       --filter-label, --filter-uuid, --filter-vulnerabilities
	      See --zl, --zu, --zv.

       --host Turns on hostname in System line. Overrides inxi config file value (if set):

	      SHOW_HOST='false' - Same as: SHOW_HOST='true'

	      This is an absolute override, the host will always show no matter what other switches you use.

       --no-host
	      Turns  off hostname in System line. This is default when using -z, for anonymizing inxi report
	      for posting on forums or IRC. Overrides configuration value (if set):

	      SHOW_HOST='true' - Same as: SHOW_HOST='false'

	      This is an absolute override, the host will not show no matter what other switches you use.

       -z, --filter
	      Adds security filters for IP addresses, serial numbers, MAC, location (-w), and user home	 di‐
	      rectory name. Removes Host:. On by default for IRC clients.

       --za, --filter-all
	      Shortcut to trigger -z, --zl, --zu, --zv. All the filters, that is.

       --zl, --filter-label
	      Filter  partition	 label	names  from -j, -o, -p, -P, and -Sa (root=LABEL=...). Generally only
	      useful in very specialized cases.

       --zu, --filter-uuid
	      Filter partition UUIDs from -j, -o, -p, -P, -Sa (root=UUID=...), -Mxxx board UUID.  Useful  in
	      specialized cases.

       --zv, --filter-v, --filter-vulnerabilities
	      Filter Vulnerabilities report from -Ca. Generally only useful in very specialized cases.

       -Z , --filter-override , --no-filter
	      Absolute	override for output filters. Useful for debugging networking issues in IRC for exam‐
	      ple.

OUTPUT CONTROL OPTIONS
       The following options allow for modifying the output in various ways.

       -c , --color [0-42]
	      Set color scheme. If no scheme number is supplied, 0 is assumed.

       -c  [94-99]
	      These color selectors run a color selector option prior to inxi starting which  lets  you	 set
	      the config file value for the selection.

	      NOTE:  All configuration file set color values are removed when output is piped or redirected.
	      You must use the explicit runtime -c [color number] option if  you  want	color  codes  to  be
	      present in the piped/redirected output.

	      Color selectors for each type display (NOTE: IRC and global only show safe color set):

       -c 94  - Console, out of X.

       -c 95  - Terminal, running in X - like xTerm.

       -c 96  - GUI IRC, running in X - like XChat, Quassel, Konversation etc.

       -c 97  - Console IRC running in X - like irssi in xTerm.

       -c 98  - Console IRC not in X.

       -c 99  - Global - Overrides/removes all settings.

	      Setting a specific color type removes the global color selection.

       --export [json|screen|xml]
	      See --output.

       --export-file [full path to output fil]
	      See --output-file.

       --indent [11-xx]
	      Change  primary  wide indent width. Generally useless. Only applied if output width is greater
	      than max wrap width (see --max-wrap). Use configuration item INDENT to make permanent.

       --indents [0-10]
	      Change primary wrap mode, second, and -y1 level indents. First indent level  only	 applied  if
	      output  width is less than max wrap width (see --max-wrap). 0 disables all wrapped indents and
	      all second level indents. Use configuration item INDENTS to make permanent.

       --max-wrap, --wrap-max [integer]
	      Overrides default or configuration set line starter wrap width value. Wrap max is the  maximum
	      width  that  inxi will wrap line starters (e.g. Info:) to their own lines, with data lines in‐
	      dented default 2 columns (use --indents to change).

	      If terminal/console width or --width is less than wrap width, wrapping of line starter occurs.
	      If 80 or less, no wrapping will occur. Overrides internal default value (110) and user config‐
	      uration value MAX_WRAP.

       --output,  --export [json|screen|xml]
	      Change data output type. Requires --output-file. screen is the inxi default mode, and is	use‐
	      ful only to override a configuration file value.

	      See  this	 page  https://smxi.org/docs/inxi-json-xml-output.htm BEFORE you post an issue about
	      not understanding, or being unable to use, the output format! That gives a fairly complete ex‐
	      planation of what the output means, and how to work with it. It is not a tutorial, and it will
	      not teach you to program, if you don't know how to  work	with  json/xml	structures  using  a
	      proper language, then this feature is not meant for you.

       --output-file,  --export-file [full path to output file|print]
	      This is the file to write the output to. The given directory path must exist.

	      To print the data type results to stdout, use print.

       --separator, --sep [character(s)]
	      Change  the  default report key: value separator : to something else. Make permanent with con‐
	      figuration item SEP2_CONSOLE.

       --wrap-max [integer]
	      See --max-wrap.

       -y, --width [integer]
	      This is an  absolute  width  override  which  sets  the  output  line  width  max.   Overrides
	      COLS_MAX_IRC,  COLS_MAX_NO_DISPLAY, COLS_MAX_CONSOLE configuration items, or the actual widths
	      of the terminal.

	      * -y - sets default width of 80 columns.
	      * -y [60-xxx] - sets width to given number. Must be 60 or more.
	      * -y 1 -	switches to a single indented key/value pair per line, and  removes  all  long	line
	      wrapping (similar to dmidecode output). Not recommended for use with -Y;
	      * -y -1 - removes width limits (if assigned by configuration items).

	      Examples:
	      inxi -exx -y 130
	      inxi -exxy
	      inxi -bay1

       -Y, --height, --less [-3-[integer]
	      Control  output  height.	Useful when in console, and scrollback not available.  Breaks output
	      flow based on values provided.

	      * -Y 0 or -Y - Set default max height to terminal height.
	      * -Y [1-xxx] - set max output block height height in lines.
	      * -Y -1 - Print out one primary data item block (like CPU:, System:) at  a  time.	 Useful	 for
	      very long outputs like -ea, -v8, etc. Not available for -h.
	      *	 -Y -2 - Do not disable output colors when redirected or piped to another program. Useful if
	      piping output to less -R for example. This does not limit the height otherwise since  the	 ex‐
	      pectation it is being piped to another program like less which will handle that.
	      * -Y -3 - Restore default unlimited output lines if LINES_MAX configuration item set.

	      Recommended  to use the following for very clean up and down scrollable output out of display,
	      while retaining the color schemes, which are normally removed with piping or redirect:

	      pinxi -v8Y -2 | less -R

	      Note: since it's not possible for inxi to know how many actual terminal lines are	 being	used
	      by  terminal  wrapped  output,  with  -y 1 , it may be better in general to use a fixed height
	      like:

	      -y 1 -Y 20 instead of: -y 1 -Y

EXTRA DATA OPTIONS
       These options can be triggered by one or more -x.  Alternatively, the -v options trigger them in	 the
       following way: -v 3 adds -x; -v 6 adds -xx; -v 7 adds -xxx

       These  extra  data triggers can be useful for getting more in-depth data on various options. They can
       be added to any long form option list, e.g.: -bxx or -Sxxx

       There are 3 extra data levels:
       -x, -xx, -xxx
       OR
       --extra 1, --extra 2, --extra 3

       The following details show which lines / items display extra information for each extra data level.

       -x -A  - Adds (if available and/or relevant) vendor: item, which shows specific vendor [product]	 in‐
	      formation.

	      - Adds version/port(s)/driver version (if available) for each device.

	      - Adds PCI/USB ID of each device.

	      - Adds inactive sound servers/APIs, if detected.

       -x -B  - Adds battery health: (uncommon. If other than 'good', always shows for -B.

	      - Adds battery temperature, in C (uncommon).

	      - Adds vendor/model, battery status (if battery present).

	      -	 Adds  attached battery powered peripherals (Device-[number]:) if detected (keyboard, mouse,
	      etc.).

	      - Adds battery volts:, min: voltages. Note that if difference is	critical,  that	 is  current
	      voltage is too close to minimum voltage, shows without -x.

       -x -C  - Adds bogomips to CPU speed report (if available).

	      -	 Adds L1: and L3: cache types if either are present/available. For BSD or legacy Linux, uses
	      dmidecode + doas/sudo/root. Force use of dmidecode cache values by  adding  --dmidecode.	This
	      will override /sys based cache data, which tends to be better, so in general don't do that.

	      - Adds boost: [enabled|disabled] if detected, aka turbo. Not all CPUs have this feature.

	      - Adds CPU Flags-basic: (short list). Use -f to see full flag/feature list.

	      -	 Adds  CPU microarchitecture + revision (e.g. Sandy Bridge, K8, ARMv8, P6, etc.). Only shows
	      data if detected. Newer microarchitectures will have to be added as they appear,	and  require
	      the CPU family ID, model ID, and stepping.

	      -	 Adds, if smt (Simultaneous MultiThreading) is available but disabled, after type: data smt:
	      disabled. type: MT means it's enabled. See -Cxxx.

	      Examples:
	      arch: Sandy Bridge rev: 2
	      arch: K8 rev.F+ rev: 2

	      If unable to non-ambiguosly determine architecture, will show something like: arch: Amber Lake
	      note: check rev: 9

	      - Adds CPU highest speed after avg: [speed] high: [speed] if greater than	 1  core  and  cores
	      have different speeds. Linux only.

       -x -d  - Adds more items to Features line of optical drive; dds rev version to optical drive.

       -x -D  - Adds drive temperature with disk data.

	      Method  1:  Systems  running  Linux  kernels  ~5.6 and newer should have drivetemp module data
	      available. If so, drive temps will come from /sys data for each drive, and  will	not  require
	      root  or	hddtemp. This method is MUCH faster than using hddtemp. Note that NVMe drives do not
	      require drivetemp.

	      If your drivetemp module is not enabled, enable it:

	      modprobe drivetemp

	      Once enabled, add drivetemp to /etc/modules or /etc/modules-load.d/***.conf so it starts auto‐
	      matically.

	      If you see drive temps running as regular user  and  you	did  not  configure  system  to	 use
	      doas/sudo hddtemp, then your system supports this feature. If no /sys data is found, inxi will
	      try  to  use  hddtemp methods instead for that drive.  Hint: if temp is /sys sourced, the temp
	      will be to 1 decimal, like 34.8, if hddtemp sourced, they will be integers.

	      Method 2: if you have hddtemp installed, if you are root or if you have added to	/etc/sudoers
	      (sudo v. 1.7 or newer):

	       ALL = NOPASSWD: /usr/sbin/hddtemp (sample)

	      doas users: see man doas.conf for setup.

	      You can force use of hddtemp for all drives using --hddtemp.

	      -	 If  free  LVM	volume	group size detected (root required), show lvm-free: on Local Storage
	      line. This is how much unused space the VGs contain, that is, space not assigned to LVs.

       -x -E (--bluetooth)
	      - Adds (if available and/or relevant) vendor: item, which shows specific vendor [product]	 in‐
	      formation.

	      - Adds PCI/USB Bus ID of each device.

	      - Adds driver version (if available) for each device.

	      - Adds (if available, btmgmt, hciconfig only) LMP (HCI if no LMP data, and HCI if HCI/LMP ver‐
	      sions are different) version (if available) for each HCI ID.

       -x -G  - Adds GPU micro-architecture (if AMD/Intel/Nvidia and detected).

	      - Adds PCI/USB ID of each device.

	      -	 Adds (if available and/or relevant) vendor: item, which shows specific vendor [product] in‐
	      formation.

	      - X.org: Adds (for single GPU, nvidia driver) screen number that GPU is running on.

	      - Adds device temperature for each discrete device (Linux only).

	      - For EGL, adds active/inactive platform report.

	      - For OpenGL (X.org only) adds direct render status, GLX version.

	      - For Vulkan, adds device count.

       -x -i  - Adds IP v6 additional scope data, like Global, Site, Temporary for each interface.

	      Note that there is no way we are aware of to filter out the deprecated IP v6 scope site/global
	      temporary addresses from the output of ifconfig. The ip tool shows that clearly.

	      ip-v6-temporary - (ip tool only), scope global temporary.	 Scope global  temporary  deprecated
	      is not shown

	      ip-v6-global  - scope global (ifconfig will show this for all types, global, global temporary,
	      and global temporary deprecated, ip shows it only for global)

	      ip-v6-link - scope link (ip/ifconfig) - default for -i.

	      ip-v6-site - scope site (ip/ifconfig). This has been deprecated in IPv6, but still exists. if‐
	      config may show multiple site values, as with global temporary, and  global  temporary  depre‐
	      cated.

	      ip-v6-unknown - unknown scope

       -x -I  -	 Adds current init system (and init rc in some cases, like OpenRC).  With -xx, shows init/rc
	      version number, if available.

	      - Adds default system compilers. With -xx, also show other installed compiler versions.

	      - Adds current runlevel/target (not available with all init systems).

	      - Adds total packages discovered in system. See -xx and -a for per package  manager  type	 re‐
	      ports. Moves to Repos if -rx.

	      If  your	package	 manager  is not supported, please file an issue and we'll add it.  That re‐
	      quires the full output of the query or method to discover all installed packages on your	sys‐
	      tem, as well of course as the command or method used to discover those.

	      - If in shell (i.e. not in IRC client), adds shell version number, if available.

       -x -j (--swap)
	      Add mapper:. See -x -o.

       -x -J (--usb)
	      - For Devices, adds driver(s).

	      - Adds, if available, USB speed in base 10 bits/s (Si) units Mb/s or Gb/s (may be incorrect on
	      BSDs  due	 to  non  reliable data source). These are base 10 bits per second. This unit corre‐
	      sponds to the standard units the USB consortium uses to indicate speeds, but not to  how	most
	      of the rest of your system reports sizes. Use -Jxx to add base 2 IEC Byte/second speeds.

       -x -L (--logical)
	      -	 Adds  dm:  dm-x to VG > LV and other Device types. This can help tracking down which device
	      belongs to what.

       -x -m, --memory-modules
	      - If present, adds maximum memory module/device size in the Array	 line.	 Only  some  systems
	      will have this data available. Shows estimate if it can generate one.

       -x -N  -	 Adds (if available and/or relevant) vendor: item, which shows specific vendor [product] in‐
	      formation.

	      - Adds version/port(s)/driver version (if available) for each device;

	      - Adds PCI/USB ID of each device.

	      - Adds device temperature for each discrete device (Linux only).

       -x -o, -x -p, -x -P
	      - Adds mapper: (the /dev/mapper/ partition ID) if mapped partition.

	      Example: ID-4: /home ... dev: /dev/dm-6 mapped: ar0-home

       -x -r  - Adds Package info. See -Ix

       -x -R  - md-raid: Adds second RAID Info	line  with  extra  data:  blocks,  chunk  size,	 bitmap	 (if
	      present). Resync line, shows blocks synced/total blocks.

	      - Hardware RAID: Adds driver version, Bus ID.

       -x -s  - Adds basic voltages: 12v, 5v, 3.3v, vbat (ipmi, lm-sensors / /sys/class/hwmon if present).

       -x -S  - Adds Kernel compiler version.

	      -	 Adds  to  Distro: base: if detected. System base will only be seen on a subset of distribu‐
	      tions. The distro must be both derived from a parent distro (e.g. Mint from Ubuntu),  and	 ex‐
	      plicitly	added to the supported distributions for this feature. Due to the complexity of dis‐
	      tribution identification, these will only be added as relatively solid methods are  found	 for
	      each distribution system base detection.

       -x --slots
	      - Adds slot bus-ID:, if found.

       -x -t (--processes)
	      - Adds memory use report to CPU (-xt c), and CPU use to memory (-xt m).

       -x -w  - Adds humidity and barometric pressure.

	      - Adds wind speed and direction.

       -xx -A - Adds vendor:product ID for each device.

	      - Adds PCIe speed and lanes item (Linux only, if detected).

	      - Adds for USB devices USB rev, speed, lanes (lanes Linux only).

	      - Adds with: [item] status: [state/plugin] helper daemons/plugins for the sound API/server.

       -xx -B - Adds current power use, in watts (if available).

	      - Adds serial number.

	      - Adds a charging: container for all charging specific information.

	      -	 Adds charge cycles (NOTE: there appears to be a problem with the Linux kernel obtaining the
	      cycle count, so this often shows 0. There's nothing that can be done about  this	glitch,	 the
	      data  is	simply not available as of 2018-04-03), Since 0 isn't a real value, shows N/A if not
	      found or 0.

       -xx -D - Adds HDD/SSD drive serial number.

	      - Adds drive speed (if available). This is the theoretical top speed  of	the  device  as	 re‐
	      ported.  This  speed  may be restricted by system board limits, eg. a SATA 3 drive on a SATA 2
	      board may report SATA 2 speeds, but this is not completely consistent, sometimes a SATA 3	 de‐
	      vice on a SATA 2 board reports its design speed.

	      NVMe  drives:  adds  lanes,  and (per direction) speed is calculated with lane speed * lanes *
	      PCIe overhead. PCIe 1 and 2 have data rates of GT/s * .8 = Gb/s (10 bits required to  transfer
	      8	 bits of data).	 PCIe 3 and greater transfer data at a rate of GT/s * 128/130 * lanes = Gb/s
	      (130 bits required to transfer 128 bits of data).

	      For a PCIe 3 NVMe drive, with speed of 8 GT/s and 4 lanes (8GT/s * 128/130 * 4 = 31.6 Gb/s):

	      speed: 31.6 Gb/s lanes: 4

	      - Adds HDD/SSD drive duid, if available. Some BSDs have it.

	      - Adds for USB drives USB rev, speed, lanes (lanes Linux only).

       -xx -E (--bluetooth)
	      - Adds vendor:product ID of each device.

	      - Adds PCIe speed and lanes item (Linux only, and if PCIe bluetooth, which is rare).

	      - Adds for USB devices USB rev, speed, lanes (lanes Linux only).

	      - Adds (hciconfig only) LMP subversion (and/or HCI revision if applicable) for each device.

       -xx -G Triggers much more complete Screen/Monitor report.

	      X.org: requires xdpyinfo or xrandr, and the advanced per monitor feature requires xrandr.

	      Wayland: requires any tool capable of showing monitor and	 resolution  information.  Sway	 has
	      swaymsg,	weston-info  or wayland-info can show Wayland information on any Wayland compositor,
	      and wlr-randr can show Wayland information for any wlroots based compositor.

	      Further note that all references to Displays, Screens, and Monitors are referring to the X  or
	      Wayland technical terms, not normal consumer usage.

	      X.org: 1 Display runs 1 or more Screens, and 1 Screen runs 1 or more Monitors.

	      Wayland: The Display is the primary container, and it can contain 1 or more Monitors.

	      - Adds vendor:product ID of each device.

	      - Adds PCIe speed and lanes item (Linux only, and if PCIe device and detected).

	      - Adds for USB devices USB rev, speed, lanes (lanes Linux only).

	      -	 Adds  output  port  IDs, active, off (connected but disabled, like a closed laptop lid) and
	      empty. Example:

	      ports: active: DVI-I-1,VGA-1 empty: HDMI-A-1

	      - Adds Display ID. X.org: the Display running the Screen that runs the Monitors; Wayland:	 the
	      Display that runs the monitors.

	      - Adds compositor, if found (always shows for Wayland).

	      -	 Wayland:  Adds to  Display d-rect: if > 1 monitors in Display. This is the size of the rec‐
	      tangle Wayland creates to situate the monitors in.

	      - X.org: If available, shows alternate: Xorg drivers. This means a driver on the default	list
	      of  drivers Xorg automatically checks for the device, but which is not installed. For example,
	      if you have nouveau driver, nvidia would show as alternate if it was not installed. Note	that
	      alternate:  does	NOT mean you should have it, it's just one of the drivers Xorg checks to see
	      if is present and loaded when checking the device. This can let you know there are other	dri‐
	      ver  options. Note that if you have explicitly set the driver in xorg.conf, Xorg will not cre‐
	      ate this automatic check driver list.

	      - Xorg: Adds total number of Screens listed for the current Display.

	      - Xorg: Adds default Screen ID if Screen (not monitor!) total is greater than 1.

	      - X.org: Adds Screen line, which includes the ID (Screen: 0) then s-res  (Screen	resolution),
	      s-dpi.  Remember,	 this is an Xorg Screen, NOT a monitor screen, and the information listed is
	      about the Xorg Screen! It may at times be the same as a single  monitor  system,	but  usually
	      it's  different in some ways. Note that the physical monitor dpi and the Xorg dpi are not nec‐
	      essarily the same thing, and can vary widely.

	      - Adds Monitor lines. Monitors are a subset of a Screen (X.org) or Display (Wayland), each  of
	      which  can  have	one or more monitors. Normally a dual monitor setup is 2 monitors run by one
	      Xorg Screen/Wayland Display.

	      - res: is the current monitor mode, along with the frequency hz:.

	      - pos: [primary,]{position string|row-col} (X.org: requires xrandr; Wayland: requires  swaymsg
	      [sway],  wlr-randr [wlroots based compositors], weston-info / wayland-info [all]). Uses either
	      explicit primary value or +0+0 position if no primary monitor value set.	pos: does  not	show
	      for single monitor setups, or if no position data was found.

	      Position	is  text  (left,  center,  center-l,  center-r,	 right,	 top,  top-left, top-center,
	      top-right, middle, middle-c, middle-r, bottom, bottom-l, bottom-c, bottom-r) if  monitors	 fit
	      within  the  following  grids: 1x2, 1x3, 1x4, 2x1, 2x2, 2x3, 3x1, 3x2, 3x3. If layout not sup‐
	      ported in text, uses [row-nu]-[column-nu] instead to indicate the monitor's  position  in	 its
	      grid.

	      The  position  is based on the upper left corner of each monitor relative to the grid of moni‐
	      tors that the Xorg Screen is composed of.

	      - diag: monitor screen diagonal in mm (inches). Note that this is the real monitor  size,	 not
	      the Xorg full Screen diagonal size, which can be quite different.

	      - For EGL, shows platform by specific platforms, with driver and egl version if different from
	      the main one.

	      -	 For  OpenGL,  adds  ES version (es-v) if available. If the Display line did not find an X11
	      display ID, the ID (e.g. :0.0) will show here instead.

	      - For OpenGL, Vulkan, adds device-ID, if available.

	      - For Vulkan, adds per Device ID report (type, driver, device-ID).

       -xx -I - Addes Power: parent for power data children uptime: and adds  wakeups:.	 Wakeups  shows	 how
	      many  times  the	machine	 has  been woken from suspend state during current uptime period (if
	      available, Linux only). 0 value means the machine has not been suspended.

	      - Adds init type version number (and rc if present).

	      - Adds alternate (alt:) detected installed compiler versions (if present).

	      - Adds system default runlevel/target, if detected. Supports Systemd / Upstart /SysVinit	type
	      defaults.

	      -	 Shows Packages: counts by discovered package manager types (pm:).  In cases where only 1 pm
	      had results, does not show total after Packages:.	 Does not show	installed  package  managers
	      with 0 packages. See -a for full report. Moves to Repos if -rxx.

	      - Adds parent program (or pty/tty) that started shell, if not IRC client.

       -xx -j (--swap), -xx -p, -xx -P
	      - Adds swap priority to each swap partition (for -P) used, and for all swap types (for -j).

       -xx -J (--usb)
	      - Adds vendor:chip id.

	      -	 Adds USB lanes. Uses tx (transmit) lane count for total unless rx and tx counts are differ‐
	      ent (eg: lanes: rx: 2 tx: 4). Linux only.	 See -Ja for sample report.

       -xx -L (--logical)
	      - Adds internal LVM Logical volumes, like raid image and meta data volumes.

	      - Adds full list of Components, sub-components, and their physical devices.

	      - For LVM RAID, adds a RAID report line (if not -R). Read up on LVM  documentation  to  better
	      understand their use of the term 'stripes'.

       -xx -m, --memory-modules
	      - Adds memory device Manufacturer.

	      -	 Adds  memory  device  Part Number (part-no:). Useful for ordering new or replacement memory
	      sticks etc. Part numbers are unique, particularly if you use the word memory in the search  as
	      well. With -xxx, also shows serial number.

	      -	 Adds  single/double  bank memory, if data is found. Note, this may not be 100% right all of
	      the time since it depends on the order that data is found in dmidecode output for type  6	 and
	      type 17.

	      -	 Adds, if present, memory array voltage. Only some legacy systems will have this data avail‐
	      able.

	      - Adds memory module current configured operating voltage, if available.

       -xx -M - Adds chassis information, if data is available. Also shows BIOS ROM size if using dmidecode.

	      - Adds board part number (part-nu:) if available. This is not commonly found.

       -xx -N - Adds vendor:product ID for each device.

	      - Adds PCIe speed and lanes item (Linux only, and if PCIe device and detected).

	      - Adds for USB devices USB rev, speed, lanes (lanes Linux only).

       -xx -r - Adds to Packages: info. See -Ixx

       -xx -R - md-raid: Adds superblock (if present) and algorithm. If resync, shows progress bar.

	      - Hardware RAID: Adds Chip vendor:product ID.

       -xx -s - Adds DIMM/SOC voltages, if present (ipmi only).

       -xx -S

	      - Adds desktop toolkit (tk:), if available (Xfce/KDE/Trinity/Gnome etc).

	      - Adds, if run in X, window manager (wm:), if available. Not  all	 window	 managers  are	sup‐
	      ported.  File issue to request a missing one. Some desktops support using more than one window
	      manager, so this can be useful to see what window manager is actually running. If none  found,
	      shows nothing. Uses a less accurate fallback tool wmctrl if ps tests fail to find data.

	      -	 Adds  display/login  manager (dm:/lm:), if present. If none, shows N/A. Supports most known
	      display/login managers, including elogind, entrance, gdm, gdm3, greetd, kdm, lemurs,  lightdm,
	      lxdm, ly, mdm, mlogind, nodm, sddm, seatd, slim, slimski,	 tint, wdm, xdm, and several others,
	      added as discovered.

       -xx --slots
	      - Adds slot length.

	      - Adds slot voltage, if available.

       -xx -w - Adds wind chill, heat index, and dew point, if available.

	      -	 Adds  cloud  cover,  rain,  snow,  or precipitation (amount in previous hour to observation
	      time), if available.

       -xxx -A
	      - Adds, if present, serial number.

	      - Adds, if present, PCI/USB class ID.

       -xxx -B
	      - Adds battery temperature (uncommon).

	      - Adds battery build date (uncommon).

	      - Adds battery chemistry (e.g. Li-ion)).

	      - Adds location (only available from dmidecode derived output.

	      - Adds battery charging type (uncommon).

	      - Adds attached device rechargeable: [yes|no] information.

       -xxx -C
	      - Adds CPU voltage and external  clock  speed  (this  is	the  motherboard  speed).   Requires
	      doas/sudo/root and dmidecode.

	      -	 Adds,	if  smt (Simultaneous MultiThreading) data is available, after type: data smt: [sta‐
	      tus].
	      smt: [status]
	      MT in type: will show if smt is enabled in  general.  3  values  are  possible:  [enabled|dis‐
	      abled|].  means the CPU does not support SMT.

       -xxx -D
	      - Adds HDD/SSD drive firmware revision number (if available).

	      - Adds drive partition scheme (in most cases), e.g. scheme: GPT.	Currently not able to detect
	      all schemes, but handles the most common, e.g.  GPT or MBR.

	      -	 Adds  drive tech (HDD/SSD), rotation speed (in some but not all cases), e.g. tech: HDD rpm:
	      7200, or tech: SSD if positive SSD identification was made. If no HDD, rotation,	or  positive
	      SSD  ID found, shows tech: N/A. Not all HDD spinning disks report their speed, so even if they
	      are spinning, no rpm data will show.

       -xxx -E (--bluetooth)
	      - Adds, if present, PCI/USB class ID.

	      - Adds, if present, bluetooth device class ID.

	      - Adds (hciconfig only) HCI version, revision.

       -xxx -G
	      - Adds, if present, Device PCI/USB class ID.

	      - Adds to Device serial: number (if found).

	      - Xorg: Adds to Screen: s-size: and s-diag:. (Screen size data requires xdpyinfo). This is the
	      X.org Screen dimensions, NOT the Monitor size!

	      - Expands monitor res: to current mode:, hz:, scale:, and if scale != 1,	scaled	to:  resolu‐
	      tion.

	      -	 Adds  to  Monitors  (if detected) size (size: 277x156mm (10.9x6.1")). Note that this is the
	      real physical monitor size, not the Xorg Screen/Wayland Display size, which can be quite	dif‐
	      ferent (1 Xorg Screen / Wayland Display can for instance contain two or more monitors).

	      -	 Adds to Monitors modes: min: max: (if detected). These are the smallest and largest monitor
	      modes found, using an inexact method, so might not always be right.

	      - Adds to Monitors serial: number (if detected).

	      - For EGL, shows hardware based driver(s) (hw:), with the related hardware, like AMD or Intel.

	      - For Vulkan, adds layer count, per device driver hardware vendor	 (not  displayed  if  device
	      name is present with -a).

       -xxx -I
	      -	 For  Power:  adds  supported  system power states:, active suspend: type, active hibernate:
	      type. See https://www.kernel.org/doc/html/v4.15/admin-guide/pm/sleep-states.html for full	 ex‐
	      planation of states and actions.

	      - For Shell: adds (su|sudo|login) to shell name if present.

	      -	 For  Shell:  adds  default: shell if different from running shell, and default shell v:, if
	      available.

	      - For running-in: adds (SSH) to parent, if present. SSH detection uses the whoami test.

       -xxx -J (--usb)
	      - Adds, if present, serial number for non hub devices.

	      - Adds interfaces: for non hub devices.

	      - Adds, if present, USB class ID.

	      - Adds, if non 0, max power in mA.

       -xxx -m, --memory-modules
	      - Adds memory bus width: primary bus width, and if present, total width. e.g.

	      width (bits): data: 64 total: 72

	      Note that total / data widths are mixed up sometimes in dmidecode output, so  inxi  will	take
	      the  larger value as the total if present. Data width usually corresponds to the CPU bits. To‐
	      tal can reflect EEC or Dual Channel widths. If no total width data is found, shows:

	      width: N/A

	      - Adds device type detail, e.g. type: DDR3 detail: Synchronous.

	      - Adds device serial number.

	      - Adds memory module current, max, and min voltages, if they are available and different	from
	      each other. If they are the identical, displays same as -xxm voltage report. Use -ma to always
	      see them.

       -xxx -M
	      - Adds, if present, board/chassis UUID, This is also activated by --uuid.

       -xxx -N
	      - Adds, if present, serial number.

	      - Adds, if present, PCI/USB class ID.

       -xxx -R
	      - md-raid: Adds system mdraid support types (kernel support, read ahead, RAID events)

	      - zfs-raid: Adds portion allocated (used) by RAID array/device.

	      - Hardware RAID: Adds rev, ports, and (if available and/or relevant) vendor: item, which shows
	      specific vendor [product] information.

       -xxx -S
	      - Adds current kernel clock source, if available (Linux only).

	      - Adds (if present), window manager (wm) version number.

	      -	 Adds,	if  in	X,  or	with --display, bar/dock/menu/panel/tray components (with:). If none
	      found, shows nothing. Examples:	cairo-dock,  docky,  gnome-panel,  lxpanel,  tint2,  trayer,
	      lxqt-panel, xfce4-panel and many others.

	      -	 Adds  (if  present) tools: item for all detected running screensavers, screen lockers. Note
	      that not all screen lockers run as daemons/services, some are just programs  called  by  other
	      tools or actions.

	      -	 Adds  (if  available, and in display), virtual terminal (vt) number.  These are the same as
	      ctrl+alt+F[x] numbers usually. Some systems have this, some don't, it varies.

	      - Adds (if present), display/login manager (dm) version number.

       -xxx -w
	      - Adds location (city state country), observation altitude (if available), weather observation
	      time (if available), sunset/sunrise (if available).

ADMIN EXTRA DATA OPTIONS
       These options are triggered with --admin or -a. Admin options are advanced report  options,  and	 are
       more technical, and mostly of interest to system administrators or other machine admins.

       The --admin option sets -xxx, and only has to be used once.  It will trigger the following features:

       -a -A  -	 Adds,	if present, possible alternate: kernel modules capable of driving each Device-x (not
	      including the current driver:). If no non-driver modules found, shows nothing. NOTE: just	 be‐
	      cause  it	 lists a module does NOT mean it is available in the system, it's just something the
	      kernel knows could possibly be used instead.

	      - Adds PCIe generation, and, if different	 than  running	PCIe  generation,  speed  or  lanes,
	      link-max: gen: speed: lanes: (only items different from primary shown).

	      -	 Adds  list  of	 detected  audio server tools (tools: [tools]) to API/Server lines, like al‐
	      samixer, jack_control, pactl, pavuctl, pw-cli, sndioctl, etc.

	      - Adds for USB devices USB mode (Linux only).

       -a -C
	      - Adds CPU generation, process node, and built years, if detected. For Intel, only  will	show
	      if Core generation, otherwise the arch value is enough. For AMD, only shows Zen generation.

	      -	 Adds  microarchitecture level: (v1,v2,v3,v4) (64 bit Intel/AMD CPUs only). This information
	      is used for setting compile time optimization switches in for example GCC. These	levels	were
	      introduced in 2020.

	      Because this a CPU flag based test, and these levels when > 2 are not always 100% based on ex‐
	      posed CPU flags (eg OSXSAVE), for > v2, adds note: check.

	      - Adds CPU family, model-id, and stepping (replaces rev of -Cx).	Format is hexadecimal (deci‐
	      mal) if greater than 9, otherwise hexadecimal.

	      - Adds CPU microcode. Format is hexadecimal.

	      -	 Adds  socket type (for motherboard CPU socket, if available). If results doubtful will list
	      two socket types and note: check. Requires doas/sudo/root and dmidecode. The item in parenthe‐
	      ses may simply be a different syntax for the same socket, but in general,	 check	this  before
	      trusting it.

	      Sample: socket: 775 (478) note: check
	      Sample: socket: AM4

	      -	 Adds  DMI  CPU	 base and boost/turbo speeds. Requires doas/sudo/root and dmidecode. In some
	      cases, like with overclocking or 'turbo' or 'boost' modes, voltage and external  clock  speeds
	      may be increased, or short term limits raised on max CPU speeds. These are often not reflected
	      in /sys based CPU min/max: speed results, but often are using this source.

	      Samples:
	      CPU not overclocked, with boost, like Ryzen:
	      Speed (MHz):
		avg: 2861
		high: 3250
		min/max: 1550/3400
		boost: enabled
		base/boost: 3400/3900
	      Overclocked 2900 MHz CPU, with no boost available:
	      Speed (MHz):
		avg: 2345
		high: 2900
		min/max: 800/2900
		base/boost: 3350/3000
	      Overclocked 3000 MHz CPU, with boosted max speed:
	      Speed (MHz):
		avg: 3260
		high: 4190
		min/max: 1200/3001
		base/boost: 3000/4000

	      Note  that these numbers can be confusing, but basically, the base number is the actual normal
	      top speed the CPU runs at without boost mode, and the boost number is the max  speed  the	 CPU
	      reports  itself  able  to	 run  at.   The actual max speed may be higher than either value, or
	      lower. The boost number appears to be hard-coded into the CPU DMI data, and does not  seem  to
	      reflect  actual  max  speeds that overclocking or other combinations of speed boosters can en‐
	      able, as you can see from the example where the CPU is running at	 a  speed  faster  than	 the
	      min/max or base/boost values.

	      Note  that  the  normal  min/max:	 speeds	 do  NOT show actual overclocked OR boost/turbo mode
	      speeds, and appear to be hard-coded values, not dynamic real values.  The	 base/boost:  values
	      are sometimes real, and sometimes not.  base appears in general to be real.

	      -	 Adds frequency scaling: governor:.. driver:.. if found/available. Also adds scaling min/max
	      speeds if different from standard CPU min/max spees (not common).

	      - Adds description of cache topology per cpu. Linux only.

	      - Creates new Topology: line after the Info: line. Moves cache data to this  line	 from  Info:
	      line.

	      Topology line contains, if available and/or relevant: physical CPU count (cpus:); per physical
	      CPU  dies:,  clusters:,  cores:;	threads	 per core, if > 1 (tpc:); how many threads: (if more
	      threads than cores); smt status (if no smt status found, shows N/A).

	      Not all CPUs have or report dies or clusters. Some may have dies but no clusters,	 some  clus‐
	      ters  but no dies, some dies and clusters, and some neither dies nor clusters. This is a func‐
	      tion of how the CPU topology reports itself to the kernel. Note that core counts are per phys‐
	      ical CPU, not per die or cluster.	 Clusters are per die, and in cases of > 1 dies,  will	show
	      as: clusters: 2x4.

	      If  complex  CPU type, like Alder lake, cores: will have a more granular breakdown of how many
	      mt (multi-threaded) and how many st (single-threaded) cores there	 are  in  the  physical	 cpu
	      (mt-cores:,  st-cores:);	 For  complex  CPU types like ARM SoC devices with 2 CPU types, with
	      different core counts and/or min/max:) frequencies, variant: per	type  found,  with  relevant
	      differences shown, like cores:, min/max:, etc.

	      CPU:
		Info:
		  model: AMD EPYC 7281
		  bits: 64
		  type: MT MCP MCM SMP
		  arch: Zen
		    gen: 1
		  level: v3
		    note: check
		  process: GF 14nm
		  built: 2017-19
		  family:0x17 (23)
		  model-id:1
		  stepping: 2
		  microcode: 0x8001250
		Topology:
		  cpus: 2
		    dies: 4
		    cores: 16
		    threads: 32
		      tpc: 2
		 cache:
		   L1: 2x 1.5 MiB (3 MiB)
		     desc: d-16x32 KiB; i-16x64 KiB
		   L2: 2x 8 MiB (16 MiB)
		     desc: 16x512 KiB
		   L3: 2x 32 MiB (64 MiB)
		     desc: 8x4 MiB
		Speed (MHz):
		  avg: 1195
		  high: 1197
		  min/max: 1200/2100
		  boost: enabled
		  scaling:
		    driver: acpi-cpufreq
		    governor: ondemand
		  cores:
		    1: 1195
		    2: 1196
		    ....
		  bogomips: 267823

	      Or this Raptor Lake with 1 die, 4 clusters, and efficiency and perforance cores:

	      CPU:
		Info:
		  model: 13th Gen Intel Core i5-1345U
		  bits: 64
		  type: MST AMCP
		  arch: Raptor Lake
		  level: v3
		    note: check
		  built: 2022+
		  process: Intel 7 (10nm)
		  family: 6
		  model-id: 0xBA (186)
		  stepping: 3
		  microcode: 0x411C
		Topology:
		  cpus: 1
		    dies: 1
		    clusters: 4
		    cores: 10
		    threads: 12
		      mt: 2
			tpc: 2
		      st: 8
		  smt: enabled
		  cache:
		    L1: 928 KiB
		      desc: d-8x32 KiB, 2x48 KiB; i-2x32 KiB, 8x64 KiB
		    L2: 6.5 MiB
		      desc: 2x1.2 MiB, 2x2 MiB
		    L3: 12 MiB
		      desc: 1x12 MiB
		Speed (MHz):
		  avg: 1535
		  high: 2820
		  min/max: 400/4700:3500
		  scaling:
		    driver: intel_pstate
		    governor: powersave
		  cores:
		    1: 0
		    2: 400
		    3: 429
		    4: 926
		    5: 1244
		    6: 1139
		    7: 2680
		    8: 1021
		    9: 2582
		    10: 2744
		    11: 2820
		    12: 2445
		  bogomips: 59904
		Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx

	      -	 Adds  CPU  Vulnerabilities (bugs) as known by your current kernel. Lists by Type: ... (sta‐
	      tus|mitigation): .... for systems that support this feature (Linux kernel 4.14  or  newer,  or
	      patched older kernels).

       -a -d,-a -D
	      - Adds logical and physical block size in bytes.

	      Using smartctl (requires doas/sudo/root privileges).

	      - Adds device model family, like Caviar Black, if available.

	      - Adds SATA type (eg 1.0, 2.6, 3.0) if a SATA device.

	      - Adds device kernel major:minor number (Linux only).

	      - Adds SMART report line: status, enabled/disabled, health, powered on, cycles, and some error
	      cases if out of range values. Note that for Pre-fail items, it will show the VALUE and THRESH‐
	      OLD  numbers.  It will also fall back for unknown attributes that are or have been failing and
	      print out the Attribute name, value, threshold, and failing message. This way even for  unhan‐
	      dled  Attribute  names,  you should get a solid report for full failure cases. Other cases may
	      show if inxi believes that the item may be approaching failure. This is a guess so  make	sure
	      to check the drive and smartctl full output to verify before taking any further action.

	      - Adds, for USB or other external drives, actual model name/serial if available, and different
	      from enclosure model/serial, and corrects block sizes if necessary.

	      - Adds for USB drives USB mode (Linux only).

	      - Adds in drive temperature for some drives as well, and other useful data.

       -a -E (--bluetooth)
	      -	 Adds  (hciconfig  only) extra line to Report:, Info:.	Includes, if available, ACL MTU, SCO
	      MTU, Link policy, Link mode, and Service Classes.

	      - Adds PCIe generation, and, if different	 than  running	PCIe  generation,  speed  or  lanes,
	      link-max: gen: speed: lanes: (only items different from primary shown. Bluetooth PCIe rare).

	      - Adds for USB devices USB mode (Linux only).

	      - Adds, if present, bluetooth status: discoverable, active discoverable, and pairing items.

       -a -G  -	 Adds,	if present, possible alternate: kernel modules capable of driving each Device-x (not
	      including the current loaded:). If no non-driver modules found, shows nothing. NOTE: just	 be‐
	      cause  it	 lists a module does NOT mean it is available in the system, it's just something the
	      kernel knows could possibly be used instead.

	      - Adds (AMD/Intel/Nvidia, if available) process: [node] built: [years] to arch: item.

	      - Adds (if Linux and Nvidia device) non-free support information (if available). This  can  be
	      useful for forum support people to determine if the card supports current active legacy Nvidia
	      driver branches, or if the card nonfree driver is EOL or active. Note that if card is current,
	      shows basic series and status.

	      Includes extended non free Nvidia legacy informatin (Linux and Nvidia only), and arch: reports
	      (AMD/Intel/Nvidia).  Useful  to help diagnose driver support issues, shows extra data that can
	      help diagnose/debug. Adds code: item if found and not the same as arch:.

	      - Adds for USB devices USB mode (Linux only).

	      inxi -Gaz
	      Graphics:
		Device-1: NVIDIA NV34 [GeForce FX 5200] driver: nouveau v: kernel
		  non-free: 173.14.xx status: legacy (EOL) last: kernel: 3.12 xorg: 1.15
		  release: 173.14.39 arch: Rankine code: NV3x process: 130-150nm
		  built: 2003-05 ports: active: VGA-1 empty: DVI-I-1,TV-1
		  bus-ID: 01:00.0 chip-ID: 10de:0322 class-ID: 0300
		Display: x11 server: X.Org v: 21.1.3 driver: X: loaded: nouveau
		  unloaded: fbdev,modesetting,vesa alternate: nv,nvidia gpu: nouveau
		  display-ID: :0 screens: 1

	      With -y1:

	      inxi -Gaz -y1
	      Graphics:
		Device-1: NVIDIA NV34 [GeForce FX 5200]
		  driver: nouveau
		    v: kernel
		    non-free:
		      series: 173.14.xx
		      status: legacy (EOL)
		      last:
			kernel: 3.12
			xorg: 1.15
			release: 173.14.39
		  arch: Rankine
		    code: NV3x
		    process: 130-150nm
		    built: 2003-05
		  ports:
		    active: VGA-1
		    empty: DVI-I-1,TV-1
		  bus-ID: 01:00.0
		  chip-ID: 10de:0322
		  class-ID: 0300

	      - Adds PCIe generation, and, if different	 than  running	PCIe  generation,  speed  or  lanes,
	      link-max: gen: speed: lanes: (only items different from primary shown).

	      - Adds to Monitors built:, gamma:, ratio: (if found).

	      - Adds to OpenGL device memory and unified status, if present.

	      -	 Adds  to  Vulkan full device report, with full device names, ids, drivers, driver versions,
	      surfaces.

	      - Adds Info: Tools: item. Tools are arranged into the following  categories:  api:  (for	EGL,
	      OpenGL,  Vulkan etc.), de: (specific to a desktop environment), gpu (GPU monitoring and tweak‐
	      ing), wl: (Wayland specific), x11 (x11 specific).

	      X.org sample (with both xdpyinfo and xrandr data available), one scaled monitor:
	      inxi -aGz
	      Graphics:
		Device-1: Advanced Micro Devices [AMD/ATI] Cedar [Radeon HD
		  5000/6000/7350/8350 Series] vendor: XFX Pine driver: radeon
		  v: kernel alternate: amdgpu arch: TeraScale-2 code: Evergreen
		  process: TSMC 32-40nm built: 2009-15 pcie: gen: 1 speed: 2.5 GT/s
		  lanes: 16 link-max: gen: 2 speed: 5 GT/s ports:
		  active: DVI-I-1,VGA-1 empty: HDMI-A-1 bus-ID: 0b:00.0
		  chip-ID: 1002:68f9 class-ID: 0300 temp: 52.0 C
		Display: x11 server: X.Org v: 21.1.14 with: Xwayland v: 24.1.3
		  compositor: xfwm4 v: 4.18.0 driver: X: loaded: modesetting
		  dri: r600 gpu: radeon display-ID: :0.0 screens: 1
		Screen-1: 0 s-res: 2432x1024 s-dpi: 96
		  s-size: 641x270mm (25.24x10.63") s-diag: 696mm (27.38")
		Monitor-1: DVI-I-1 pos: primary,left model: Samsung SyncMaster
		  serial:  built: 2004 res: mode: 1280x1024 hz: 60
		  scale: 100% (1) gamma: 1.2 size: 338x270mm (13.31x10.63")
		  diag: 433mm (17") ratio: 5:4 modes: max: 1280x1024 min: 720x400
		Monitor-2: VGA-1 pos: right model: Dell 1908FP serial: 
		  built: 2008 res: mode: 1280x1024 hz: 60 scale: 111% (0.9)
		  to: 1152x922 dpi: 86 gamma: 1.4 size: 376x301mm (14.8x11.85")
		  diag: 482mm (19") ratio: 5:4 modes: max: 1280x1024 min: 720x400
		API: EGL v: 1.5 hw: drv: amd r600 platforms: device: 0 drv: r600
		  device: 1 drv: swrast gbm: drv: kms_swrast surfaceless: drv: r600
		  x11: drv: r600 inactive: wayland
		API: OpenGL v: 4.5 vendor: mesa v: 24.2.4-1 glx-v: 1.4
		  direct-render: yes renderer: AMD CEDAR (DRM 2.50.0 /
		  6.11.5-1-liquorix-amd64 LLVM 19.1.1) device-ID: 1002:68f9
		  memory: 1000 MiB unified: no
		API: Vulkan v: 1.3.296 layers: 3 device: 0 type: cpu
		  name: llvmpipe (LLVM 19.1.1 256 bits) driver: N/A
		  device-ID: 10005:0000 surfaces: xcb,xlib
		Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
		  de: xfce4-display-settings gpu: radeontop x11: xdriinfo, xdpyinfo,
		  xprop, xrandr

	      Wayland sample, with Sway/swaymsg, scaled monitor:
	      inxi -aGz
	      Graphics:
		Device-1: Intel 2nd Generation Core Processor Family Integrated
		  Graphics vendor: Lenovo driver: i915 v: kernel arch: Gen-6
		  code: Sandybridge process: Intel 32nm built: 2011 ports:
		  active: LVDS-1 empty: DP-1, DP-2, DP-3, HDMI-A-1, HDMI-A-2,
		  HDMI-A-3, VGA-1 bus-ID: 00:02.0 chip-ID: 8086:0116 class-ID: 0300
		Device-2: Chicony integrated camera driver: uvcvideo type: USB
		  rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-1.6:4
		  chip-ID: 04f2:b221 class-ID: 0e02
		Display: wayland server: X.org v: 1.21.1.13 compositor: Sway
		  v: 1.9 driver: X: loaded: modesetting unloaded: fbdev,vesa
		  dri: crocus gpu: i915 display-ID: 1
		Monitor-1: LVDS-1 model: AU Optronics 0x313c built: 2010 res:
		  mode: 1366x768 hz: 60 scale: 110% (1.1) to: 1241x698 dpi: 112
		  gamma: 1.2 size: 309x173mm (12.17x6.81") diag: 354mm (13.9")
		  ratio: 16:9 modes: 1366x768
		API: EGL v: 1.5 hw: drv: intel crocus platforms: device: 0
		  drv: crocus device: 1 drv: swrast gbm: drv: crocus surfaceless:
		  drv: crocus wayland: drv: crocus inactive: x11
		API: OpenGL v: 4.5 compat-v: 3.3 vendor: mesa v: 24.2.4-1
		  note: incomplete (EGL sourced) renderer: Mesa Intel HD Graphics
		  3000 (SNB GT2), llvmpipe (LLVM 19.1.1 256 bits)
		API: Vulkan v: 1.3.290 layers: 3 device: 0 type: cpu
		  name: llvmpipe (LLVM 19.1.1 256 bits) driver: N/A
		  device-ID: 10005:0000 surfaces: wayland
		Info: Tools: api: eglinfo, glxinfo, vulkaninfo
		  de: xfce4-display-settings wl: swaymsg, wayland-info, wlr-randr
		  x11: xdriinfo, xdpyinfo, xprop, xrandr

       -a -I  - Adds to Power: other hibernate and suspend available (avail:) states, hibernate suspend	 im‐
	      age: size, and if any suspend failures (fails:), how many.

	      - Adds power daemons/services (services:) running. Note not all services are daemons.

	      -	 Adds  to  Packages  number of lib packages detected per package manager. Also adds detected
	      package managers with 0 packages listed. Adds package manager  tools  (supported:	 rpm,  dpkg,
	      pkgtool) Moves to Repos if -ra.

	      -	 Adds  service	control	 tool, tested for in the following order: systemctl rc-service rcctl
	      service sv /etc/rc.d /etc/init.d. Can be useful to know which you need when using an  unfamil‐
	      iar machine.

	      inxi -aI
	      Info:
		Memory: total: N/A available: 31.27 GiB used: 14.9 GiB (47.7%)
		Processes: 651 Power: uptime: 8d 21h 32m states: freeze,mem,disk
		  suspend: deep avail: s2idle wakeups: 14 fails: 3 hibernate: platform
		  avail: shutdown,reboot,suspend,test_resume image: 12.49 GiB
		  services: upowerd,xfce4-power-manager Init: systemd v: 255
		  target: graphical (5) default: graphical tool: systemctl
		Packages: pm: dpkg pkgs: 3960 libs: 2184 tools: apt,apt-get,aptitude
		  pm: rpm pkgs: 0 Compilers: gcc: 13.2.0 alt: 5/6/8/9/10/11/12 Shell: Bash
		  v: 5.2.21 running-in: xfce4-terminal pinxi: 3.3.32

       -a -j (--swap), -a -P [swap], -a -P [swap]
	      -	 Adds  swappiness  and vfs cache pressure, and a message to indicate if the value is the de‐
	      fault value or not (Linux only, and only if available). If not the default  value,  shows	 de‐
	      fault value as well, e.g.

	      For -P per swap physical partition:

	      swappiness: 60 (default) cache-pressure: 90 (default 100)

	      For -j row 1 report:

	      Kernel: swappiness: 60 (default) cache-pressure: 90 (default 100)

	      - Adds zswap data for row 1 report:

	      zswap: [yes/no] compressor: [type] max-pool: xx%

	      -	 Adds for zram swap type: active compression type, available compression types, and max com‐
	      pression streams.

	      - Adds device kernel major:minor number (Linux only).

       -a -J (--usb)
	      - Adds, if available, USB speed in IEC units MiB/s or GiB/s (may be incorrect on BSDs  due  to
	      non reliable data source). These are base 2 Bytes per second.

	      -	 Adds USB mode (Linux only), which is the technical terms the USB group uses to describe USB
	      revisions. In cases where speed and rev are an unknown combination, (and probably at least one
	      is wrong) shows message.

	      There are no granular data sources in BSDs for accurate  revision/lane/speed  information,  so
	      mode cannot be determined.

	      Sample:
	      Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 14 rev: 2.0
		speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
		class-ID: 0900
	      Device-1: 1-4:2 info: Wacom ET-0405A [Graphire2 (4x5)] type: mouse
		driver: usbhid,wacom interfaces: 1 rev: 1.1 speed: 1.5 Mb/s (183 KiB/s)
		lanes: 1 mode: 1.0 power: 40mA chip-ID: 056a:0011 class-ID: 0301
	      Hub-2: 2-0:1 info: Super-speed hub ports: 8 rev: 3.1
		speed: 10 Gb/s (1.16 GiB/s) lanes: 1 mode: 3.2 gen-2x1 chip-ID: 1d6b:0003
		class-ID: 0900
	      Device-1: 2-8:5 info: SanDisk Ultra type: mass storage driver: usb-storage
		interfaces: 1 rev: 3.0 speed: 5 Gb/s (596.0 MiB/s) lanes: 1 mode: 3.2 gen-1x1
		power: 896mA chip-ID: 0781:5581 class-ID: 0806
		serial: 

       -a -L (--logical)
	      -	 Expands  Component  report, shows size / maj-min of components and devices, and mapped name
	      for logical components. Puts each component/device on its own line.

	      - Adds maj-min to LV and other devices.

       -a -m  - Expands volts to include curr/min/max values even if they are all identical.

	      - Adds RAM module firmware version, if detected. Not common.

       -a -n, -a -N, -a -i
	      - Adds, if present, possible alternate: kernel modules capable of driving each  Device-x	(not
	      including	 the current driver:). If no non-driver modules found, shows nothing. NOTE: just be‐
	      cause it lists a module does NOT mean it is available in the system, it's just  something	 the
	      kernel knows could possibly be used instead.

	      -	 Adds  PCIe  generation,  and,	if  different  than running PCIe generation, speed or lanes,
	      link-max: gen: speed: lanes: (only items different from primary shown).

	      - Adds for USB devices USB mode (Linux only).

	      - Adds Info: line (-n, -i only), with running network type services:. Note  not  all  services
	      are daemons. For example, NetworkManager can be started with --no-daemon flag.

       -a -o  - Adds device kernel major:minor number (Linux only).

       -a -p,-a -P
	      - Adds raw partition size, including file system overhead, partition table, e.g.

	      raw-size: 60.00 GiB.

	      - Adds percent of raw size available to size: item, e.g.

	      size: 58.81 GiB (98.01%).

	      Note that used: 16.44 GiB (34.3%) percent refers to the available size, not the raw size.

	      - Adds partition filesystem block size if found (requires root and blockdev).

	      - Adds device kernel major:minor number (Linux only).

       -a -r  - Adds to Packages: report. See -Ia

       -a -R  - Adds device kernel major:minor number (mdraid, Linux only).

	      -	 Adds, if available, component size, major:minor number (Linux only). Turns Component report
	      to 1 component per line.

       -a -S  - Adds alternate kernel clock sources, if available (Linux only).

	      - Adds kernel boot parameters to Kernel section (if detected). Support varies by OS type.

	      - Adds advanced desktop (info:) item, and version. Currently supports KDE Frameworks and	ver‐
	      sion.

	      -	 Adds  other  available	 (avail:) screensavers/lockers in tools: section. These are ones in‐
	      stalled, but not necessarily active or running.

       -a --slots
	      - Adds PCI children of the main slot bus ID, and their types and class IDs, recursively. Linux
	      only, and only if detected. Sample:

	      Slot: 0
		type: PCIe
		lanes: 16
		status: in use
		length: long
		volts: 3.3
		bus-ID: 00:03.1
		  children:
		    1: 07:00.0
		      class-ID: 0300
		      type: display
		    2: 07:00.1
		      class-ID: 0403
		      type: audio

ADVANCED OPTIONS
       --alt 40
	      Bypass Perl as a downloader  option.  Priority  is:  Perl	 (HTTP::Tiny),	Curl,  Wget,  Fetch,
	      (OpenBSD only) ftp.

       --alt 41
	      Bypass  Curl  as	a  downloader  option.	Priority  is:  Perl (HTTP::Tiny), Curl, Wget, Fetch,
	      (OpenBSD only) ftp.

       --alt 42
	      Bypass Fetch as a downloader option.  Priority  is:  Perl	 (HTTP::Tiny),	Curl,  Wget,  Fetch,
	      (OpenBSD only) ftp.

       --alt 43
	      Bypass Wget as a downloader option. Priority is: Perl (HTTP::Tiny), Curl, Wget, Fetch, OpenBSD
	      only: ftp

       --alt 44
	      Bypass  Curl,  Fetch, and Wget as downloader options. This basically forces the downloader se‐
	      lection to use Perl 5.x HTTP::Tiny, which is generally slower than Curl or  Wget	but  it	 may
	      help bypass issues with downloading.

       --bt-tool [bluetoothctl|bt-adapter|btmgmt|hciconfig|rfkill]
	      See --force [tool name]. Used to set -E report tool.

       --dig  Shortcut. See --force dig.

       --display [:]
	      Will try to get display data out of X (does not usually work as root user).  Default gets dis‐
	      play  info  from display :0. If you use the format --display :1 then it would get it from dis‐
	      play 1 instead, or any display you specify.

	      Note that in some cases, --display will cause inxi to hang endlessly when running	 the  option
	      in console with Intel graphics. The situation regarding other free drivers such as nouveau/ATI
	      is  currently  unknown. It may be that this is a bug with the Intel graphics driver - more in‐
	      formation is required.

	      You can test this easily by running the following command out  of	 X/display  server:  glxinfo
	      -display :0

	      If it hangs, --display will not work.

       --dmidecode
	      Shortcut. See --force dmidecode.

       --downloader [curl|fetch|perl|wget]
	      Force inxi to use Curl, Fetch, Perl, or Wget for downloads.

       --egl  Shortcut. See --force egl.

       --force [option(s)]
	      Various force options to allow users to override defaults. Values can be given as a comma sep‐
	      arated list:

	      inxi -MJ --force dmidecode,lsusb

	      - bluetoothctl - Force use of bluetoothctl in -E.

	      - bt-adapter - Force use of bt-adapter tool in -E.

	      - btmgmt - Force use of btmgmt tool in -E.

	      - colors - Do not remove colors from piped or redirected output. Same as -Y -2.

	      - cpuinfo - Force use of cpuinfo over sys for cpu data in -C.

	      -	 dig  - Temporary override of NO_DIG configuration item. Only use to test w/wo dig. Restores
	      default behavior for WAN IP, which is use dig if present.

	      - dmidecode - Force use of dmidecode. This will override /sys data in some lines, e.g.  -M  or
	      -B.

	      - egl - Force use of EGL graphics API even if internal rules block it from running due to pos‐
	      sible hanging. This is the case sometimes with Intel 32 bit Pentium 4 era Gen2 and older GPUs,
	      but it's not consistent.

	      - hciconfig - Force use of hciconfig tool in -E.

	      - hddtemp - Force use of hddtemp instead of /sys temp data for disks.

	      -	 html-wan - Temporary override of NO_HTML_WAN configuration item. Only use to test w/wo HTML
	      downloaders for WAN IP. Restores default behavior for WAN IP, which is use HTML downloader  if
	      present and if dig failed.

	      - ifconfig - Force use of IF tool ifconfig for -i.

	      - ip - Force use of IF ip tool for -i (default).

	      - kscreen - Wayland: Force -G monitor data source kscreen-console.

	      -	 lsusb	-  Forces  the	USB  data generator to use lsusb as data source (default). Overrides
	      USB_SYS in user configuration file(s).

	      - man - Force update / install of man page with -U if pinxi or using -U 3	 dev  branch.  (Only
	      active  if  -U  is is not disabled by maintainers). Default is to install always for inxi, and
	      not for pinxi.

	      - no-dig - Overrides default use of dig to get WAN IP address.  Allows  use  of  normal  down‐
	      loader tool to get IP addresses. Only use if dig is failing, since dig is much faster and more
	      reliable in general than other methods.

	      -	 no-doas  - Skips the use of doas to run certain internal features (like hddtemp, file) with
	      doas. Not related to running inxi itself with doas/sudo or super user. Some systems will	reg‐
	      ister  errors  which  will  then trigger admin emails in such cases, so if you want to disable
	      regular user use of doas (which requires configuration to setup anyway for these options) just
	      use this option, or NO_DOAS configuration item. See --no-sudo if	you  need  to  disable	both
	      types.

	      - no-egl - Skip eglinfo sourced EGL graphics API in -G. Use if Graphics hangs or running a de‐
	      bugger  data  set	 which	hangs  due to eglinfo bug ( only found on ancient Pentium 4 w/ Gen 2
	      GPUs).

	      - no-graphics-api -  Skip graphics API in -G.

	      - no-html-wan - Overrides use of HTML downloaders to get WAN IP address. Use either only	dig,
	      or  do  not  get	wan  IP. Only use if dig is failing, and the HTML downloaders are taking too
	      long, or are hanging or failing.

	      Make permanent with NO_HTML_WAN='true'

	      - no-man - Disables man page install with -U for master and active development branches. (Only
	      active if -U is is not disabled by maintainers). No man install is default for pinxi. Man	 in‐
	      stall is default for inxi.

	      - no-opengl - Skip glxinfo sourced OpenGL graphics API in -G.

	      -	 no-ssl	 -  Skip SSL certificate checks for all downloader actions (-U, -w, -i). Use if your
	      system does not have current SSL certificate lists, or if you have problems making  a  connec‐
	      tion for any reason.  Works with Wget, Curl, Perl HTTP::Tiny and Fetch.

	      -	 no-sudo  - Skips the use of sudo to run certain internal features (like hddtemp, file) with
	      sudo. Not related to running inxi itself with sudo or superuser. Some  systems  will  register
	      errors  which  will then trigger admin emails in such cases, so if you want to disable regular
	      user use of sudo (which requires configuration to setup anyway for  these	 options)  just	 use
	      this option, or NO_SUDO configuration item.

	      - no-vulkan - Skip vulkaninfo sourced Vulkan graphics API in -G.

	      - rfkill - Force use of rfkill tool in -E. rfkill does not support mac address data.

	      -	 rpm,  pkg  - Override disabled rpm package counts on primarily rpm run systems due to unac‐
	      ceptably slow execution times for this command on some systems:

	      rpm -qa --nodigest --nosignature

	      Even on newer rpm systems, in virtual machines, running rpm package list query takes more than
	      0.15 seconds (compared to 0.01 to 0.05 for dpkg, pacman, pkgtool etc)  for  just	this  single
	      feature,	which  is north of 10% of total execution time for inxi -bar. On bare metal this can
	      hit 1 second or more in our tests.  Older systems have taken up to 30 seconds to run this com‐
	      mand!

	      For systems that support running rpm along with the primary package installer (dpkg/apt,	pac‐
	      man,  and	 pkgtool/slackpkg),  there  are not going to be many rpms, if any, installed, so the
	      command runs in those cases (if inxi can determine it is running in that type of system).

	      - sensors-sys - Force use of /sys/class/hwmon data for sensors (excluding ipmi sensors,  which
	      are  their  own line if present), skip lm-sensors. Generally useful for testing since sys data
	      is used if no lm-sensors data was found anyway, but if lm-sensors was installed, and  returned
	      no data, it's most likely if not nearly certain that /sys will also not return data.

	      - swaymsg -  Wayland: Force -G monitor data source swaymsg.

	      - udevadm - Forces use of udevadm as data source (currently -m RAM data).

	      -	 usb-sys  - Forces the USB data generator to use /sys as data source instead of lsusb (Linux
	      only).

	      - vmstat - Forces use of vmstat for memory data.

	      - wayland - Wayland: Force use of Wayland data sources, disables x tools glxinfo, xrandr,	 xd‐
	      pyinfo.

	      - wl-info - Wayland: Force -G monitor data source wayland-info or weston-info.

	      - wlr-randr - Wayland: Force -G monitor data source wlr-randr.

	      - wmctrl - Force System item wm to use wmctrl as data source, override default ps source.

       --hddtemp
	      Shortcut. See --force hddtemp.

       --html-wan
	      Shortcut. See --force --html-wan.

       --ifconfig
	      Shortcut. See --force ifconfig.

       --man  Shortcut. See --force man.

       --no-dig
	      Shortcut. See --force no-dig.

       --no-doas
	      Shortcut. See --force no-doas.

       --no-egl
	      Shortcut. See --force no-egl.

       --no-html-wan
	      Shortcut. See --force no-html-wan.

       --no-man
	      Shortcut. See --force no-man.

       --no-opengl
	      Shortcut. See --force no-opengl.

       --no-sensor-force
	      Overrides user set SENSOR_FORCE configuration value. Restores default behavior.

       --no-ssl
	      Shortcut. See --force no-ssl.

       --no-sudo
	      Shortcut. See --force no-sudo.

       --pm-type [package manager name]
	      For distro package maintainers only, and only for non apt, rpm, or pacman based systems. To be
	      used to test replacement package lists for recommends for that package manager.

       --rpm, --pkg
	      Shortcut. See --force rpm.

       --sensors-default
	      Overrides configuration values SENSORS_USE or SENSORS_EXCLUDE on a one time basis.

       --sensors-exclude
	      Linux only. Similar to --sensors-use except removes listed sensors from sensor data. Make per‐
	      manent  with  SENSORS_EXCLUDE configuration item. Note that gpu, network, disk, and other spe‐
	      cific device monitor chips are excluded by default.

	      Example: inxi -sxx --sensors-exclude k10temp-pci-00c3

       --sensors-sys
	      Shortcut. See --force sensors-sys

       --sensors-use
	      Linux only. Use only the (comma separated) sensor arrays for -s report.  Make  permanent	with
	      SENSORS_USE configuration item. Sensor array ID value must be the exact value shown in lm-sen‐
	      sors sensors output (lm-sensors only) or use -s --dbg 18 ('main' =>.. section) to see the sen‐
	      sor ID strings used internally. If you only want to exclude one (or more) sensors from the re‐
	      port, use --sensors-exclude.

	      Can be useful if the default sensor data used by inxi is not from the right sensor array. Note
	      that  all	 other sensor data will be removed, which may lead to undesired consequences. Please
	      be aware that this can lead to many undesirable side-effects, since default behavior is to use
	      all the sensors arrays and select which values to use from them following a  set	sequence  of
	      rules. So if you force one to be used, you may lose data that was used from another one.

	      Most  likely  best  use  is when one (or two) of the sensor arrays has all the sensor data you
	      want, and you just want to make sure inxi doesn't use data from another array that has inaccu‐
	      rate or misleading data.

	      Note that gpu, network, disk, and other specific device monitor chips are excluded by default,
	      and should not be added since they do not provide cpu, board, system, etc, sensor data.

	      Example: inxi -sxx --sensors-use nct6791-isa-0290,k10temp-pci-00c3

       --sleep [0-x.x]
	      Usually in decimals. Change CPU sleep time for -C (current:  .35).  Sleep is used to  let	 the
	      system catch up and show a more accurate CPU use.	 Example:

	      inxi -Cxxx --sleep 0.15

	      Overrides default internal value and user configuration value:

	      CPU_SLEEP=0.25

       --tty  Forces  internal	IRC  flag to off. Used in unhandled cases where the program running inxi may
	      not be seen as a shell/pty/tty, but it is not an IRC client.  Put --tty first in	option	list
	      to  avoid	 unexpected  errors. If you want a specific output width, use the --width option. If
	      you want normal color codes in the output, use the -c [color ID] flag.

	      The sign you need to use this is extra numbers before the key/value pairs	 of  the  output  of
	      your  program.  These  are  IRC, not TTY, color codes. Please post a codeberg.org issue if you
	      find you need to use --tty (including the full -Ixxx line) so we can figure  out	how  to	 add
	      your program to the list of whitelisted programs.

	      You  can	see  what inxi believed started it in the -Ixxx line, Shell: or Client: item. Please
	      let us know what that result was so we can add it to the parent start program whitelist.

	      In some cases, you may want to also use --no-filter/-Z option if you want to see filtered val‐
	      ues. Filtering is turned on by default if inxi believes it is running in an IRC client.

       --usb-sys
	      Shortcut. See --force usb-sys

       --usb-tool
	      Shortcut. See --force lsusb

       --wan-ip-url [URL]
	      Force -i to use supplied URL as WAN IP source. Overrides dig or default IP  source  urls.	 URL
	      must start with http[s] or ftp.

	      The  IP  address	from  the URL must be the last item on the last (non-empty) line of the page
	      content source code.

	      Same as configuration value (example):

	      WAN_IP_URL='https://mysite.com/ip.php'

       --wayland, --wl
	      Shortcut. See --force wayland.

       --wm   Shortcut. See --force wmctl.

DEBUGGING OPTIONS
       --dbg {[1-x][,[1-x]]}
	      Accepts one or more comma separated dbg specific debugging numbers.

	      1 - Debug downloader failures. Turns off silent/quiet mode for curl, wget,  and  fetch.  Shows
	      more downloader action information. Shows some more information for Perl downloader.

	      1-xx  - See codeberg.org inxi-perl/docs/inxi-values.txt for specific specialized debugging op‐
	      tions. There are a lot.

       --debug [1-3]
	      - On screen debugger output.

       --debug 10
	      - Basic logging. Check  $XDG_DATA_HOME/inxi/inxi.log  or	$HOME/.local/share/inxi/inxi.log  or
	      $HOME/.inxi/inxi.log.

       --debug 11
	      - Full file/system info logging.

       --debug 20
	      Creates a tar.gz file of system data and collects the inxi report in a file.

	      * tree traversal data file(s) read from /proc and /sys, and other system data.

	      * xorg conf and log data, xrandr, xprop, xdpyinfo, glxinfo etc.

	      * data from dev, disks, partitions, etc.

       --debug 21
	      Automatically  uploads  debugger data tar.gz file to ftp.smxi.org, then removes the debug data
	      directory, but leaves the debug tar.gz file.  See --ftp for uploading to alternate locations.

       --debug 22
	      Automatically uploads debugger data tar.gz file to ftp.smxi.org, then removes the	 debug	data
	      directory and the tar.gz file.  See --ftp for uploading to alternate locations.

       --debug-id [string]
	      Insert  string  to file name for debugger. This is helpful so you can add for instance a user‐
	      name to a debugger dataset to make it easy to find.

	      Sample: --debug 22 --debug-id mrmazda

       --fake-data-dir
	      Developer only: Change default location of $fake_data_dir, which is where files are for --fake
	      {item} items.

       --ftp [ftp.yoursite.com/incoming]
	      For alternate ftp upload locations: Example:

	      inxi --ftp ftp.yourserver.com/incoming --debug 21

DEBUGGING OPTIONS TO DEBUG DEBUGGER FAILURES
       Only use the following in conjunction with --debug 2[012], and only use if you experienced a  failure
       or hang, or were instructed to do so.

       --debug-proc
	      Force  debugger  to parse /proc directory data when run as root. Normally this is disabled due
	      to unpredictable data in /proc tree.

       --debug-proc-print
	      Use this to locate file that /proc debugger hangs on.

       --debug-no-exit
	      Skip exit on error when running debugger.

       --debug-no-proc
	      Skip /proc debugging in case of a hang.

       --debug-no-sys
	      Skip /sys debugging in case of a hang.

       --debug-sys
	      Force PowerPC debugger parsing of /sys as doas/sudo/root.

       --debug-sys-print
	      Use this to locate file that /sys debugger hangs on.

SUPPORTED IRC CLIENTS
       BitchX, Gaim/Pidgin, ircII, Irssi, Konversation, Kopete, KSirc, KVIrc, Weechat, and Xchat.  Plus	 any
       others that are capable of displaying either built-in or external program output.

RUNNING IN IRC CLIENT
       To trigger inxi output in your IRC client, pick the appropriate method from the list below:

       Hexchat, XChat, Irssi
	      (and  many  other	 IRC  clients) /exec -o inxi [options] If you don't include the -o, only you
	      will see the output on your local IRC client.

       Konversation
	      /cmd inxi [options]

	      To run inxi in Konversation as a native program if your distribution or  inxi  package  hasn't
	      already done this for you, create this symbolic link:

	      KDE 4: ln -s /usr/local/bin/inxi /usr/share/kde4/apps/konversation/scripts/inxi

	      KDE 5: ln -s /usr/local/bin/inxi /usr/share/konversation/scripts/inxi

	      If inxi is somewhere else, change the path /usr/local/bin to wherever it is located.

	      If you are using KDE/QT 5, then you may also need to add the following to get the Konversation
	      /inxi command to work:

	      ln -s /usr/share/konversation /usr/share/apps/

	      Make  sure  you  also  have  the qdbus-qt5 package (Debian/Ubuntu + derived), qt5-qttools (Fe‐
	      dora/RHEL/SUSE + derived),  qt5-tools (Arch + derived) installed (for KDE 5/QT 5,	 check	dis‐
	      tros  for	 future package names), qt5-tools (Arch + derived). Check your distro if the program
	      is missing.  Depending on the distro, /usr/lib/qt5/bin/qdbus is required, which in Debian+  is
	      provided by the above package.

	      Then you can start inxi directly, like this:

	      /inxi [options]

       WeeChat
	      NEW: /exec -o inxi [options]

	      OLD: /shell -o inxi [options]

	      Newer  (2014  and	 later) WeeChats work pretty much the same now as other console IRC clients,
	      with /exec -o inxi [options]. Newer WeeChats have dropped the -curses part  of  their  program
	      name, i.e.: weechat instead of weechat-curses.

CONFIGURATION FILE
       inxi will read its configuration/initialization files in the following order:

       /etc/inxi.conf	contains  the  default	configurations.	 These	can  be	 overridden  by	 creating  a
       /etc/inxi.conf.d/inxi.conf file (global override), which will prevent distro packages  from  changing
       or  overwriting	your  edits.  This method is recommended if you are using a distro packaged inxi and
       want to override some global configuration items from the package's default /etc/inxi.conf  file	 but
       don't want to lose your changes on a package update.

       In case the distro is using either /usr/etc or /usr/local/etc as non core tool default location, inxi
       will use those paths instead, with the inxi.conf.d/inxi.conf override option.

       You  can	 also override, per user, with a user configuration file found in one of the following loca‐
       tions (inxi will store its config file using the following precedence):

       if $XDG_CONFIG_HOME is not empty, it will go there, else if $HOME/.config/inxi.conf exists,  it	will
       go there, and as a last default, the legacy location is used), i.e.:

       $XDG_CONFIG_HOME/inxi.conf  >  $HOME/.config/inxi.conf > $HOME/.inxi/inxi.conf > /usr/etc/inxi.conf >
       /usr/etc/inxi.conf.d/inxi.conf > /usr/local/etc/inxi.conf  >  /usr/local/etc/inxi.conf.d/inxi.conf  >
       /etc/inxi.conf.d/inxi.conf > /etc/inxi.conf

CONFIGURATION OPTIONS
       See  the	 documentation page for more complete information on how to set these up, and for a complete
       list of options:

       https://smxi.org/docs/inxi-configuration.htm

       Basic Options
	      Here's a brief overview of the basic options you are likely to want to use:

	      COLS_MAX_CONSOLE The max display column  width  on  terminal.  If	 terminal/console  width  or
	      --width is less than wrap width, wrapping of line starter occurs

	      COLS_MAX_IRC The max display column width on IRC clients.

	      COLS_MAX_NO_DISPLAY The max display column width in out of X / Wayland / desktop / window man‐
	      ager.

	      CPU_SLEEP Decimal value 0 or more. Default is usually around 0.35 seconds. Time that inxi will
	      'sleep' before getting CPU speed data, so that it reflects actual system state.

	      DOWNLOADER  Sets default inxi downloader: curl, fetch, ftp, perl, wget.  See --recommends out‐
	      put for more information on downloaders and Perl downloaders.

	      FILTER_STRING Default . Any string you prefer to see instead for filtered values.

	      INDENT Change primary indent width of wide mode output. See --indent.

	      INDENTS Change primary indents of narrow wrapped mode output, and second	level  indents.	 See
	      --indents.

	      LIMIT Overrides default of 10 IP addresses per IF. This is only of interest to sys admins run‐
	      ning servers with many IP addresses.

	      LINES_MAX	 Values:  [-2-xxx]. See -Y for explanation and values.	Use -Y -3 to restore default
	      unlimited output lines. Avoid using this in general unless the machine is	 a  headless  system
	      and you want the output to be always controlled.

	      MAX_WRAP (or WRAP_MAX) The maximum width where the line starter wraps to its own line. If ter‐
	      minal/console width or --width is less than wrap width, wrapping of line starter occurs. Over‐
	      rides default. See --max-wrap. If 80 or less, wrap will never happen.

	      NO_DIG Set to 1 or true to disable WAN IP use of dig and force use of alternate downloaders.

	      NO_DOAS Set to 1 or true to disable internal use of doas.

	      NO_HTML_WAN  Set	to  1 or true to disable WAN IP use of HTML Downloaders and force use of dig
	      only, or nothing if dig disabled as well. Same as --no-html-wan. Only use if dig	is  failing,
	      and HTML downloaders are hanging.

	      NO_SUDO Set to 1 or true to disable internal use of sudo.

	      PARTITION_SORT Overrides default partition report sort. See --partition-sort for options.

	      PS_COUNT The default number of items showing per -t type, m or c. Default is 5.

	      SENSORS_CPU_NO  In  cases	 of  ambiguous temp1/temp2 (inxi can't figure out which is the CPU),
	      forces sensors to use either value 1 or 2 as CPU temperature. See the above configuration page
	      on smxi.org for full info.

	      SENSORS_EXCLUDE Exclude supplied sensor array[s] from sensor  report.   Override	with  --sen‐
	      sors-default. See --sensors-exclude.

	      SENSORS_USE  Use	only  supplied	sensor array[s]. Override with --sensors-default. See --sen‐
	      sors-use.

	      SEP2_CONSOLE Replaces default key / value separator of ':'. Test with --separator.

	      USB_SYS Forces all USB data to use /sys instead of lsusb.

	      WAN_IP_URL Forces -i to use supplied URL, and to not use dig (dig is generally  much  faster).
	      URL  must begin with http or ftp. Note that if you use this, the downloader set tests will run
	      each time you start inxi whether a downloader feature is going to be used or not.

	      The IP address from the URL must be the last item on the last (non-empty) line  of  the  URL's
	      page content source code.

	      Same as --wan-ip-url [URL]

	      WEATHER_SOURCE  Values:  [0-9].  Same  as --weather-source.  Values 4-9 are not currently sup‐
	      ported, but this can change at any time.

	      WEATHER_UNIT Values: [m|i|mi|im]. Same as --weather-unit.

       Color Options
	      It's best to use the -c [94-99] color selector tool to set the  following	 values	 because  it
	      will  correctly update the configuration file and remove any invalid or conflicting items, but
	      if you prefer to create your own configuration files, here are the options. All take the inte‐
	      ger value from the options available in -c 94-99.

	      NOTE: All default and configuration file set color values are removed when output is piped  or
	      redirected.  You	must  use  the	explicit  -c  [color number] option if you want colors to be
	      present in the piped/redirected output (creating a PDF for example).

	      CONSOLE_COLOR_SCHEME The color scheme for console output (not in X/Wayland).

	      GLOBAL_COLOR_SCHEME Overrides all other color schemes.

	      IRC_COLOR_SCHEME Desktop X/Wayland IRC CLI color scheme.

	      IRC_CONS_COLOR_SCHEME Out of X/Wayland, IRC CLI color scheme.

	      IRC_X_TERM_COLOR_SCHEME In X/Wayland IRC client terminal color scheme.

	      VIRT_TERM_COLOR_SCHEME Color scheme for virtual terminal output (in X/Wayland).

       Developer Options
	      These are useful only for developers.

	      FAKE_DATA_DIR - change default fake data directory location. See --fake-data-dir.

BUGS
       Please report bugs using the following resources.

       You may be asked to run the inxi debugger tool (see --debug 21/22), which will upload a data dump  of
       system  files  for  use	in debugging inxi. These data dumps are very important since they provide us
       with all the real system data inxi uses to parse out its report.

       Issue Report
	      File an issue report: https://codeberg.org/smxi/inxi/issues

       Forums Post on inxi forums: https://techpatterns.com/forums/forum-33.html

       IRC irc.oftc.net / irc.libera.chat
	      You can also visit channel: #smxi to post issues on either network.

HOMEPAGE
       https://codeberg.org/smxi/inxi
	- Home of inxi source repository

       https://codeberg.org/smxi/pinxi
	- Home of pinxi (inxi development version), docs and data.

       https://smxi.org/docs/inxi.htm
	- The main docs for inxi. See pinxi repository for more technical resources.

       https://fosstodon.org/@smxi
	- Follow @smxi on Mastodon!

AUTHOR AND CONTRIBUTORS TO CODE
       inxi is a fork of locsmif's very clever infobash script.

       Original infobash author and copyright holder: Copyright (C) 2005-2007 Michiel de Boer aka locsmif

       inxi version: Copyright (C) 2008-2025 Harald Hope

       This man page was originally created by Gordon Spencer (aka aus9) and is maintained  by	Harald	Hope
       (aka h2 or TechAdmin).

       Initial	CPU logic, konversation version logic, occasional maintenance fixes, and the initial xiin.py
       tool for /sys parsing (obsolete, but still very much appreciated for all the valuable  debugger	data
       it helped generate): Scott Rogers

       Further fixes (listed as known):

       Horst Tritremmel 

       Steven Barrett (aka: damentz) - USB audio patch; swap percent used patch.

       Jarett.Stevens - dmidecode -M patch for older systems with no /sys.

SPECIAL THANKS TO THE FOLLOWING
       The  nice  people  at  irc.oftc.net channels #linux-smokers-club and #smxi, who all really have to be
       considered to be co-developers because of  their	 non-stop  enthusiasm  and  willingness	 to  provide
       real-time testing and debugging of inxi development over the years.

       LinuxQuestions.org  Slackware  forum  members,  for  major help with development and debugging new or
       refactored features, particularly the redone CPU logic of 2021-12.

       Siduction forum members, who have helped get some features working by providing	a  large  number  of
       datasets that have revealed possible variations, particularly for the RAM -m option.

       AntiX  users  and  admins,  who	have helped greatly with testing and debugging, particularly for the
       3.0.0 release.

       ArcherSeven (Max), Brett Bohnenkamper (aka KittyKatt), and Iotaka, who  always  manage  to  find	 the
       weirdest or most extreme hardware and setups that help make inxi much more robust.

       For the vastly underrated skill of report error/glitch catching, Pete Haddow.  His patience and focus
       in going through inxi repeatedly to find errors and inconsistencies is much appreciated.

       For a huge boost to BSD support, Stan Vandiver, who did a lot of testing and setup many remote access
       systems for testing and development.

       For  testing,  bug  finding, suggestions, feature requests, MrMazda. He has over the years has helped
       shape inxi into what it is today, in particular but not limited to, the Graphics features.

       All the inxi package maintainers, distro support people, forum moderators, and in particular, sys ad‐
       mins with their particular issues, which almost always help make inxi better, and any others who con‐
       tribute ideas, suggestions, and patches.

       Without a wide range of diverse Linux kernel-based Free Desktop systems to test on,  we	could  never
       have gotten inxi to be as reliable and solid as it's turning out to be.

       And  of	course,	 a big thanks to locsmif, who figured out a lot of the core ideas, logic, and tricks
       originally used in inxi Gawk/Bash.

inxi 3.3.40					 2025-11-25					     INXI(1)