Commit graph

1537 commits

Author SHA1 Message Date
inxi-svn dedb8d5fa7 bsd fixes, for null drive data 2014-09-23 02:37:10 +00:00
inxi-svn ab8fa3f375 updated --recommends to add files used in inxi as well, with linux/bsd comments 2014-09-23 01:53:26 +00:00
inxi-svn e5e50ee371 bsd fix, turns out at least dragonfly has /sys, but it's empty, so updated check 2014-09-23 01:09:15 +00:00
inxi-svn 1e48007c62 bug fix 2014-09-22 23:13:35 +00:00
inxi-svn 83beb896cc New version, new tarball. This is only for bsds. Added hack to get dragonfly used ram,
added dragonfly/freebsd repos full support.

Added sort of drives order to get around gawk pseudo array hash issues.

And that's that.
2014-09-22 23:11:36 +00:00
inxi-svn 78a1c5b0e8 bsd fix 2014-09-22 19:50:45 +00:00
inxi-svn 482338cae2 new tarball, no version change. Fix for openbsd lspci, it doesn't have the closing [...] data 2014-09-22 19:37:10 +00:00
inxi-svn f8c28ac52d bsds zfs fixes for spares 2014-09-22 03:30:00 +00:00
inxi-svn 0968e0a55a bsd fixes, for zfs spares 2014-09-22 03:26:03 +00:00
inxi-svn 2372d3b5a1 new tarball, no new version. Removed a class from freebsd pciconf that gives a false network card id 2014-09-22 02:56:26 +00:00
inxi-svn 01d10df7a5 new tarball, same version, fixed a bsd issue with non raid zfs fs 2014-09-22 02:40:32 +00:00
inxi-svn 57dd609f09 new tarball, same version. Fixed a failure to handle N/A in zfs where there are no detected components. 2014-09-22 01:14:28 +00:00
inxi-svn 0497f153cd New version, new tarball. Added lxqt desktop id that is not dependent on openbox detection.
Fixed some bugs. Added a pciconf class for audio. Added support for bsds running lspci, which
lets openbsd show card info for -A,-G,-N
2014-09-22 00:39:26 +00:00
inxi-svn b50c4a156e new tarball, no version change, fixed openbsd cpu flags 2014-09-20 19:47:50 +00:00
inxi-svn 23cbb0455f new tarball, no version change. This fixes another possible glitch with bsd handling of -D/-d data, because
/var/run/dmesg.boot can contain repeated data when not recreated at boot, you can have the same disks discovered
two times, so I made the gawk arrays use the disk id as part of their array key.
2014-09-20 18:36:36 +00:00
inxi-svn 36ea961bdb New tarball, no version change. This is only for bsds, added -k to swapctl to force kB block output. 2014-09-20 18:02:55 +00:00
inxi-svn 2840e253f7 last fixes on new tarball, version 2014-09-20 03:32:57 +00:00
inxi-svn 58651ac5e5 bug fix 2014-09-20 03:25:17 +00:00
inxi-svn 7ac76db61c trying to get cd speed 2014-09-20 03:22:55 +00:00
inxi-svn 023903796c New version, new tarball. Mostly bsd fixes, a few for linux disk info.
Added support, basic, for bsd hard disks, and optical disks.

Added hard disk total/percent used for BSDs, sort of.

These are mostly just hacks since the data isn't easily available from system
standard tools, though I could on freebsd use gpart I guess but that's another tool
needed, and another method, too much work imo for small results.
2014-09-20 02:55:26 +00:00
inxi-svn 97a0bc65fb New version, new tarball. Cleaned up and made more consistent the cpu max/min output.
Now the short form, the -b/-v1 form, and the -C forms are all similar.

