Commit graph

83 commits

Author SHA1 Message Date
inxi-svn 7e0535d4c2 A few fixes to 2.1.20, bmips broke in some cases, that's fixed now. Also changed the
way to handle bad ARM data, when bogomips are too low, < 50, we try to get the data
from /sys, but now this runs on all the cores, so it may work as well on the multicore
arm if the /proc/cpuinfo has bogomip that is too low and no cpu frequency.
2014-04-09 07:11:43 +00:00
inxi-svn a2ec193fd6 New version, tarball, ARM cpu /proc/cpuinfo has broken the bogomips output, since this
is an upstream bug, I'm adding in a quick hack that will work maybe for single core
ARM cpus, but NOT for multicores that have the same issue.
2014-04-09 00:17:54 +00:00
inxi-svn bb90012cd7 New version, tarball, correction of loop counts for -p/-P ID-<number>, this
requires
a third counter to get all the stuff right. Sorry about the extra release, that's 
life.
2014-04-06 21:35:15 +00:00
inxi-svn ebca1c219d New version/tarball. This completes, I think, the line wrap update. -o is now handled,
unmounted drives.

IMPORTANT: some distros use inxi for detecting partitions, the syntax on the following 
have changed slightly:

HDD: per drive changes from: 1: id: to ID-1:
Partitions: per partition changes from ID: to ID-1:
Unmounted partitions: per unmounted changes from ID: to ID-1

You see the pattern, they are all the same now, and they are all numbered. I think this
is easier to read when scanning long lines of drives/partitions, or even short ones.

Also fixed a long standing oddity, not a bug, but for some weird reason, -p did not
include the location, like /dev/sda1, unless -l or -u were used. That makes no sense
so I have moved the dev/remote location output to standard -p/-P

Except for bug fixes, this completes the overally line wrap update, all lines wrap,
you can set widths with -y now, and the old issue of not fitting nicely into 80 column
wide widths is solved. Note that in some areas, p/P for example, at times if the mount
point or remote location is very long the line may still wrap, but making this perfect
is too convoluted so I'm calling it good enough now, all lines are handled reasonably well,
certainly radically better than before 2.1.0.
2014-04-04 18:16:45 +00:00
inxi-svn 7ea015abef New version, new man page, new tarball. Added -y [integer >= 80] option. This allows for absolute override
of width settings. This overrides any dynamically detected widths, as well as the globals:
COLS_MAX_CONSOLE='115'
COLS_MAX_IRC='105'
Now that inxi widths are largely dynamic in terminal, with a few lingering exceptions, it made sense
to also allow for overrides of this. This is useful in cases where for example you want to output
inxi to text file or for other purposes, or if you just want to test the widths, as in my case.

-y cannot be used with --recommends, but otherwise it works fine, with --help/-c 94-99 you have to 
put -y first in the list of options.

Example: inxi -v7 -y150 > inxi.txt will ignore the terminal settings and output the lines at basically
max length.
2014-04-03 17:46:31 +00:00
inxi-svn 26e1d560c3 New version, tarball. This fix only impacts bsd sed, but it fixes the line length failure
issue because bsd sed doesn't work with \x1b, but it does when you do:
ESC=$(echo | tr '\n' '\033' )
I found this trick on:
http://unix.stackexchange.com/questions/42321/how-can-i-instruct-bsd-sed-to-interpret-escape-sequences-like-n-and-t

No other changes. Non bsd users, you can ignore this.
2014-04-03 04:30:30 +00:00
inxi-svn befef56f93 new version/tarball. This corrects some subtle issues with line wraps:
Audio -A - now wrap is fully dynamic down to 80 characters, and also the expansion of ALSA
to Advanced Linux Sound System only happens if that fits in the display width.

-N/-n/-i - Most networking/ip address stuff wraps now.

-d - optical drive data wraps better now too.

This more or less completes the line wrap redo.
2014-04-01 21:02:47 +00:00
inxi-svn 62b543974b Forgot, added slitaz-release to distros derived. that's as slackware derived one. 2014-04-01 01:11:08 +00:00
inxi-svn 11f1097d01 new version/tarball. Tiny fix in debugger, it turns out that in some systems, the command:
strings --version used in the debugger results in a hang, which you can duplicate with:
strings 
alone, without any argument or info, that will hang too, so I assume if the system doesn't
have the --version parameter, strings ignores that, and basically just does what it would do
with no option, hang.

