cpu output issues. Now inxi handles > 8 cores in terms of output filters,
descriptions, correctly noting that it's multithreaded.
Because AMD has entered the Multithreading game, I've changed the trade term:
HT - HyperThreading to MT - MultiThreading to support both Intel and AMD variants.
Updated CPU output filters to also account for these very large core counts.
I believe this commit now adds full support for the new Ryzen series, but I'll have
to see when it comes to other variants that may appear. I've tried to future proof
the MT tests, but I won't know of those are fully functional and accurate until
inxi sees the real data.
Because I don't want to break existing cpu logic, I just added in a rizen switch,
which will just use cpu_core_count value, then trigger HT output.
This fix may or may not work, but the issue poster vanished and has not followed up.
For now I'm keeping this a Ryzen specific adjustment, but it may be safe to extend
it further, that is, if siblings > 1 && siblings = 2 * cores then it's HT.
issue a forum poster raised, which is the fact that despite the fact that GNU/Linux
has had reasonably ok zfs support for years now, inxi only tested for zfs on bsd
systems.
This has been corrected. Due to the complexity of handling software raid, inxi
will now test first for ZFS data, if none is found, it will then test for
/proc/mdstat.
In a perfect world I'd like to have full dynamic Raid support, but I'm missing
all the key ingredients required to add that:
1. systems to test on
2. software raid, I don't use it
3. data collection for non mdraid and zfs software raid, including the values
possible to gather from all non software raid.
Basically, the only way I'd extend -R raid option is if I get direct ssh access to
a machine that uses the alternate software raid type, otherwise it would take
forever to figure out the options.
Since the number of people who might be actually running zfs and mdraid and
using inxi probably numbers in the 10 globally, I figured this solution was a fine
way to handle adding zfs without messing up mdraid, which is more common on linux.
It also does not break BSDs, since bsds as far as I know don't use mdraid, and don't
have /proc/mdraid in the first place.
Also redid the man page to add -! 41, -! 42, -! 43, -! 44 options, which bypass
curl, fetch, wget, and all of them, respectively. Plus making the lines less wide.
That should make those people who actually use 80 column wide vi as an editor
happy, lol.
easier and more predictable to find. Better section headers, all ordering alpha
by subsections.
Fixed some small debugger gatherer oversights as well.
Note that I made the debugger stuff more portable, so I could use it in another
program.
Note that this is the last choice because it's slow, the order has been revised:
1. curl
2. wget
3. fetch
4. Perl 5 HTTP::Tiny
5. OpenBSD ftp
wget has been downgraded due to the recent 1.19-2 bug with wget -O that did
not get resolved quickly, and which should never have been released since
that's a basic wget action, which means they aren't testing gnu wget the way
they should be.
All inxi downloaders can now use this option. However, in my tests it's signicantly
slower to use HTTP::Tiny than curl or wget, so inxi will test for the downloaders
in that order. While -i uses dig as it's primary IP tool, if dig is not installed,
the IP will follow the same downloader priority. -U and -w/-W use downloaders.
Because HTTP::Tiny is optional, and is merely used if wget/curl/fetch are not
installed, I would not consider Perl to be a real dependency yet, just an option, so
I guess for packager maintainers, Perl should be added as a recommends, or a
dependency if you want to fully support the debugger options (Core Modules).
While I'm still not sure which Perl modules I'm going to be using, I'm sticking
for now to Core Modules, the standard, with some experimental exceptions that
would only be used if the user had them present.
Long term the goal is to get rid of as many dependencies as possible, replacing
them were possible with Perl tools, but this is going to take forever, if it
ever happens, so don't hold your breath.
In the future, I expect more and more components that were gawk to be rewritten
to Perl (Core Modules), slowly, however, very slowly.
Updated --recommends to indicate the downloader options more clearly as well.
Added new options for bypassing curl (-! 41), fetch (-! 42) wget (-! 43), or
curl, fetch, and wget (-! 44) to disable all of them. This is in case one of
those is broken or you want to test Perl downloader, mostly.
Also cleaned up debugger output and made debugger portable to other scripts.
ARM data collection in /sys.
Using 'tree' now instead of ls if it is installed for debugger /sys tree listing.
Added to recommends. Updated bluetooth recommends to note it's dev only. That
should fix issue #127
branches, simplified the options. This corresponds to updates on github where
I'm finally bringing the alternate location self updater back into operational
state after a long dormant period.
Also, and this may be of interest to some maintainers, please note, there is
a new branch: master-plain which does NOT have the gz files inxi.1.gz and
inxi.tar.gz
If you want to avoid the big clones, you can use that branch with this command:
git clone https://github.com/smxi/inxi --branch master-plain --single-branch
And that should only track the basic 3 files: inxi inxi.1 and inxi.changelog
This fixes issue #94
explicitly setting Passive => 1 (true) for some systems and firewall
configurations.
This corrects a failure to upload issue I experienced for a test remote
system that had a different firewall configuration than the dev system has.
nvme disk capacity in full disk capacity listing. Adds nvme name/serial/firmware
revision number. The latter is a new -Dxx output option. Note that as far as I could
tell, so far, nvme is the only disk type that has firmware revision data.
Added support for nvme disk temperature as well, that requires the cli tool nvme.
Updated AMD microarchitecture list to be more granular and complete. Added Intel
microarch type. Note that they are releasing a few new microarchitectures soon but I
was not able to find any model numbers for those.
of the xiin.py tool, which is going to become obsolete when python 3 fully replaces python 2.
Since the odds of perl being around and stable are far higher than the odds of xiin.py
even working on python 3, I'm getting ahead of the race. Plus Perl is nicer to work with.
And Perl is a lot faster. I mean, a lot. Not slightly.
And it also works on much older systems, and does not have that Python version < 2.6
failure due to changing Python syntax even between sub versions. xiin.py never ran on
Python 2.5 even when it was relatively recent, which is one reason I'm removing all Python
from inxi.
Basically xiin.py worked only on Python 2.6 or 2.7, period.
Oh, and also handled issue #115 by not making -B show -M data.
The issue was not so much with xiin.py as with some new values in /sys that would
hang tree traverse, however, in order to remove the python dependency (except for
uploading -xx@ debugger data, until I can figure out how to do it with Perl), I
rewrote the tree traverse tool into Perl, which also makes it a lot faster and
easier to work with.
This issue appeared on kernel 4.11 as far as I can tell, some new values in /sys make
the traverse hang if it tries to read the values, **/parameters/** and **/debug/** seem
to be the main culprits, but inxi doesn't need that data anyway for debugging purposes
so it's just excluded.
in issue #118
The data seems to suggest that using POWER_SUPPLY_VOLTAGE_MIN_DESIGN as the factor will
be right more often than using POWER_SUPPLY_VOLTAGE_NOW.
Also optimized a bit more on the desktop id logic.
done by charge (mAh) or energy (Wh), this lets me use either variable internally
so the outcome would maintain values even if one charge vaiue was missing.
the conversion from mA hours to Wh, and had a math glitch too for charge (ma).
Not sure how this went undetected during testing, oh well. I assume that mA h is not
as common internally as Wh or something.
Anyway, it should be fixed.
-o, -p, -l, -u, -P, -S, -G, -N, -A
Now most output should tend to not wrap, though some strings are unpredictable and
will have to be trimmed by adding them to the min size trimmers one by one.
But it's much better than it was.
Note the following changes required to make the wraps more consistent:
-S - the gcc/bits have been made separate, like: bits: 32 gcc: 5.3
-C - the new microarchitecture -x option now is: arch: K7 [for example]
cache wraps to next line with arch. with -f, bmips now shows on same line as
arch/cache