Also, added a few hacks to try to extract cpu max speed from cpu model string in
either sysctl -a OR /var/run/dmesg.boot data in freebsd/openbsd. Sometimes it may
work if that data was in the model string. It's a hack, but will do until we get
better data sources or they update their sources to list more data.
2014-09-18 04:27:05 +00:00
inxi-svn 185b1d189c logic fix 2014-09-17 04:48:19 +00:00
inxi-svn db4ff03d58 bug fix on single core -xxC output 2014-09-17 04:46:36 +00:00
inxi-svn 2a9bb12e51 more cleanup, small man page edit 2014-09-17 04:41:27 +00:00
inxi-svn 6111b758a5 bug fix, math mistake 2014-09-17 04:38:48 +00:00
inxi-svn 8cef566017 New tarball, same version. This adds UP support for -Cxx, showing min cpu speed as well. 2014-09-17 04:36:03 +00:00
inxi-svn 231d9055a7 code cleanup 2014-09-17 04:25:16 +00:00
inxi-svn 315ef9ac6f comment cleanups 2014-09-17 04:22:09 +00:00
inxi-svn 50abd139f1 more cleanups of logic, this should be about it for 2.2.5 2014-09-17 04:18:50 +00:00
inxi-svn 351d4932e2 small logic cleanup 2014-09-17 04:16:33 +00:00
inxi-svn b1eb472b55 tweaked output for short cpu 2014-09-17 04:02:07 +00:00
inxi-svn 46e71bb187 added an error handler case to cpu speed output, just in case 2014-09-17 04:00:30 +00:00
inxi-svn 45b7042c16 small output edit 2014-09-17 03:55:25 +00:00
inxi-svn f368a7c64c bug fix, needed a space for irc output or it broke, also shortened short form output 2014-09-17 03:53:09 +00:00
inxi-svn d1c7042ab7 New version, new tarball. This fixes a long standing weakness with min/max cpu speed
handling. Or rather, non handling, since that data only showed in rare cases on short form
(inxi no args) output. Now it uses /sys query to determine min/max speed of cpu, and uses
that data to override any other min/max data discovered.

Still uses /proc/cpuinfo for actual speeds per core. The assumption in this is that all
cares will have the same min/max speeds, which is generally going to be a safe assumption.

Now in short form, inxi, output, it will show actual speed then (max speed) or just (max)
if actual speed matches max speed. Same for -b short CPU output.

For long, -C output, shows max speed before the actual cpu core speeds per core. 

With -xx, and in multi cpu/core systems only, shows if available min/max speeds.

Note that not all /sys have this data, so it doesn't show any N/A if it's missing.
2014-09-17 03:41:21 +00:00
inxi-svn d886822e6c some fixes to bsd cpu output 2014-09-12 02:16:53 +00:00
inxi-svn fc7410f91e New version, new tarball. Mostly bsd changes, except for downloader options, which now
permit wget/curl/(openbsd ftp)/(bsd fetch) interchangeably.

This lets more standard downloader defaults in bsds, as well as curl on gnu/linux systems
without triggering an error of missing wget.

1. Fixed cpu core issues on bsds, now shows core count + if > 1, cpus total.

2. Now shows OS instead of Distro on short/long output, since each bsd is an OS.

3. fixed vmstat issues for used memory outputs

Also fixed potential failures with cpu core count array by making it a ',' separated array.
2014-09-12 01:21:55 +00:00
inxi-svn 91ffaca5e7 New version, new tarball. Contains a major bug fix for a regression introduced in 2.2.2
-m/-M would always show requires root for dmidecode no matter what. Also improved dmidecode
error messages/handling.

Also, a fix for no display card data, now shows as expected no card data

Most other fixes are for bsd, mostly openbsd.

1. Added a class for network devices in freebsd pciconf

2. Added -r support for openbsd

3. Fixed some cpu issues for openbsd

4. Fixed an issue in openbsd/freebsd where client version data failed to get cleaned

5. Changed inxi short form output for bsds to show OS data instead of kernel data.

6. BSDs, maybe all, different syntax in xorg.0.log made unloaded gfx drivers not show, 
   that is fixed now.
      