Thanks for user ypharis persistence in tracking down this issue. So far only appeared on slackware
based distros, but since the debugger should 'just work', removing the version test.
2014-04-01 00:52:57 +00:00
inxi-svn 75cb0eca7c New version, only relevant to Porteus distro, a slackware derived distro, should now id it
correctly. No other changes.
2014-03-30 18:55:38 +00:00
inxi-svn 6394a16120 new version, fixed zfs raid failure to report raid devices on some systems. Added wrapping
for -D disk option. Note that -d is not correctly wrapping because the lines are too long with 
extra data, but it's ok for now.
2014-03-27 22:35:17 +00:00
inxi-svn d7d5dc8f3e Ignore change 2.1.12, the speed data was too inconsistent, using >>> since it's cleaner
and seems to be faster on some cpus, slower on others.

Rolling it back to version 2.1.11
2014-03-26 22:29:44 +00:00
inxi-svn 53e455c5eb new version: this is only an optimization release, testing some slightly more efficient
methods:
something <<<  $variable is signficantly slower than: echo $variable | something
so I replaced almost all instances of <<< with echo ...|

I've seen speed differences of up to 10% but it's not consistent, so this is just 
something to boost performance slightly on older systems I'd guess.
2014-03-26 21:57:03 +00:00
inxi-svn f61487f0b7 New version: fixed an old bug, with -c 0, no colors, RED and NORMAL
color codes were
not set to null, which results in some cases with red output, along with 
turning
terminal/console font color red.
2014-03-26 19:46:58 +00:00
inxi-svn 6556ae2375 New version; added supybot/limnoria/gribble support. This only works
when the supybot
'SHELL' command is used, 'CALL' gives the user irc client data, and 
supybot etc are
not detectable.

Fine tuned some error message lengths so they fit into 80 columns or so.
2014-03-25 20:56:58 +00:00
inxi-svn c1c0752e97 New version, fixed cpu core speed wrapping, improved -p and -P wrapping, though some
lines
will still be too long, but not as many.
2014-03-25 01:43:30 +00:00
inxi-svn 0115b374a8 New version. Added dynamic wrapping to -G, and also am now wrapping -C per cpu cores speeds,
for systems with a lot of them, that will clean up the output.

Added dynamic wrapping to --recommends and -c 94-99.

These are the main things, there's a few smaller issues with -xx output on -N/-n/-i but
those will noly really show with full output and it takes a while to get this stuff stable
so maybe some other time, but it's ok for now.
2014-03-25 00:01:20 +00:00
inxi-svn a830e996ac new version, attempt 2 at detecting all possible syntaxes for cards. Now using
the bus id itself to determine if the 
VGA compatible controller
3D controller
Display Controller
refer to separate chips or the same one.

Bus id gives the data needed, because the video chip, the real card, that is,
is on for example 00:05.0 the trailing .0 is the key, that's the actual card.

The audio or display controller for the same card would be for example: 00:05.1

I don't know if this is fully reliable, but it will have to do, either some cards
as is get missed, or some cards get double id'ed, unless I use a hack like this.

There's nothing else I can find but the bus id to determine that it's the same
physical device or not.
2014-03-19 04:31:40 +00:00
inxi-svn 1325cb6574 new version, bug fix, adding 3D controller to output causes doubled card id in some cases. 2014-03-19 02:19:31 +00:00
inxi-svn 58d95fff6f New version, serious bug fix, do NOT use 2.1.4, it will fail to start. Bad copy/paste. 2014-03-18 08:32:31 +00:00
inxi-svn 1d34526818 New version. Some BSD fixes, and a more important fix, added 'display controller'
to graphics card detection, that's a new one on me. Dual card systems might use this.

00:02.0 Display controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02)

01:00.0 VGA compatible controller: NVIDIA Corporation NV44A [GeForce 6200] (rev a1)

