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.