-p fixed file system type in -p/-P for openbsd, now shows.
      
-I / inxi short - fixed used memory, did not show in openbsd, now does.
      
-f fixed cpu flags in openbsd, now works
      
-C corrected corrupted cpu data outputs, in openbsd at least, maybe also freebsd
      
-C added an openbsd hack to sometimes show cpu L2 cache
      
-m/-M fixed/improved dmidecode error handling for all systems
      
Modified handling of dmesg.boot data, synched so gawk can parse better.
2014-09-03 19:10:11 +00:00
inxi-svn c453bbf713 New version, new tarball. This version fixes an issue with a white space at the end of lines.
Now all lines are stripped of ending whitespaces automatically.

Also a dmidecode error handler correction, that was not working right in bsd systems.

Added some debuggers for bsd systems.
2014-09-01 23:11:41 +00:00
inxi-svn 007913cf38 New version, new tarball. Some systems are showing a new xfce syntax in the xrop -root
output, like so, instead of the old quotes "XFCE4" it shows like this:

XFCE_DESKTOP_WINDOW(WINDOW): window id # 0x1000003

Updated and added a much less strict fallback test case.
2014-08-21 02:46:20 +00:00
inxi-svn 99d4b0292e A tiny change, that should impact almost nobody, this is included as 2.2.0, I changed the order
that runit/sysvinit are tested for, a test case showed up where runit had been installed
as a dependency but was not the init system, so that was wrong output. Moved runit
after sysvinit case in tests.
2014-08-19 00:26:22 +00:00
inxi-svn b4a34c0c90 forgot to set 2.2.00 to 2.2.0 2014-08-18 22:28:21 +00:00
inxi-svn f7117db9ac New version, tarball, man page. Maintainers, this is the official release of -m feature.
I have collected enough datasamples to allow for reasonably fine grained corrections, estimates,
warnings about unreliable capacity now, and have fixed all major failures. 

Also, because this stuff is filled out by people somewhere, or not, some fields often are just
empty, or contain the default values, ie, they are worthless. inxi shows N/A for those situations,
it means there is really no actual data to show you.

This feature, sadly, well never be totally reliable, because dmi data is frankly junk, especially
dmi type 5 and 16, which is what is supposed to tell you total capacity of memory array, and the
maximum module size (type 5). However, this data is totally random, often it is right, sometimes
it is wrong. Sometimes type 5 is right and type 16 is wrong, sometimes the other way. And since
type 5 is only present in some systems, it's not reliable anyway.

What is reliable and always right is the actually installed memory per device, ie, sticks. I have
not seen any errors in that, so that seems to be actually coming from the system itself. type 5 / 16
sadly are clearly entered in manually by some poorly paid engineers out there in the world, and are
often total fictions, either far too small, or far too big, or whatever.

inxi will attempt to correct all clear logic errors, and whenever it changes the listed data from 
type 5/16, it notes either (est) or (check). (est) means it is a good guess, one I am comfortable making,
(check) means it is either an unreliable guess, or that what the system is reporting is so unlikely that
even though inxi is showing it, it doubts it could actually be true, or at least, it thinks you
should check this yourself. 

-m has 3 extra data options, -x prints the part number, if found, and the max module size, if type 5
is present. inxi does NOT attempt to guess at max module size based on what is installed, it only will
correct a listed max module size if installed modules are > than listed max size. Usually part numbers,
if present, are all you need to order a new stick.