Some more switches to bash native methods as well.
2014-03-18 02:26:26 +00:00
inxi-svn 21a520950e New version. Big set of changes: changed all ver: and version: to v:; changed all bash
${var} to $var where appropriate to avoid extra overhead of ${..}; removed 'basename'
and replaced with ${path##*/} which avoids unnessary subshells.

Fixed dynamic line wraps on -I and -S lines, now those in most cases will work well 
down to 80 cols. 

Fixed bug in optical drives, at some point in the last few years, the kernel in /sys
changed the path to the optical drive data, added in /ata8/ (example) so both methods
are now handled. This should fix a lot of failures to show optical drive brand name etc.

Added weechat detection, trying also supybot/limnoria detection in irc client version.
There was weechat-curses, but I guess they finally dropped the -curses. Limnoria is
a fork of supybot but still uses the supybot program name, but added in limnoria too
if they get around to changing that.

More dynamic sizing tweaks, more optimization of code. Discovered that dipping into gawk
is almost 250x more expensive in terms of execution time than using bash variable. 
Will change to use bash directly as time goes along where it's safe and accurate.

Added handling to support /run paths using directories, like /run/gdm/gdm.pid for dm data.
2014-03-16 22:55:01 +00:00
inxi-svn 40053aa5b7 no version change, just added wrapper around tput cols so only use it if in terminal 2014-03-15 17:56:51 +00:00
inxi-svn 0c7d9ebc10 New version. Updated dynamic sizing, fixed some glitches in cpu flags, fixed bugs in
cpu main. Cleaned up a few more variable and width issues. Used a few more ${#var} for
counting.
2014-03-15 03:41:16 +00:00
inxi-svn e8e3f9be84 New Version, new man. This continues the dyanamic line sizing, I'm doing these one at a
time to make it easier to test stuff one by one.

Full refactoring/reordering of top global variables, moved user/maintainer set variables
to top, and clearly identify all globals.

Changed LINE_MAX to COL_MAX but all user configuration files will stay working since
inxi now will check for that and translate them to the new variable names.

New lines fixed, -C cpu and -f cpu plus full flags. Flags output is now fully dynamic to
display screen in terminal/console. Moved cpu short flags to -x because it's not that
important in general and just clutters things  up in my opinion.

Print flags/bogomips on separate line if line greater than display width.

The rest of the lines will get a similar treatment, but it takes a bit of trial and error
for each line to get it working right.

Note that IRC line lengths are NOT dyanamic unless I can find a way to determine the column
width of irc clients, but that won't be accurate since fonts vary in widths for each character.

CPU was the worst offender in my opinion in terms of regular output wrapping to new line messily,
next will be the things with ports/chip id/card id.

Tightened up a bit more the dyanamic help / version output handler.
2014-03-14 20:21:10 +00:00
inxi-svn a2f1b02e53 New version, new man page. Finally, after all these years, dynamically resized to terminal
window column width help/version outputs. There is a significant slowdown to achieve this,
but I've optimized it as much as I could so it should be acceptable for most users now.
2014-03-14 02:28:40 +00:00
inxi-svn aca844c7d8 New feature, not new line option though. Now shows init type with -x (also shows rc
type if openrc). -xx shows init / rc version number. Change runlevel to target if
systemd and if non numeric runlevel given. Should support systemd/upstart/epoch/runit
sysvinit. Supports openrc as extra data if it's present. Rearranged -I line a bit but
really just exchanged Runlevel: for Init: v: Runlevel: default:

This is the first step, some of the init system ID methods are weak and non robust
and this may need to be revised, but it should for now identify systemd/upstart quite
accurately, and in most cases sysvinit. Note that to get sysvinit version number requires
tool: strings which in debian/ubuntu is in package binutils. I don't know the package names
for arch/fedora/etc for the recommends check tool in inxi yet.

I believe this will be good enough for a first draft version, but over time we'll get it
more fine tuned, but as it is now, it should cover at least 99% of users, which isn't bad.
2014-03-13 00:18:26 +00:00
inxi-svn af7336ceba New version; updated man page. Changed slightly the output for x server, in preparation
for adding alternate display servers, like Wayland or Mir. Rather than release all the
stuff at once I'm going to do it bit by bit. Currently I have not found a wayland iso
test cd that boots in virtual box so I will have to wait to really add support there.
2014-03-03 23:31:47 +00:00
inxi-svn 3e55bb677c New version; new tarball; new man page. Added Unity desktop support; added -xx feature
to show default runlevel, using systemd/upstart/sysvinit type default tests.

Fixed gtk library version detections, now will support dpkg/pacman version tests, which
should give more data to more people than previously, where the old tests usually would
return null unless gtk dev packages were installed on the system.
2014-01-13 23:01:03 +00:00
inxi-svn ec7691fbc9 New version, new tarball. Fixed new gnome change, they, of course, removed gnome-about
and so version numbers failed. Now first trying gnome-session to get version number.

Also, there's a bug in at least gtk detection in opensuse, not sure what it is, they could
be using a different syntax for the test:
pkg-config --modversion gtk+-3.0

returns no such package on gnome 3.10 installs, but I have no idea what package name to
test for there in this case.

So leaving gtk version bugs unhandled due to no user information or feedback, if you want
it fixed or if it works for your distro, let me know and also if it does not work, tell
me the correct commmand, with its output, to get gtk version.

That's for inxi -Sx output that is.
2013-12-02 22:09:25 +00:00
inxi-svn 9dff36e58e New version, new tarball. Only for uprmq distros, small update to add support for another
repo type output, the initial listing was not complete of possible syntaxes. Now handles: 

Nonfree Updates (Local19) /mnt/data/mirrors/mageia/distrib/cauldron/x86_64/media/nonfree/updates

as well, apparently that is a possible output format in certain cases with urpmq.

Non urpmq distros ignore this update, there are no other actual changes.
2013-10-06 18:10:04 +00:00
inxi-svn 088a7812a1 New version, tarball. Added urpmq for -r.
Other distros than Mandriva, Mageia, no other changes so no need to update unless you want to.

This adds support for Mandriva, Mageia. urpmq parsing is similar but not identical to pisi.
2013-10-05 01:40:00 +00:00
inxi-svn 7b67885e42 This does not have a new version number (there is a new date), and is only for solusos,
so all other distro maintainer can ignore this update. New tarball. Adds support for
solusos-release distro file in /etc/.
2013-09-10 17:51:12 +00:00
inxi-svn 9e195afcc3 New version, new tarball. Fixed a bug / issue with failed usb nic detection, amazingly, the regex
in inxi failed to check for Ethernet.*Adapter, heh. Most usb nics are wifi, so I guess ethernet just
escaped me.
2013-08-20 19:28:02 +00:00
inxi-svn 6bf5746de2 New version, new tarball. Fixed a bug in Xorg where it shows drivers as unloaded when they
are actually loaded. Since we can't fix xorg, inxi will try to work around this bug by validating
one step further in the Xorg.0.log data, to confirm that drivers noted as loaded/unloaded/failed are 
actually running the display(s) of the system.

There is a possible case of error that might happen due to this change in the case of a system with
a complex xorg that uses two drivers/modules to run two different displays, ie, nvidia on one, and amd
on the other, for example, or intel/nvidia, etc. However, if that bug appears, we'll get that data set
of debugging output and fix it at that point. 

This fix repairs an existing xorg bug that is unlikely to get fixed any time soon (the call to load the
detected drivers, eg, vesa, intel, is repeated, causing a failure of driver already loaded on the second
occurance.
2013-08-12 23:25:45 +00:00
inxi-svn 90f4c78dd4 Tiny change, no new version, removed a stray 's' line 4306 that may have made certain distro
ids get slightly corrupted, but this is so trivial just fixing it, new tarball.
2013-07-13 18:49:23 +00:00
inxi-svn 191e560418 New version, new tarball. Two new desktop/window managers added: spectrwm (similar to scrotwm) and
herbstluftwm. Both tested and working, thanks anticap from Antix for doing the testing/issue report on this.
2013-07-01 22:15:51 +00:00
inxi-svn 8afddd9a29 New version, new tarball. The recent bug fixes reminded me to check for ARM working, that had some bugs too,
so I've updated that. -f for ARM now shows features instead of flags, and the -C regular cpu output does not
show cache/flags for arm cpus becuase they don't have those features.

Added some flags passed to various cpu functions and better detections of ARM cpu to handle dual core and other
issues that were not handled before as well, or at all.
2013-06-20 02:18:56 +00:00
inxi-svn 854f348969 New version, new tarball. Another stab at finally fixing the cpu / core count failures on fringe
cases. This required fixing some core logic assumptions that are not currently correct, particularly
on two cases, some xeon cpus fail to show core id for each core, showing 0 for all of them, second,
vm cpus do not show physical ids at all for at least intel, nor do they show core id. 

While we can't get HT totally reliable, particularly for vm xeon, since inxi has no way to know in
that case if a core is attached to a physical core or a virtual one, all of them being virtual in that
case, but still inxi is now reporting the correct number of cores, or threads in vm xeons, and is not
showing multicore cpus as single core, which was the main issue.

This required redoing the counter logic for the cpu/core/physical arrays, now they are set independently,
and can handle any of the others not being set, without creating an error or failure condition.

Also added in last check for a certain intel case where core id is 0 but > 1 physical cores exist, that
now also shows the correct cpu / core count.

While this is tested on many data sets of proc cpuinfo, it's still possible there is a fringe case I have
not seen that will trigger yet another unexpected behavior.
2013-06-20 00:29:19 +00:00
inxi-svn a1822fd07f new version, new tarball. Added support for openSUSE repo syntax/location, as long as it's
zypp or yum it will work. If it's both then it will show only one I believe, if that's a possible scenario, no idea.

Added one more fix for those pesky intel vm cpu core errors, now if /proc/cpuinfo shows no siblings at all,
and no core_id, but does have physical id, it will use the count for physical id as a default for core count.

Not perfect, but better than calling a dual core cpu a single core.

There's still a lot of mysteries with vm versions of kvm cpus, for example, if you see a dual core xeon, is
that actually one core with ht, or two cores? There is no way to find that information out that I can see that is
reliable.
2013-06-16 20:59:53 +00:00
inxi-svn 44b0dda0e9 updated changelog only, noted grsec kernel partition/disk handling fixes. 2013-06-14 23:22:07 +00:00
inxi-svn 7cc4628ab4 New version, new tarball. Some subtle bug fixes, a kvm virtual machine uses disk id in
/proc/partitions of 253, which made the disk totals fail to show up at all. Added that in.

Moved sourcing of configuration files to right after initialize_data so that some variables
can be forced to different values before the next set of system/app checks.

This is to allow specifically turning off, for some headless servers where $DISPLAY is not
null due to a bash configuration bug, these:
B_SHOW_X_DATA='false'
B_RUNNING_IN_X='false'

Setting those two to false in inxi.conf will turn off all the X checks etc even if the $DISPLAY
is set to non null.

Added in support for ksplice kernel version, requires installed uptrack-uname, if that is
present and if uptrack-name kernel version is different from uname then it will add (ksplice)
to kernel version string, and use ksplice kernel version. Also created a single function
get_kernel_version for use by short form/long form inxi output.

For intel xeon cpus, trying a work around for a bug in /proc/cpuinfo which fails to show core_id
or physical_id for cpus, using siblings / 2 for xeons with no actual core counts.

Fixed a bug that made fixes for multimounted partitions fail for disk used. Added in support
for also excluding single partitions mounted to different places.
2013-06-14 23:08:38 +00:00
inxi-svn c6905ed8e8 New tarball, version, man page. Improved remote weather, now it uses -W, and deprecated -! location=..
That was too hard to type and too hard to remember. Also do more dyanamic reordering of weather
output, depending on how much data is present, and how many x options are used.

Added error handling for generic deprecated options, and for options that do not have the correct
syntax for OPTARG, like with -W.

This should about do it for the weather option for now unless I missed something somewhere.
2013-05-26 03:19:38 +00:00
inxi-svn fd376c3009 new version, tarball. Bug fix, overly loose regex removed na from country/state/city strings,
like nashville.
2013-05-20 03:08:05 +00:00
inxi-svn 598fb932b2 New version, new tarball. Fixed some lintian issues in man page, changed man/help for
-! location= option, to indicate that users must replace space with + themselves.

Because of how bash handles these options, inxi cannot add in + signs itself automatically.

This should be closer to cleanup of this new feature.
2013-05-18 17:52:16 +00:00
inxi-svn 01fba3c64d new version, tarball. Fixed issue with spaces in names for cities/states/countries, added
man and help instructions to remove spaces and examples.
2013-05-18 05:37:29 +00:00
inxi-svn 7b312d6a42 new tarball, version, bug fixes on weather, also optimized speed for slow isps, and added
a global that can be set in user / system configs to make a longer wget time out. Default
is 8 seconds.

This should take care of the failure from slow load issue reported.
2013-05-18 05:14:27 +00:00
inxi-svn 76dc2733b8 new version, new tarball, bug fix for weather 2013-05-18 04:11:18 +00:00
inxi-svn dc2fd3aa53 new tarball, version. Bug fix on -! location=, forgot to have it pack its own location
array, that's now correct.
2013-05-18 03:27:05 +00:00
inxi-svn 5465241cfe New version, new tarball, new man page. Unless disabled by distribution maintainers, offers
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.
2013-05-18 02:04:29 +00:00