Provided by: inxi_3.3.36-1-1_all bug

NAME

       inxi - Command line system information script for console and IRC

SYNOPSIS

       inxi

       inxi [-AbBCdDEfFGhiIjJlLmMnNopPrRsSuUwyYzZ]

       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 script built for console and  IRC.  It  is  also
       used  a  debugging  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.  Script colors can be turned off if
       desired with -c 0, or changed using 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 network 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 option (-Fz, 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.

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 output per primary data type.

       *  ADMIN EXTRA DATA OPTIONS What -a adds to the output per primary data type. These have a
       lot of information 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 explanitory.

USING OPTIONS

       Options can be combined if they do not conflict. You can either group the letters together
       or separate 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 -FxxzJy90 | 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 output, short form. Same as: inxi -v 2

       -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 output shows the current charge, as well as its value as
              a  percentage 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%)

              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%)

              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 powered.

       --bluetooth
              See -E.

       -c , --color
              See OUTPUT CONTROL OPTIONS.

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

       -C , --cpu
              Show  full CPU output (if each item available): basic CPU topology, model, type, L2
              cache, average 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 output. Also shows floppy disks if  present.  Note  that  there  is  no
              current way to get any information 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 percentage 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  total  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 Options (--admin options) for many more features.

       -E, --bluetooth
              Show  bluetooth  device(s),  drivers.  Show Report: with HCI ID, state, address per
              device (requires 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 device, 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  -F  in  order  to
              avoid spamming. ARM CPUs: show features items.

       -F , --full
              Show  Full  output  for inxi. Includes all Upper Case line letters (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 -Frmxx

       -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  drivers)  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  profile  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 Wayland 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 script
              global COLS_MAX_CONSOLE if you want a different default value, or use -y [width] to
              temporarily override the defaults or actual window width.

       -i , --ip
              Show  WAN  IP  address and local interfaces (latter requires ifconfig or ip network
              tool), as well as network output from -n. Not  shown  with  -F  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 output 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, runlevel/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
              partition(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  connection,  but  can be used to match this output to lsusb values, which
              generally shows BusID / DeviceID (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  logical  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 section, -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' device, 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 -F 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  supported,  and  Error  Correction  information.
              Devices  shows locator data (highly variable in syntax), 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 output, 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. Sample:

              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 machines. 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 rounding 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 support some BSDs are used. Less commonly  used  or
              harder to detect VMs may not be correctly detected. If you get an incorrect output,
              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 number.

       -o , --unmounted
              Show unmounted partition information (includes UUID and LABEL if available).  Shows
              file system 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):

              <username> 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  output.  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 extra 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  output  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, otherwise 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  option,  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 reports.

       --usb
              See -J.

       -v , --verbosity
              Script verbosity levels. If no verbosity level  number  is  given,  0  is  assumed.
              Should not be used with -b or -F.

              Supported levels: 0-8 Examples : inxi -v 4  or  inxi -v4

       -v 0   - Short output, same as: inxi

       -v 1   -  Basic  verbose,  -S  +  basic CPU (cores, type, average clock speed, and min/max
              speeds, if available) + -G + basic Disk + -I.

       -v 2   - Adds networking device (-N), Machine (-M) data, Battery (-B) (if available). Same
              as: inxi -b

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

       -v 4   -  Adds  partition size/used data (-P) for (if present): / /home /var/ /boot. Shows
              full drive data (-D)

       -v 5   - Adds audio device (-A),  memory/RAM  (-m),  bluetooth  data  (-E)  (if  present),
              sensors  (-s),  RAID  data (if present), partition label (-l), UUID (-u), full swap
              data (-j), and short form of optical drives.

       -v 6   - Adds full mounted partition data (-p), unmounted  partition  data  (-o),  optical
              drive data (-d), USB (-J); triggers -xx extra data option.

       -v 7   -  Adds  network IP data (-i), forced bluetooth (-E), Logical (-L), RAID (-R), full
              CPU flags/features (-f),  triggers -xxx

       -v 8   - All system data available. Adds advanced EDID  data  (--edid),  Repos  (-r),  PCI
              slots  (--slots),  processes (-tcm), admin (--admin). Useful for testing output and
              to see what data you can get from your system.

       --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  version  info already). Does not exit unless used without any other options.
              Can be used with normal 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 example, 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 removed, 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 output 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 directory 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 example.

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.

       --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 indented 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 configuration value MAX_WRAP.

       --output,  --export [json|screen|xml]
              Change data output type. Requires --output-file if not screen.

              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 explanation 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]
              The given directory path must exist. The directory path given must exist, The print
              options prints to stdout.  Required for non-screen --output formats (json|xml).

       --separator, --sep [character(s)]
              Change  the default output key: value separator : to something else. Make permanent
              with configuration 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 -Fxx -y 130
              inxi -Fxxy
              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 -Fa, -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  expectation  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] information.

              - 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 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 (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 automatically.

              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):

              <username> 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] information.

              - 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 versions 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] information.

              - 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.  ifconfig  may  show  multiple  site  values, as with global temporary, and
              global temporary deprecated.

              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
              types output. Moves to Repos if -rx.

              If  your  package  manager is not supported, please file an issue and we'll add it.
              That requires the full output of the query or  method  to  discover  all  installed
              packages  on  your  system,  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 corresponds 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] information.

              - 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
              distributions. The distro must be both derived from a parent distro (e.g. Mint from
              Ubuntu),  and explicitly added to the supported distributions for this feature. Due
              to the complexity of distribution 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 output 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.

              - Adds serial number.

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

              - Adds drive speed (if available). This is the theoretical top speed of the  device
              as  reported.  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 device 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 output.

              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 rectangle 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 driver options. Note
              that if you have explicitly set the driver in xorg.conf, Xorg will not create  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 necessarily 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.

              -  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 supported 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 monitors 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 output. 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 different (eg: lanes: rx: 2 tx: 4). Linux only.  See -Ja for sample output.

       -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 available.

              - 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 supported. 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 chemistry (e.g. Li-ion), cycles (NOTE: there appears to be a problem
              with the Linux kernel obtaining the cycle count, so this  almost  always  shows  0.
              There's  nothing  that  can  be  done  about  this  glitch,  the data is simply not
              available as of  2018-04-03),  location  (only  available  from  dmidecode  derived
              output).

              - 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: [status].
              smt: [status]
              MT  in  type:  will  show  if  smt  is  enabled  in general. 3 values are possible:
              [enabled|disabled|<unsupported>]. <unsupported> 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!

              - Adds to Monitors (if detected) frequency (hz:).

              - 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  different (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).

              - Wayland: Adds to Monitors scale: (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 explanation 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. Total 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 output 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 because 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 alsamixer, 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 exposed CPU flags (eg OSXSAVE), for > v2, adds note: check.

              - Adds CPU family, model-id,  and  stepping  (replaces  rev  of  -Cx).   Format  is
              hexadecimal (decimal) 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 parentheses 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 enable, 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  clusters  but  no  dies,  some  dies  and clusters, and some neither dies nor
              clusters. This is a function of how the CPU topology reports itself to the  kernel.
              Note  that  core counts are per physical 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:
              ... (status|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 THRESHOLD 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 unhandled 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 because 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.

              X.org sample (with both xdpyinfo and xrandr data available):
              inxi -aGz
              Graphics:
                Device-1: AMD 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: 0a:00.0 chip-ID: 1002:68f9 class-ID: 0300 temp: 58.0 C
                Display: x11 server: X.Org v: 1.21.1.7 with: Xwayland v: 22.1.9
                  compositor: xfwm v: 4.18.0 driver: X: loaded: modesetting dri: r600
                  gpu: radeon display-ID: :0.0 screens: 1
                Screen-1: 0 s-res: 2560x1024 s-dpi: 96
                  s-size: 677x270mm (26.65x10.63") s-diag: 729mm (28.7")
                Monitor-1: DVI-I-1 pos: primary,left model: Samsung SyncMaster
                  serial: H9NX842662 built: 2004 res: 1280x1024 hz: 60 dpi: 96
                  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: G434H87HRA2D built: 2008 res: 1280x1024 hz: 60 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: egl: 1.4 drv: kms_swrast surfaceless:
                  drv: r600 x11: drv: r600 inactive: wayland
                API: OpenGL v: 4.5 vendor: x.org mesa v: 22.3.6 glx-v: 1.4
                  es-v: 3.1 direct-render: yes renderer: AMD CEDAR (DRM 2.50.0 /
                  6.4.3-1-liquorix-amd64 LLVM 15.0.6) device-ID: 1002:68f9
                  memory: 1000 MiB unified: no
                API: Vulkan v: 1.3.250 layers: 3 device: 0 type: cpu
                  name: llvmpipe (LLVM 15.0.6 256 bits) driver: mesa llvmpipe
                  v: 22.3.6 (LLVM 15.0.6) device-ID: 10005:0000 surfaces: xcb,xlib

              Wayland sample, with Sway/swaymsg:
              inxi -aGz
              Graphics:
                Device-1: AMD Cedar [Radeon HD 5000/6000/7350/8350 Series] vendor: XFX Pine
                  driver: radeon v: kernel alternate: amdgpu arch: TeraScale 2
                  process: TSMC 32-40nm 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: 0a:00.0 chip-ID: 1002:68f9 class-ID: 0300
                Display: wayland server: Xwayland v: 21.1.4 compositor: sway v: 1.6.1
                  driver: dri: r600 gpu: radeon d-rect: 2560x1024
                Monitor-1: DVI-I-1 pos: right model: SyncMaster serial: <filter>
                  built: 2004 res: 1280x1024 hz: 60 dpi: 96 gamma: 1.2
                  size: 340x270mm (13.4x10.6") diag: 434mm (17.1") ratio: 5:4 modes:
                  max: 1280x1024 min: 720x400
                Monitor-2: VGA-1 pos: primary,left model: DELL 1908FP serial: <filter>
                  res: 1280x1024 hz: 60 gamma: 1.4 dpi: 86 gamma: 1.4
                  size: 380x300mm (15.0x11.8") diag: 484mm (19.1") ratio: 5:4 modes:
                  max: 1280x1024 min: 720x400
                API: OpenGL v: 4.6 compat-v: 4.5 vendor: x.org mesa v: 22.3.6
                  glx-v: 1.4 direct-render: yes renderer: AMD CEDAR (DRM 2.50.0 /
                  6.4.3-1-liquorix-amd64 LLVM 15.0.6) device-ID: 1002:68f9
                API: EGL v: 1.5 hw: drv: amd r600 platforms: device: 0
                  drv: r600 device: 1 drv: swrast surfaceless: drv: r600 wayland:
                  drv: r600 inactive: gbm,x11

       -a -I  -  Adds  to Power: other hibernate and suspend available (avail:) states, hibernate
              suspend image: 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 unfamiliar 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 default value or not (Linux only, and only if available). If  not  the  default
              value, shows default value as well, e.g.

              For -P per swap physical partition:

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

              For -j row 1 output:

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

              - Adds zswap data for row 1 output:

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

              -  Adds  for  zram swap type: active compression type, available compression types,
              and max compression 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: <filter>

       -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 because 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 version.

              -  Adds  other available (avail:) screensavers/lockers in tools: section. These are
              ones installed, 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 selection 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 [bt-adapter|btmgmt|hciconfig|rfkill]
              See --force [tool name]. Used to set -E report tool.

       --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.

       --display [:<integer>]
              Will try to get display data out of  X  (does  not  usually  work  as  root  user).
              Default  gets display info from display :0. If you use the format --display :1 then
              it would get it from display 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 information 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.

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

              inxi -MJ --force dmidecode,lsusb

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

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

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

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

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

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

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

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

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

              - rpm, pkg - Force override of disabled rpm package counts  on  primarily  rpm  run
              systems due to unacceptably slow execution times for this command:

              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 command!

              For  systems  that  support  running  rpm  along with the primary package installer
              (dpkg/apt, pacman, 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.

              - 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 - Forces use of Wayland, disables x tools glxinfo, xrandr, xdpyinfo.

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

       --hddtemp
              Shortcut. See --force hddtemp.

       --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
              Shortcut. See --force ifconfig.

       --man  Updates / installs man page with -U if pinxi or using -U 3 dev branch. (Only active
              if -U is is not disabled by maintainers).

       --no-dig
              Overrides default use of dig to get WAN IP address. Allows use of normal downloader
              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  register 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-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-sensor-force
              Overrides user set SENSOR_FORCE configuration value. Restores default behavior.

       --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 connection 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.

       --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 permanent  with  SENSORS_EXCLUDE  configuration  item.  Note  that  gpu,
              network, disk, and other specific 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 output.  Make
              permanent with SENSORS_USE configuration item. Sensor array ID value  must  be  the
              exact value shown in lm-sensors sensors output (lm-sensors only) or use -s --dbg 18
              ('main' =>.. section) to see the sensor ID strings used  internally.  If  you  only
              want to exclude one (or more) sensors from the output, 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 inaccurate 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 values. 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 options. 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 output 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 username 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 script 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 script 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 (Fedora/RHEL/SUSE + derived),  qt5-tools  (Arch  +  derived)  installed
              (for  KDE  5/QT  5,  check  distros  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 locations (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 manager.

              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 output for more information on downloaders and Perl downloaders.

              FILTER_STRING Default <filter>. 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 running 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 terminal/console width or --width is less than  wrap  width,  wrapping  of
              line  starter  occurs.  Overrides 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 output 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 output.  Override with
              --sensors-default. See --sensors-exclude.

              SENSORS_USE Use only supplied sensor array[s]. Override with --sensors-default. See
              --sensors-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 supported, 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 integer 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-2023 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 <hjt at sidux.com>

       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  output  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  admins  with their particular issues, which almost always help make inxi
       better, and any others who contribute 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.