-xx shows serial number, manufacturer (often empty, or just random alphanumeric identifiers, but sometimes
they list the actual company name, which is helpful. It also shows, if type 5 data is present, single/double
bank.

-xxx as usual shows largely useless data that may be of interest to soemone, like if ram type is synchronous, 
memory bus width data, and module voltage (type 5 data).

This feature will never be reliable I am sad to say because the source data itself is random and much
has been filled out, or not filled out, by engineering drones somewhere out there in the underpaid
world. The ranges of errors are so wide that inxi just has to check what is possible, reasonable, unlikely,
etc, to generate its numbers. In other words, this is NOT just parsing dmidecode output, that is the raw
material only, sad to say.

So this is it, for better or worse. All bug / issue reports with this MUST come with a full:
inxi -xx@14 
hardware data upload, run as root. 

Also, much to my annoyance, this feature requires root, since /dev/mem needs root to be read, and I assume
the dmi table, so that is a departure from normal inxi standards, as is the low quality input, and thus,
output, data, though I can guarantee that what inxi tells you is in most cases on average more accurate than
what dmidecode tells you, since dmidecode simply prints out what it finds in the dmi table, and nothing else,
in whatever order it finds it, from what I can see, ie, you also cannot trust the order of dmidecode output.

I had been hoping that /sys would start to contain memory data like it does mobo/system data, but it never
happened so I finally decided to just do the ram thing, require dmidecode, require root/sudo, and that's
that.

There will be issue reports, you can help them by looking up the mobo stats/specs yourself and listing them
in the issue, so I don't have to do it. I use the tool at crucial.com which is very accurate and also very 
complete in terms of all possible hardware out there. 

I would trust that tool before trusting the companies that have the least reliable data, like ASUS.

Much thanks to everyone who is contributing datasets, and the distros, particularly siduction, that really 
were very helpful in this process, by finding more and more failure cases that helped me start to tighten
the logic, and make it more and more robust. Special thanks to Mikaela, of #smxi irc.oftc.net, who came up
with two systems that both required a full redo of the logic, and thus who helped a lot in this process.
2014-08-18 22:26:25 +00:00
inxi-svn 33966eb988 New patch version, new tarball. Another error case dataset, wrong cap, wrong max mod
size, derived mod size 2gb, listed cap 8, but 2 slots, ie, 2gb x 2 == 4. Made this
retain the listed size, but adds (check) to it because either max mod size is wrong
or cap is wrong.
2014-08-18 02:42:43 +00:00
inxi-svn a19125c8c7 New version, new tarball. Fixed bad assumption, DMI type 0 is not always before other
types, in at least one case, it is last, so can't use that as trigger to start loop.

Now using: Table at .. which is always at start of dmi output.

Also, changed size output per module to be in MB GB TB instead of all mB, since modules
are sold by GB or MB, the data should show that as well. Also shortens output.
2014-08-17 19:04:20 +00:00
inxi-svn 579ba364f7 New version, new tarball. Another logic redo to handle a fringe case (dmidecode places
type 17 in front of type 16), now each array is created as a multidimenstional, 2x array,
and each device is a 3 dimensional array. This seems to clean up the problems with bad
ordering of dmidecode data.
2014-08-16 23:24:08 +00:00
inxi-svn 04b84edb24 forgot to remove debugger on switch 2014-08-15 23:55:27 +00:00
inxi-svn 718d6f9dea Small change, forgot to add -m to the debugger inxi output. 2014-08-15 23:44:32 +00:00
inxi-svn bd12b27526 New version, new tarball, new man page. This version hopefully brings inxi closer to
at least making good guesses when the data is bad for ram, and hopefully will not break
too many cases where it was actually right but seemed wrong.

Unfortunately, dmidecode data simply cannot be relied on, and is FAR inferior to the type
of data inxi tries in general to present users, ie, taken directly from the system, and,
ideally, more accurate than most other tools. But in this case, there is just no way to get
the data truly accurate no matter how many hacks I add.

But if you have bad data, then submit: inxi -xx@ 14 so I can take a look at the system,
and see if I can modify the hacks to improve that data.
2014-08-15 00:44:47 +00:00
inxi-svn 5af0c33bac New patch version, tarball. Fixed a few small oversights, more debugging added.
Will next try to handle the remaining corner cases if possible.
2014-08-14 19:24:51 +00:00