Note, this is not often available data, so it will only show if you have it.
This requires modinfo showing ^version: data, which only sometimes is there.
This fixes weak spots, bugs, and adds new features.
1. Fixed single core output for -C option, now correctly puts speed on same line
2. Fixed bug with some possible values for network card that makes line color trigger blue: Added space between values.
3. Fixed bug that makes livecds with aufs file system show all partition information
4. Removed -F output of -f to avoid pointless irc spam
5. New option, -i - triggers when used alone -N, networking line, plus Wan IP address of system, and if ifconfig is
installed, prints out all interfaces+ip addresses
6. Updated -h menu to reflect these changes.
7. Added 'driver' output for network cards, and fixed driver output for audio cards, so now only uses asound/cards data
if single card detected.
8. Moved 'ports' data to -x option, the geek only output that is.
This is the next major version release, 0.6.x
Got a good rough working alsa driver going. This only works for one card, dual or more cards will simply
not show the driver field, but everyone with just one card will be able to see their running driver.
This is an ok compromise for now, but it wasn't super elegant.
This is as close as I can get to getting the alsa driver to show, but it only works if
lspci for audio comes up blank, that way we can use /proc/asound/cards for all the data
and extract the card and driver from that into an array.
But I can't see any way to match the full output of lspci if present with the card data
from /proc/asound/cards, because sometimes there is nothing in common between the two.
Maybe someone else can solve this one...
Fixed extra data issue on alsa output, now etch on old laptop is also showing sound card by the way.
Removing (...date build...) string from alsa output if present, and removing trailing dot.
Added new distro maintainer flag: B_ALLOW_UPDATE='true' as default. If set to false, it will shut off
the inxi script updating feature, and also turn off the display in -h of the -U option.
This seems a lot easier than having to remove code each release, which would get fairly tiresome.
Refactored script self updater error handling, removed duplicates and created single test cases.
Ok, enough is enough... heh, signing off now... enjoy, thanks to Cathbard for his patience, and
and all the other people supporting this with their time.
More future proofing, updated -! conditions to use more reasonable numbers:
1,2,3 -! are now setting testing booleans
10,11,12,http://.... now set alt downloads
Changed B_TESTING_FLAG to B_TESTING_1 to cover future cases where we run multiple testing option
flags. These last changes are all for future development, none are related to currently active stuff.
Cleaned up and refactored download error handling, put it all in download function, out
of get_params, which should only set params, not execute special case code blocks. Sorry cathbard ;-)
Added two new testing options, svn branch one and branch two download run from urls.
Both are triggered by -!, -! 3 for testing branch/one and -! 4 for testing branch/two
Fixed a fairly major bug with both short output handling and debugging output
in get_parameters.
Prevented proper handling of non line/F/d/v type options and short output.
Update scripts to this version, and hopefully that will be it for now.
Final step: moved the error output switch to end of get_parameters. This lets you trigger
the debugger -@ <debug number> flag without having to actually alter the code of inxi
manually.
This might occasionally create undesired error output, but that's a good thing, since
that error output should be seen so we can know what the error is.
This is now launching inxi as an official script. Changed the default download url
to get it directly from google svn. This means that users can always reference the
official svn copy to ensure that the code is what it claims to be.
Added for development purposes new advanced testing options:
-! 1 triggers the boolean testing flag
-! 2 triggers an alternative development download
-! http://<any website>/path_to_download_directory/ (note: must end in /, and not include
inxi file name
Updated the script_self_updater function to handle variable download urls, and added an
update message that lets the person know where the update source was.
Added error handler for user provided testing download urls, if not existing, exit.
And with this, I'm handing over control to the inxi project itself.
A series of bug and potential bug fixes:
1. In get distro data, improved handling of unfound distros significanly, handling
lsb-release testing as a fall back in 2 cases.
2. Created a new get_distro_lsb_data function to handle that processing
3. Added a last test for lsb-release presence.
4. Fixed a small bug that made ubuntu live cd hard disk size display fail.
Added fall through /etc/lsb-release test to update distro data tests.
This adds one more failsafe test to future proof the stuff against
id failures.
I tried to also use the standard lsb_release function but for some reason
when it's run inside inxi and sent to awk it gets incredibly slowed down.
This is odd, since that command usually runs quite fast in shell.
But it's too slow as is for now to use, it makes everything hang.
Maybe later I'll add an option to trigger it or something.
Updated help menu to better explain this new system, and split it into two parts:
1. output control
2. additional options
This makes it easier to read and understand.
To make it more consistent, changed -s to -A, and changed the 'Sound' line starter to Audio
This makes all primary line switches upper case, and only -f which is an addon to CPU lower.
This is a major version upgrade. Fresh option set, totally upgraded, now supports per line print
control.
Each line now has a flag to switch it on or off, and those flags will also control full line
output with verbosity levels to keep it cleaner.
Since this is a core change, the new version is 0.5.0
Also moved all debugging and testing overrides to use characters, not letters:
-% - override corrupted data
-@ [number 1-10] - Triggers debugging levels 1 - 10
-! - triggers Testing data or functions
New option list and menu:
=======================================================================================
inxi -h
inxi supports the following options. You can combine
them, or list them one by one: Examples: inxi -v4 -c6 OR inxi -dc 6
Note: extra output options (eg -f,-H,-p,-s,-x) require a verbosity level of 1 or higher.
In other words, they only work if you use either -d or -v1 (or higher)
If you start inxi with no arguments, it will show the short form.
The following options if used without -d or -v will show just that complete line:
C,f,D,G,I,N,P,s,S - you can use these together to show just the lines you want to see.
If you use them with a -v level, it will show the full output for that line.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-c Available color schemes. Scheme number is required.
Supported schemes: 0-15 Example: inxi -c 11
-C Show full CPU output, including per CPU clockspeed.
-d Default output verbosity level, same as: inxi -v 1
-f Show all cpu flags used, not just the short list.
-F Show Full, all possible, output for inxi.
-D Show full hard disk info, not only model, ie: /dev/sda - ST380817AS - 80.0GB.
-G Show graphic card information (+ glx driver and version for non free video drivers).
-I Show information: processes, uptime, memory, irc client, inxi version.
-N Show network card information.
-P Show partition information (shows what -v4 would show, but without extra data).
-s Show sound card information.
-S Show system information: host name, kernel, distro
-U Auto-update script. Note: if you installed as root, you
must be root to update, otherwise user is fine.
-v Script verbosity levels. Verbosity level number is required.
Supported levels: 1-5 Example: inxi -v 4
1 - basic verbose, same as: inxi -d
2 - Also show networking card data
3 - Also show hard disk names as detected.
4 - Also show partition size/filled data for (if present):/, /home, /var/, /boot
5 - For multicore systems, also show per core clock speeds.
-V inxi version information. Prints information then exits.
-x Show extra data: bogomips on cpu.
-% Overrides defective or corrupted data.
-@ Triggers debugger output. Requires debugging level 1-10.
1. Fixed help menu bug, now if unsupported option, error prints out full list of options used so people can see what the
wrong option was.
2. Refactored print_hdd_data, and split out print_hdd_partition_data to make it cleaner, and added triggers to primary
print output function directly, instead of embedding them in the hdd print function.
3. Moved print_it_out to top of print functions, and made better comments to show how it works.
literals in the case list. This might trigger a few failures, but it's better to then handle those failures explicitly in
my opinion than to depend on something as loose as *sh*, which will catch any app with sh ever made.
Moved advanced hard disk data to be triggered now by -H, to avoid spamming irc.
In the future, -x, extra data, will only be used for really silly little things like bogomips, ports, and so on, stuff
that's short and basically just of interest to a few people.
Fixed a small bug in the disk size calculator, now it works all with single decimal accuracy for percent used and disk
spacke in GB. This should solve a problem on smaller disks where the total partition size fails to equal the total disk
size, and where on single small disks, where the listed total size didn't match the calculated single disk output.
too long. Now the get partition info function reads back from the last item per record, not from the first one. Since the
detection is based on the last item in the line, this should maybe fix that issue. Seen with LVM naming for example.
We'll see if this works or not.
each awk statement. This avoids exiting awk, then looping through the array in bash, then sending the array items to the
cleaner function, back into awk, then sending it back, and rebuilding the array.
I tried putting the gawk cleaners into a variable and using the variable, but that didn't work as expected, but I'll see
if i can figure out how to get that working.
Added options -c for color scheme, -d for default (same as previous -v1 or -v), -T testing, allows trigger of
experimental new methods or outputs or functions.
now unneeded get cpu data stuff
More clean up, tightened up print functions, added some more locals in main print function for child data, removed
corresponding globals.
if [ .....]
then
or
elif [....]
then
to use the hanging then turd method:
if [....];then
This will be the standard style for inxi
All other flow controls will be on their own lines, ie:
do
done
{
}