weather -w option. With -x, -xx-, -xxx, shows more information. Basic line is just weather
and system time there. -x adds time zone, which is useful for servers, particurly web servers.
-x also adds wind speed. -xx adds humidity and barometric pressure. -xxx adds a possible new line,
if data is available, heat index, wind chill, and dew point.
-xxx also adds a line for location (blocked by irc/-z) / weather observation time.
-z filter applies as usual to location data, removes it in irc by default. -Z overrides override.
The api this uses is probably going to be dropped at some point, so this is just going to work
while it works, then it will need to be updated at some point, so don't get very attached to it.
Also adds option to, with -w: -! location=<location string>
This lets users send an alternate location using either <city,state> or <postal code>
or <latitude,longitude> (commas for city,state and latitude,longitude are not optional, and the order
must be as listed.
If There is a developer flag if distro maintainers do not want this enabled, simply set:
B_ALLOW_WEATHER='false'
before packaging and the weather feature will be disabled.
useage if bind mounts are used, ie, multiple binds to a single mount. Now inxi will
check a list of the previously used partitions before adding the size of the used space
to the total used, if the partition has already been used it will skip it. This was/is
a quick and dirty fix, but it's totally fine I believe and should resolve two separate
issues:
1. use of bind mount method, where multiple partition names are bound to the same partition
2. accidental dual mounting to the same partition.
partitions section will still show the same data, ie, if bind is used, it will show all
the bind mounts even when they are attached/bound to a partition that is already listed.
This seems useful information, though maybe we can get the key word 'bind' in there somehow,
but for now I won't worry about that issue, that's just a nice to have, not a bug.
linux driver version handling, now only trimming off number from bsd drivers.
Some linux drivers, like tg3 for broadcom ethernet, have numbers ending them. So this is
a bug fix for 1.8.44 release mainly.
Also includes openbsd initial fixes for some issues related to sysctl parsing for cpu and ram.
to bsd. Using a pciconf parser to do most of the heavy lifting in this one.
Two functions do the main pci card processing for audio, graphics, and networking.
All seems to be shipshape and working, tested on freebsd 7.3, 9.0, and 9.1 and
the output is consistent.
turns off all -h and -H menu options for updating. Also triggers an error message
if you use -U or -! <10-16/http://>.
Distro maintainers, take note, if you used the B_ALLOW_UPDATES flag, you no longer
need to change the code anywhere, the error messages and blocking the -h output for
update features is automatic as soon as the flag is set to 'false'.
I needed to change the -! handling because -! is now also being used for extra features
like -! 31 and -! 32 and probably more stuff in the future, plus the -! 30 used by
things like the inxi gui tool being worked on by trash80.
Also included in this version are more bsd changes, including initial function for pciconf
data parsing, this will be used for -A, -G, and -N options for card data.
Further bsd improvements are better error/no data available messages for -D and -o.
The hdd used still fails to properly calculate the actual raid sizes but that's a bit too tricky
to do easily so will leave that for some other time.
Also added in more hdd used partition types for bsds, wd and ad type drivers for disks.
partitions) would show components of the md raid array as unmounted partitions.
This is of course incorrect, and is now fixed.
Small update of man page as well to note that -o will not show components of mdraid arrays.
output for mdraid. Certain conditions would trigger a false return for raid components, now
it shows more explicitly the online/spare/failed data so it's clear. Also shows 'none' for
online if none are detected.
status as with mdraid, will show offline/failed devices as well in standard output.
Updated help and man page to reflect the difference between -R, -Rx, and -Rxx output for
zfs / mdraid.
No linux inxi changes, this should not alter any behaviors in -R for mdraid, if it does, it's
a bug, please report it.
Fixed partition bug that could falsely identify a remote filesystem like nfs as /dev fs
Added two options:
-! 31 - Turns off Host section of System line. This is useful if you want to post output
from server without posting its name.
-! 32 - Turns on Host section if it has been disabled by user configuration file
B_SHOW_HOST='false'
Added missing CPU data message, fixed missing cpu cache/bogomips output, turned off
bogomips if null for bsd systems because bogomips is a linux kernel feature.
Added N/A for no memory report, this would mainly hit bsd systems where user has no
permissions to use sysctl or has no read rights for /var/run/dmesg.boot.
Many fixes for partitions, now for bsd, if available, uses gpart list to get uuid/label
Added support for raid file system syntax in bsd, now excludes main raid device name,
and adds a flag to raiddevice/partitionname type so output can identify it as a raid
slice/partition.
In man page, added -! 31 / -! 32 sections, and some other small edits.
Added bsd raid line error message, added bsd sensors line error message.
Many other small bug fixes that should make linux more robust in terms of missing
data, and better/cleaner output for bsd.
In some cases, dmidecode returns the grammatically wrong message:
'No smbios nor dmi data' instead of 'No smbios or dmi data', corrected the search
to look for simpler: 'no smbios ' to avoid that random error.
properly support the -s option. Now -M uses only one method for dmidecode, manual construction of the Machine
data from the raw dmidecode file. The file output is also parsed a bit to make it more consistently reliable
for inxi purposes.
This update also includes all recent bsd branch updates, including the new #!/usr/bin/env bash on top which
lets inxi run in any environment without changes. Also for bsd, sets sed -i/sed -i '' global value, which
means that now all the branches are the same, except the bsd branches will contain the most recent tests
and bsd handling.
As each step is reached, I'll release a new inxi that should be stable, this is the first one however that
can be used as is, no changes, for bsd, debian kfreebsd, and linux systems.
Pleasen note that most bsd features are either incomplete or missing completely at this point, but it's a
start.
Some initial changes as well to help options to show more correct linux or bsd terms. These will be updated
as time permits, it is a long process.
kfreebsd from Debian.
Cleaned up all sed and grep that will be used by bsds, added more granular flag for bsd types.
Cleaned up and corrected issues between bsd/linux, more escapes and tests added to drop error
counts in bsds.
Please note that you must use the inxi from branches/bsd for true bsds because sed has extra -i ''
added, and has the proper #!/usr/local/bin/bash
Added -! 16 for gnubsd download/update, that's for gnu bsd systems like gnu/kfreebsd from debian.
That retains the top #!/bin/bash path, and also uses gnu sed so no -i '' syntax.
Moved some grep -o to gawk or sed to avoid using gnu grep unnecessarily, leaving gnu grep where
it will be linux only, for example parsing a /proc file.
Fixed tty irc bugs for bsds and linux, now should show the right console size for both, ideally.
support built in, although inxi will not run in bsd unless the top: #!/bin/bash is changed
to #!/usr/local/bin/bash
The actual bsd branch can be grabbed from:
http://inxi.googlecode.com/svn/branches/bsd/inxi
then you can keep that version updated using: inxi -! 15
which will grab the latest bsd version from the svn server.
This release also fixes a lot of small bugs that testing for bsd support exposed, but functionally
most people should see no difference, I just want to get this version up because there are
so many small changes that it's worth having a release.
I was going to have the fixed dmidecode for old systems in 1.8.35 but that will have to wait til
1.8.36
Linux users should see no real changes, except maybe a thing or two will work in certain circumstances
when it didn't before, like showing MHz on ARM cpus on short inxi.
small change -Ixx will show running in tty if it's not in X, with tty number.
sort of redundant to System: console: data, but that's ok, we'll live for now.
an ssh command sometimes it will not show any client information, just the debugger
PPID output. Now it will test as a final check to see if it can detect any parent to
the process. Actually grandparent I believe. Seems to work, it's a fringe case but
why not handle it?
New -xx feature, for -I it will show, if inxi is not running in IRC client and if
is running in X, and if the grandparent is not 'login', will show the application
the shell is running in.
Example:
Info: Processes: 271 Uptime: 5:36 Memory: 3255.8/4048.5MB Runlevel: 3
Gcc sys: 4.7.2 alt: 4.0/4.2/4.4/4.5/4.6
Client: Shell (bash 4.2.37 - started in konsole) inxi: 1.8.33
and made cleaner the version data in verbose mode, non irc.
Fixed instance where program location would only show a dot . or relative path to inxi. Now
in version full will show the full path, or should.
Basic version line now show: inxi 1.8.30-00 (January 22 2013)
The verbose information/version shows the license information, website/irc support info, and
a few other changes.
Also fixed a small bug where the copyright shows current year, not the actual year of the inxi
copyright contained in the top comment header.
Continuing fixes for ARM cpus, it was noted that short form inxi failed to show cpu speed
derived from bogomips. That's because of the old min/max output that short form used.
Updated that section to now use N/A as flag, and if N/A for min/max speed, use the speed
given from first cpu array index, the one derived from bogomips for ARM/razberry pi.
Note that there is still no other ARM /proc/cpuinfo available to see if the razberry pi
fixes work for all ARM cpus, but the fixes will stop hangs and endless loops at worst,
and may also show some type of cpu speeds for ARM cpus that are not in razpi devices.
quick work around fix for razberrie pi, get cpu data hung on arm /proc/cpuinfo because
it doesn't use the standard processor : [digit] format, but uses a string in the
processor : field, which then hangs inxi which was expecting an integer.
Corrected this with a work around, but it will require a lot more ARM /proc/cpuinfo samples
before the support for ARM can be considered stable.
For cpu speed, following wikipedia, used bogomips being equal to 1x cpu speed, to derive cpu speed.
Better than nothing I guess, but will be wrong in other cases, particularly with dual core arm.
sorts, that's much easier to read. I also made the line lengths on that much more accurate
to avoid a bunch of long flags creating a longer line, and made the first line shorter to handle
the line starter text.
New tarball as well, no man page changes.
Not sure why this was left undone for so long, but here it is, nice and neat.
windowmaker and wm2 are detected via xprop -root, there is no version information for wm2 available
so if you know how to detect that, let me know.
New tarball as well, though no man page changes.
some apt rpm tools might do the same for yum repos. Now inxi will simply note the presence of each type, for apt and yum.
I didnt' do this feature for pacman and pisi, because I've never heard of that, but if necessary, I'll add it.
Now inxi will hopefully correctly note the presence of the various repos and list the files with the repo type correctly
noted for each type.
I also fixed a bug in the yum/rpm type repo detection, inxi failed to properly handle spaces around the = sign, which made
it falsely identify as enabled disabled repos, it tested for only ^enabled=1 whereas also ^enabled = 1 is a possible syntax.
This is now corrected.
That's a bsd method, which slipped into inxi, I've replaced that with -r which is the correct syntax, and which will work
on old linux systems as well as new.
Since there is no functional change and only very old installs would ever see the difference, I'm leaving the version number
alone. New tarball as well.
Also added -x option, show shell version number as well. For dash/csh, this uses a hack of getting dpkg version,
which covers many users, but not all, hopefully I can find a universal way to get shell version for dash/csh
fallback for only /etc/SuSE-release present, presents only first line of that file.
Also improved the /etc/os-release handler to include more data if the PRETTY_NAME field is blank.
New tarball as well.
Hexchat bug fix/workaround, worked around dev decision to start popping up a gtk dialogue when running
hexchat -v or --version command.
Now reads the actual user config files, hopefully anyway. Since trusting config files that are in the user
~./hexchat directory for version information is quite unreliable, this is just a quick hack, but that's fine,
inxi is always happy to hack around bad developer ideas to provide the most accurate, or best guess, at the
answer.
is I believe the only one that actually uses this at this point.
Preferred is lsb-release, because that tends to be more accurate.
Note, this may trigger arch derived distro errors, sigh...
in path, ie, /dev/mapper/truecrypt1 for example.
Also fixed some subtle bugs that could in some instances trigger errors on partition label/uuid, not likely, but it could.
via xprop, so that is now moved to full desktop version handling. This requires bypassing the gnome test, which
is a good thing, because the gnome test uses a deprecated method for gnome detection. Still works, but best to
move from it no matter what.
New tarball, new inxi version.
that makes it a bit more readable. New version number, new tarball.
I debated making it one per line default as soon as -x is triggered but will leave it this way for now, with -xx
you get the easier to read single line output in all cases, so that's probably good enough.
ssh'ed into box, and don't remember what dm is running the desktop. Shows N/A if in X if nothing detected, does not show
out of X since could be a headless server.
Updated man page, new tarball.
And if user is logged in as root. The -U procedure for inxi itself will run independently of that.
On completion of inxi download/update, if successful, will do the man page update/install.
And that's that.
Biggest change, totally reworked the man page, now it's much more complete and has a lot more information.
Includes how to run in IRC clients, how to create konversation shortcut for /inxi type start.
Ok, that's it, probably will refine the desktop extra information and maybe add a dm or two more.
Also added in startx detection for when no dm was detected, thanks JavaAtom for that one.
I decided to just add an -xxx option, for extra extra extra data, no output if nothing detected.
No big support issues, and Mint has used inxi by default for a while, so I think it's fine to add this for them.
entrance gdm gdm3 kdm kdm-trinity lightdm lxdm mdm nodm slim wdm xdm
there's been a relative flood of new display managers, and a few more are probably coming, so
it's actually a somewhat useful thing to have this option.
This is also going to close issue 30, which is not going to be further handled due to ratrace
of trying to support various software packages running on the systems.
Also updated man page for that -xx item.
Now RAID works like this:
-b - if no /proc/mdstat, or if no devices found and module is running, show nothing, otherwise show short form as before
-F - if no proc/mdstat, show nothing, if no devices but mdstat and if -xx, show all lines, otherwise show normal
-R - show all messages and missing file/module information so users, particularly sys admins, know right away module
is running even if no devices.
-v 6 and less, like -F. -v 7, like -R run, ie, show all messages.
this gets rid of unneeded line output given that only if you have md_mod running will you have any data for /proc/mdstat
and that module is only running if you have mdraid installed.
Also redid the no data messages for no module state and no devices state to better reflect what is actually happening.
Good adjustment and good cleanup of unneeded output while tightening the actual usability of the specific messages received.
Includes 4 levels, -b shows basic only, -R shows primary info, device id, components, state, and report on drives
-Rx shows more, and triggers a second info line per device with more raid info.
-Rxx also adds more information, and triggers system raid support info and unmounted raid devices line.
-F uses -R now.
And that's that, enough raid stuff for a lifetime.
That would need to be set in the inxi override config file. The page must show only
one line of output, and that last item on that line must be the ip address.
Ok, that's it, not a big deal, but some people may prefer a non smxi ip address page
for whatever reason, so have at it. Or not.
inxi thinks it's a single core cpu, no matter if it's multicpu or multicore.
Using the: cpu cores
value to double check, as a fallback. This seems to work, ie, if cpu cores is listed as 1
but processor count * cpu count is > 1, then clearly the intel reporting bug is in play.
Note that this is NOT an inxi bug, but is a bug in how some intel cpus create their
cpuinfo data, but since intel is a major player, it's worth handling that issue.
Apparently if you pack an array that is global inside a subshell, that does not register on the primary level of bash.
Who knew?
Maintainers, this is a serious bug fix, so updat to 1.7.27 now or the usb cards will not be seen.
Fixing this required using find, so find will have to be added to the recommended apps, but
leaving it off for now until sure this method is the only way to do it.
The earlier used grep method to get the paths did not work, why, I don't know.
This may require redoing the usb path finder logic, we'll see.
This is set dynamically as well. For irc it uses no : except for line starters and item starters, like:
ID: or IF: or 1: and so on. Also made cpu per core clock speed the same, using now 1: instead of (1)
that saves one character too per core, but makes it all the same, consistent.
This also now becomes a user adjustable parameter, via config files, can set irc/console separator character(s)
Ok, bored, now on with the day.
this solves the problem exposed when there is no ipv6 output, and thus the last line used to test for end of record was vanished.
now it's all just treated like ifconfig except a few small differences of which item to slice out.
A case where pcibusid includes the pre- 0000: appeared, that broke the -N pcibus id handling for -n, which made for no output.
Now inxi will just slice off that in the initial lspci creator.
several bug fixes, one quite serious (not caused by inxi, lsusb -v takes 1 minute to run in some releases).
The lsusb bug is very bad, and hopefully someone will report that upstream, at Arch and Debian Sid it's seen.
lsusb -v hangs very badly.
Another bug fix with error output for some unknown reason on using cat on some /sys files for networking.
Layout bug fixes as well.
Package maintainers, this one is a real bug squasher release, thanks.
This required recoding that function, so I also made -i show IPv6 with -x as well. Might as well start getting used to it.
Also fixed and added wrapping for the -i output, that wasn't working right before, now is standardized to other lines.
got rid of that horrible banlist array/function thing, now it's hard coded.
On a dual core system, this saves literally 0.1 seconds on execution, about 10-20% of execution time.
this also fixes a bug that has always existed, which is if you use spaces to replace instead of ''.
Another advantage of this new method it fixes the fact that each and every string character would be considered a match, null replaced with null.
This was due to the fact that each banlist string started with |, ie, it contained a null character in the search pattern... sigh.
This is why we don't use stupid bash tricks, ok people? They hide bugs, and make the code write only.
New internal line character counter implemented, with support for user set line lengths for both irc and console.
More line wrapping added, and some fine tuned. Also wraps -A now, and adds alsa information to end of first line as well if > 1 card and less than line length max
fixed a bug with remote mounted partitions, created line length counter function that cleans off color code characters to allow for accurate
line counts for line breaks.
Removed legacy print code, repeated code blocks for single/multiple cards, for audio/network.
Made also always print out whether or not a card is present, since you can have alsa without having a card.
This actually shortened inxi for once, and simplified some legacy methods that were totally unnecessary and just complicated the print functions, now all print
functions use the same for loop print out methods on arrays.