inxi :: dependencies and recommended programs
Page Version: 1.3 Page Updated: 2018-03-17
- Dependencies – the programs inxi 3.0 and newer requires to run
- Recommends – programs that some parts of inxi 3.0 and newer need to generatefull output, but which are not required to run inxi
- inxi --recommends – a sample of the internal inxi --recommends option tool, which shows all the dependency and recommends information for your system
- Legacy inxi dependencies and recommends – dependencies and recommends for pre 3.0.0 inxi, the Bash/Gawk version that is.
Dependencies
Dependencies are programs that are required for inxi to run.
Check your distro or OS for proper package name by doing this:
which [application]
Then find what package owns that application file.
Program names in parentheses are BSD equivalents, where applicable.
Note that all graphics packages previously labeled Depends have been made Recommends because inxi can run on headless or X-less systems, as a system utility. Distro maintainers can decide what they want to do with the X utilities.
You can run the start option inxi --recommends which will print out all dependencies and recommends, along with some other information, then tell you which package you need to install to add that feature.
- Perl 5.08 or any newer 5.xx
- lspci (BSDs: pciconf)
- ps
- BSD only: sysctl
Linux only: /proc and /sys
The following are not programs per se, but are things that are also required for inxi to run properly.
- The /proc filesystem should be present and mounted.
- The /sys filesystem can provide inxi with a lot of system hardware data without requiring root user. /sys is used to collect a variety of features, especially for -B, -M -D, and -d.
Recommends
Recommends are programs that are required to run certain specific features of inxi, but are not required to run inxi itself. We always strive to keep recommends to a bare minimum, to make inxi as portable and flexible as possible.
Check your distro or OS for proper package name by doing this:
which [application]
Then find what package owns that application file.
Program names in parentheses are BSD equivalents, where applicable.
Note that all graphics packages are Recommends because inxi can run on headless or X-less systems, as a system utility. Distro maintainers can decide what they want to do with the X utilities, if it's possible to test if X packages are installed, and if so, install these Recommends as Dependencies, that would be ideal.
You can run the start option --recommends which will print out all dependencies and recommends, along with some other information, then tell you which package you need to install to add that feature.
- -A, -N, --usb - for output of usb audio/network card information, and USB report: lsusb (some BSDs have lsusb) BSD: usbdevs)
- -Ax - for audio module version: modinfo (GNU/Linux only)
- -B - Fallback for systems with no /sys battery data (or with --alt 33 option): dmidecode
- -D - For user level hdd temp output: sudo
* Note: requires user action for this feature to run as user (edit /etc/sudoers file)
BSD only, translate gptid path to /dev/adaxx: glabel - -Dx - for hdd temp output (root only default): hddtemp
- -G - full graphics output requires:
- OpenGL data: glxinfo
- Multiscreen resolutions: xdpyinfo
- Single screen resolution: xrandr
- -i - IP information, local/wan - ip (BSDs and older Linux: ifconfig).
-i - For WAN IP information, one of the following: dig (preferred tool); HTTP::Tiny (Perl downloader); Curl; Wget; Fetch (BSDs) -n - In BSDs, ifconfig is also used to generate advanced -n IF data. - -I (out of X) or -Ix (in X) - view current runlevel: runlevel (sysvinit). Not applicable for new systemd systems.
For sysvinit systems, to get version number: strings - -m - RAM report data: dmidecode
- -M - Fallback for when no /sys or sysctl machine data was found (or with --alt 33 option): dmidecode
- -o - for unmounted file system information in unmounted drives (root only default): file (file)
* Note: requires user action for this feature to run as user (edit /etc/sudoers file)
* For user level unmounted file system type output: sudo - -l,-u (label/uuid) - BSD only: gpart (sometimes in sysctl, depends on the BSD)
- -R - ZFS raid information: zpool
BSD only, translate gptid path to /dev/adaxx: glabel - -s For any sensors output, fan, temp, etc: sensors (GNU/Linxu only)
* Note: requires setup of lm-sensors (sensors-detect and adding modules/modprobe/reboot, and ideally, pwmconfig) prior to full output being available.
Some BSD systems offer sensors data in the output of sysctl -a.
For nvidia advanced card sensors: nvidia-settings - -S - for detecting running desktop: xprop
- --debug 20,21,22 - For advanced /sys tree data: tree
inxi --recommends sample
inxi has a built in tool to tell you what is available in your system and what is missing. As of version 3.0.0, the recommends is given for the relevant OS and distro, where applicable.
inxi --recommends inxi will now begin checking for the programs it needs to operate. Check inxi --help or the man page (man inxi) to see what options are available. ------------------------------------------------------------------------------- Test: core tools: Perl version: 5.024001 Current shell: bash 4.4.12 Default shell: bash ------------------------------------------------------------------------------- Test: required system directories: /proc: ............................................................ Present /sys: ............................................................. Present All required system directories are present ------------------------------------------------------------------------------- Test: recommended system programs: dig: -i wlan IP.................................................... Present dmidecode: -M if no sys machine data; -m........................... Present file: -o unmounted file system..................................... Present hddtemp: -Dx show hdd temp......................................... Present ifconfig: -i ip LAN (deprecated)................................... Missing ip: -i ip LAN...................................................... Present lsusb: -A usb audio; -N usb networking; --usb...................... Present modinfo: Ax; -Nx module version.................................... Present runlevel: -I fallback to Perl...................................... Present sensors: -s sensors output......................................... Present strings: -I sysvinit version....................................... Missing sudo: -Dx hddtemp-user; -o file-user............................... Missing tree: --debugger 20,21 /sys tree................................... Missing uptime: -I uptime.................................................. Present The following recommended system programs are missing: Program: ifconfig ~ Install package: net-tools Program: strings ~ Install package: binutils Program: sudo ~ Install package: sudo Program: tree ~ Install package: tree ------------------------------------------------------------------------------- Test: recommended display information programs: glxinfo: -G glx info............................................... Missing xdpyinfo: -G multi screen resolution............................... Missing xprop: -S desktop data............................................. Missing xrandr: -G single screen resolution................................ Missing The following recommended display information programs are missing: Program: glxinfo ~ Install package: mesa-utils Program: xdpyinfo ~ Install package: X11-utils Program: xprop ~ Install package: X11-utils Program: xrandr ~ Install package: x11-xserver-utils ------------------------------------------------------------------------------- Test: recommended downloader programs (You only need one of these): Perl HTTP::Tiny is the default downloader tool if IO::Socket::SSL is present. See --help --alt 40-44 options for how to override default downloader(s) in case of issues. If dig is installed, it is the default for WAN IP data. Strongly recommended. Dig is fast and accurate. curl: -i (if no dig); -w,-W; -U.................................... Missing dig: -i wlan IP.................................................... Present wget: -i (if no dig); -w,-W; -U.................................... Present The following recommended downloader programs are missing. However, you really only need dig in most cases. All systems should have at least one of the downloader options present.: Program: curl ~ Install package: curl ------------------------------------------------------------------------------- Test: recommended Perl modules (Optional): None of these are strictly required, but if you have them all, you can eliminate some recommended non Perl programs from the install. HTTP::Tiny and IO::Socket::SSL must both be present to use as a downloader option. HTTP::Tiny: -U; -w,-W; -i (if dig not installed)................... Present IO::Socket::SSL: -U; -w,-W; -i (if dig not installed).............. Missing Time::HiRes: -C cpu sleep (not required); --debug timers........... Present Cpanel::JSON::XS: --output json - required for export.............. Present XML::Dumper: --output xml - Crude and raw.......................... Present The following recommended Perl modules are missing: Perl Module: IO::Socket::SSL ~ Install package: libio-socket-ssl-perl ------------------------------------------------------------------------------- Test: recommended directories: /dev: -l,-u,-o,-p,-P,-D disk partition data........................ Present /dev/disk/by-id: -D serial numbers................................. Present /dev/disk/by-label: -l,-o,-p,-P partition labels................... Present /dev/disk/by-path: -D extra data................................... Present /dev/disk/by-uuid: -u,-o,-p,-P partition uuid...................... Present /sys/class/dmi/id: -M system, motherboard, bios.................... Present All recommended directories are present ------------------------------------------------------------------------------- Test: recommended files: Note that not all of these are used by every system, so if one is missing it's usually not a big deal. /etc/lsb-release: -S distro version data (older version)........... Missing /etc/os-release: -S distro version data (newer version)............ Present /proc/asound/cards: -A sound card data............................. Missing /proc/asound/version: -A ALSA data................................. Missing /proc/cpuinfo: -C cpu data......................................... Present /proc/mdstat: -R mdraid data (if you use dm-raid).................. Missing /proc/meminfo: -I,-tm, -m memory data.............................. Present /proc/modules: -G module data (sometimes).......................... Present /proc/mounts: -P,-p partition advanced data........................ Present /proc/scsi/scsi: -D Advanced hard disk data (used rarely).......... Missing /var/log/Xorg.0.log: -G graphics driver load status................ Missing The following recommended files are missing: File: /etc/lsb-release File: /proc/asound/cards File: /proc/asound/version File: /proc/mdstat File: /proc/scsi/scsi File: /var/log/Xorg.0.log ------------------------------------------------------------------------------- Ok, all done with the checks. Have a nice day.
Legacy inxi dependencies and recommends
Version 3.0.0 is a full rewrite of Bash/Gawk inxi into Perl, and so the dependencies and recommends have changed significantly. The following dependencies and recommends are for the legacy Bash/Gawk inxi, whose last release was 2.3.56
Dependencies
Dependencies are programs that are required for inxi to run.
Package names in (...) are the Debian Squeeze package name. Check your distro for proper package name by doing this: which -application- then find what package owns that application file.
Please check the inxi top comment header for the latest Depends/Recommends listing, it should always be up to date, unlike this wiki page.
Note that all graphics packages previously labeled Depends have been made Recommends because inxi should be able to run on headless or X-less systems, as a system utility. Distro maintainers can decide what they want to do with the X utilities, if it's possible to test if X packages are installed, and if so, install these Recommends as Dependencies, that would be ideal.
As of version 1.6.6, you can run the start option inxi --recommends which will print out all dependencies and recommends, along with some other information, then tell you which package you need to install to add that feature.
- bash >=3.0 (bash)
- df, readlink, stty, tr, uname, wc (coreutils)
- gawk (gawk)
- grep (grep)
- lspci (pciutils)
- free, ps, uptime (procps)
- sed (sed)
/proc and /sys
Linux only: The following are not programs per se, but are things that are also required for inxi to run properly.
- The proc filesystem should be present and mounted.
- It is useful to have the /sys filesystem because inxi can get a lot of system hardware data from there without requiring root user. /sys is used to collect a variety of system data, especially for -M and -d.
General issues with Bash
- Apparently unpatched bash 3.0 has arrays broken; bug reports:
- Arrays work in bash 2.05b, but "egrep -m" does not.
Recommends
Recommends are programs that are required to run certain specific features of inxi, but are not required to run inxi itself. We always strive to keep recommends to a bare minimum, to make inxi as portable and flexible as possible.
Package names in (...) are the Debian Squeeze package name. Check your distro for proper package name by doing this: which -application- then find what package owns that application file.
Please check the inxi top comment header for the latest Depends/Recommends listing, it should always be up to date, unlike this wiki page.
Note that all graphics packages previously labeled Depends have been made Recommends because inxi should be able to run on headless or X-less systems, as a system utility. Distro maintainers can decide what they want to do with the X utilities, if it's possible to test if X packages are installed, and if so, install these Recommends as Dependencies, that would be ideal.
As of version 1.6.6, you can run the start option --recommends which will print out all dependencies and recommends, along with some other information, then tell you which package you need to install to add that feature.
- -A, -N - for output of usb audio/network card information: lsusb (usbutils)
- -Ax - for audio module version: modinfo (module-init-tools)
- -Dx - for hdd temp output (root only default): hddtemp (hddtemp)
- -S - for detecting running desktop: xprop (X11-utils)
- -D - For user level hdd temp output: sudo (sudo)
* Note: requires user action for this feature to run as user (edit /etc/sudoers file) - -G - full graphics output requires:
- glxinfo (mesa-utils)
- xdpyinfo (x11-utils)
- xrandr (x11-xserver-utils)
- -i - IP information, local/wan - ip (iproute) (previous to 1.7.8, inxi used the deprecated tool: ifconfig (net-tools). Please note that so as to not break previous inxi installs, inxi still will use ifconfig if ip is missing, so you won't see any unexpected errors.
- -I (out of X) or -Ix (in X) - view current runlevel: runlevel (sysvinit). Not applicable for new systemd systems.
- -o - for unmounted file system information in unmounted drives (root only default): file (file)
* Note: requires user action for this feature to run as user (edit /etc/sudoers file)
* For user level unmounted file system type output: sudo (sudo) - -s For any sensors output, fan, temp, etc: sensors (lm-sensors)
* Note: requires setup of lm-sensors (sensors-detect and adding modules/modprobe/reboot, and ideally, pwmconfig) prior to full output being available.