aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xinxi129
-rw-r--r--inxi.14
-rw-r--r--inxi.changelog37
3 files changed, 108 insertions, 62 deletions
diff --git a/inxi b/inxi
index 2a528f0..de2c665 100755
--- a/inxi
+++ b/inxi
@@ -31,8 +31,8 @@ use POSIX qw(uname strftime ttyname);
## INXI INFO ##
my $self_name='inxi';
-my $self_version='3.0.34';
-my $self_date='2019-04-30';
+my $self_version='3.0.35';
+my $self_date='2019-07-15';
my $self_patch='00';
## END INXI INFO ##
@@ -142,9 +142,10 @@ sub main {
# print Dumper \@ARGV;
eval $start if $b_log;
initialize();
- ## use for start client debugging
+ ## Uncomment these two values for start client debugging
# $debug = 10; # 3 prints timers
- # set_debugger(); # for debugging of konvi issues
+ # set_debugger(); # for debugging of konvi and other start client issues
+ ## legacy method
#my $ob_start = StartClient->new();
#$ob_start->get_client_data();
StartClient::get_client_data();
@@ -7877,7 +7878,7 @@ sub cpu_arch {
}
elsif ($family eq '17'){
if ( $model =~ /^(1|11)$/ ) {$arch = 'Zen'}
- elsif ( $model =~ /^(8)$/ ) {$arch = 'Zen+'}
+ elsif ( $model =~ /^(8|18)$/ ) {$arch = 'Zen+'}
elsif ( $model =~ /^2[0123456789ABCDEF]$/ ) {$arch = 'Zen 2'}
else {$arch = 'Zen'}
}
@@ -8738,41 +8739,41 @@ sub device_vendor {
## These go first because they are the most likely and common ##
['(Crucial|^(FC)?CT|-CT|^M4\b)','Crucial','Crucial',''],
['^(INTEL|SSD(PAM|SA2))','^INTEL','Intel',''],
- ['(KINGSTON|DataTraveler|DT\s?(DUO|Microduo|101)|^SMS|^SHS|^SUV|^Ultimate CF)','KINGSTON','Kingston',''], # maybe SHS: SHSS37A SKC SUV
+ ['(KINGSTON|DataTraveler|DT\s?(DUO|Microduo|101)|^SMS|^SHS|^SUV|^Ultimate CF|HyperX|^S[AV][34]00)','KINGSTON','Kingston',''], # maybe SHS: SHSS37A SKC SUV
# must come before samsung MU. NOTE: toshiba can have: TOSHIBA_MK6475GSX: mush: MKNSSDCR120GB_
['(^MKN|Mushkin)','Mushkin','Mushkin',''], # MKNS
# MU = Multiple_Flash_Reader too risky: |M[UZ][^L] HD103SI HD start risky
# HM320II HM320II
- ['(SAMSUNG|^MCG[0-9]+GC|^MCC|^[GS]2 Portable|^DUO\b|^P3|^(HM|SP)[0-9]{2})','SAMSUNG','Samsung',''], # maybe ^SM, ^HM
+ ['(SAMSUNG|^MCG[0-9]+GC|^MCC|^[GS]2 Portable|^DUO\b|^P3|^(HM|SP)[0-9]{2}|^MZMPC|^HD[0-9]{3}[A-Z]{2}$)','SAMSUNG','Samsung',''], # maybe ^SM, ^HM
# Android UMS Composite?
['(SanDisk|^SDS[S]?[DQ]|^SL([0-9]+)G|^AFGCE|ULTRA\sFIT|Clip Sport|Cruzer|^Extreme)','SanDisk','SanDisk',''],
['^STEC\b','^STEC\b','STEC',''], # ssd drive, must come before seagate ST test
# real, SSEAGATE Backup+; XP1600HE30002 | 024 HN (spinpoint)
- ['(^ST[^T]|[S]?SEAGATE|^X[AFP]|^5AS|^BUP|Expansion Desk|FreeAgent|GoFlex|Backup(\+|\s?Plus)\s?Hub)','[S]?SEAGATE','Seagate',''],
- ['^(WD|WL[0]9]|Western Digital|My (Book|Passport)|\d*LPCX|Elements|M000|EARX|EFRX|\d*EAVS|0JD|JPVX|[0-9]+(BEV|(00)?AAK|AAV|AZL))','(^WDC|Western\s?Digital)','Western Digital',''],
+ ['(^ST[^T]|[S]?SEAGATE|^X[AFP]|^5AS|^BUP|Expansion Desk|FreeAgent|GoFlex|Backup(\+|\s?Plus)\s?(Hub)?|OneTouch)','[S]?SEAGATE','Seagate',''],
+ ['^(WD|WL[0]9]|Western Digital|My (Book|Passport)|\d*LPCX|Elements|M000|EARX|EFRX|\d*EAVS|0JD|JPVX|[0-9]+(BEV|(00)?AAK|AAV|AZL|EA[CD]S))','(^WDC|Western\s?Digital)','Western Digital',''],
## Then better known ones ##
- ['^(A-DATA|ADATA|AXN|CH11)','^(A-DATA|ADATA)','A-Data',''],
+ ['^(A-DATA|ADATA|AXN|CH11|HV[1-9])','^(A-DATA|ADATA)','A-Data',''],
['^ADTRON','^(ADTRON)','Adtron',''],
['^ASUS','^ASUS','ASUS',''],
['^ATP','^ATP[\s\-]','ATP',''],
# Force MP500
- ['^(Corsair|Force\s|Voyager)','^Corsair','Corsair',''],
- ['^(FUJITSU|MH[VY]|MP)','^FUJITSU','Fujitsu',''],
+ ['^(Corsair|Force\s|(Flash\s*)?Voyager)','^Corsair','Corsair',''],
+ ['^(FUJITSU|MH[TVWYZ][0-9]|MP|MAP[0-9])','^FUJITSU','Fujitsu',''],
# note: 2012: wdc bought hgst
['^(HGST|Touro|5450)','^HGST','HGST (Hitachi)',''], # HGST HUA
['^(Hitachi|HD[ST]|DK[0-9]|IC|HT|HU)','^Hitachi','Hitachi',''],
# vb: VB0250EAVER but clashes with vbox; HP_SSD_S700_120G ;GB0500EAFYL GB starter too generic?
- ['^(HP\b|MB0|G[BJ]0|v[0-9]{3}[ow])','^HP','HP',''],
+ ['^(HP\b|MB0|G[BJ]0|v[0-9]{3}[bgorw]$|x[0-9]{3}[w]$)','^HP','HP',''],
['^(LSD|Lexar|JumpDrive|JD\s?Firefly)','^Lexar','Lexar',''], # mmc-LEXAR_0xb016546c; JD Firefly;
# OCZSSD2-2VTXE120G is OCZ-VERTEX2_3.5
- ['^(OCZ|APOC|D2|DEN|DEN|DRSAK|EC188|FTNC|GFGC|MANG|MMOC|NIMC|NIMR|PSIR|TALOS2|TMSC|TRSAK)','^OCZ[\s\-]','OCZ',''],
+ ['^(OCZ|APOC|D2|DEN|DEN|DRSAK|EC188|FTNC|GFGC|MANG|MMOC|NIMC|NIMR|PSIR|RALLY2|TALOS2|TMSC|TRSAK)','^OCZ[\s\-]','OCZ',''],
['^OWC','^OWC[\s\-]','OWC',''],
['^Philips','^Philips','Philips',''],
['^PIONEER','^PIONEER','Pioneer',''],
['^PNY','^PNY\s','PNY','','^PNY'],
# note: get rid of: M[DGK] becasue mushkin starts with MK
# note: seen: KXG50ZNV512G NVMe TOSHIBA 512GB | THNSN51T02DUK NVMe TOSHIBA 1024GB
- ['(^[S]?TOS|^THN|TOSHIBA|TransMemory)','[S]?TOSHIBA','Toshiba',''], # scsi-STOSHIBA_STOR.E_EDITION_
+ ['(^[S]?TOS|^THN|TOSHIBA|TransMemory|^M[KQ][0-9])','[S]?TOSHIBA','Toshiba',''], # scsi-STOSHIBA_STOR.E_EDITION_
## These go last because they are short and could lead to false ID, or are unlikely ##
# unknown: AL25744_12345678; ADP may be usb 2.5" adapter; udisk unknown: Z1E6FTKJ 00AAKS
# SSD2SC240G726A10 MRS020A128GTS25C EHSAJM0016GB
@@ -8793,6 +8794,7 @@ sub device_vendor {
['^BIWIN','^BIWIN','BIWIN',''],
['^BUFFALO','^BUFFALO','Buffalo',''],
['^Centerm','^Centerm','Centerm',''],
+ ['^Centon','^Centon','Centonm',''],
['^CHN\b','','Zheino',''],
['^Clover','^Clover','Clover',''],
['^Colorful\b','^Colorful','Colorful',''],
@@ -8808,20 +8810,23 @@ sub device_vendor {
['^DREVO\b','^DREVO','Drevo',''],
['^(Eaget|V8$)','^Eaget','Eaget',''],
['^EDGE','^EDGE','EDGE',''],
+ ['^Elecom','^ElecomE','Elecom',''],
['^EXCELSTOR','^EXCELSTOR( TECHNO(LOGY)?)?','ExcelStor',''],
['^EZLINK','^EZLINK','EZLINK',''],
['^Fantom','^Fantom( Drive[s]?)?','Fantom Drives',''],
['^Faspeed','^Faspeed','Faspeed',''],
['^FASTDISK','^FASTDISK','FASTDISK',''],
+ # FK0032CAAZP/FB160C4081 FK or FV can be HP but can be other things
['^FORESEE','^FORESEE','Foresee',''],
['^GALAX\b','^GALAX','GALAX',''],
['^Galaxy\b','^Galaxy','Galaxy',''],
+ ['^(Garmin|Fenix)','^Garmin','Garmin',''],
['^Geil','^Geil','Geil',''],
['^Generic','^Generic','Generic',''],
['^Gigabyte','^Gigabyte','Gigabyte',''], # SSD
['^Gigastone','^Gigastone','Gigastone',''],
['^Gloway','^Gloway','Gloway',''],
- ['^(GOODRAM|IR SSD)','^GOODRAM','GOODRAM',''],
+ ['^(GOODRAM|GOODDRIVE|IR SSD)','^GOODRAM','GOODRAM',''],
# supertalent also has FM: |FM
['^(G[\.]?SKILL)','^G[\.]?SKILL','G.SKILL',''],
['^HDC','^HDC\b','HDC',''],
@@ -8834,8 +8839,9 @@ sub device_vendor {
['^(InnoDisk|Innolite)','^InnoDisk( Corp.)?','InnoDisk',''],
['^Innostor','^Innostor','Innostor',''],
['^Innovation','^Innovation','Innovation',''],
+ ['^Innovera','^Innovera','Innovera',''],
['^(INM|Integral|V\s?Series)','^Integral(\s?Memory)?','Integral Memory',''],
- ['^(Intenso|(Alu|Mobile|Rainbow|Speed) Line)','^Intenso','Intenso',''],
+ ['^(Intenso|(Alu|Basic|Business|Micro|Mobile|Rainbow|Speed|Twister) Line|Rainbow)','^Intenso','Intenso',''],
['^(Iomega|ZIP\b)','^Iomega','Iomega',''],
['^JingX','^JingX','JingX',''], #JingX 120G SSD - not confirmed, but guessing
# NOTE: ITY2 120GB hard to find
@@ -8844,17 +8850,20 @@ sub device_vendor {
['^Kingfast','^Kingfast','Kingfast',''],
['^KingMAX','^KingMAX','KingMAX',''],
['^KINGSHARE','^KINGSHARE','KingShare',''],
- ['^KingSpec','^KingSpec','KingSpec',''],
+ ['^(KingSpec|ACSC)','^KingSpec','KingSpec',''],
# kingwin docking, not actual drive
['^(EZD|EZ-Dock)','','Kingwin Docking Station',''],
+ ['^KLEVV','^KLEVV','KLEVV',''],
+ ['^(Lacie|P92)','^Lacie','Lacie',''],
['^LDLC','^LDLC','LDLC',''],
['^Lenovo','^Lenovo','Lenovo',''],
['^RPFT','','Lenovo O.E.M.',''],
+ ['^LG\b','^LG','LG',''],
['^(LITE[\-\s]?ON[\s\-]?IT)','^LITE[\-]?ON[\s\-]?IT','LITE-ON IT',''], # LITEONIT_LSS-24L6G
['^(LITE[\-\s]?ON|PH[1-9])','^LITE[\-]?ON','LITE-ON',''], # PH6-CE240-L
['^M-Systems','^M-Systems','M-Systems',''],
- ['^(MAXTOR|Atlas)','^MAXTOR','Maxtor',''], # note M2 M3 is usually maxtor, but can be samsung
- ['^Memorex','^Memorex','Memorex',''],
+ ['^(MAXTOR|Atlas|TM[0-9]{4})','^MAXTOR','Maxtor',''], # note M2 M3 is usually maxtor, but can be samsung
+ ['^(Memorex|TravelDrive)','^Memorex','Memorex',''],
# note: C300/400 can be either micron or crucial, but C400 is M4 from crucial
['(^MT|^M5|^Micron|00-MT|C[34]00)','^Micron','Micron',''],# C400-MTFDDAK128MAM
['^MARSHAL\b','^MARSHAL','Marshal',''],
@@ -8865,6 +8874,7 @@ sub device_vendor {
['^Morebeck','^Morebeck','Morebeck',''],
['^Motorola','^Motorola','Motorola',''],
['^MTRON','^MTRON','MTRON',''],
+ ['^MXSSD','^Mach\s*Xtreme','Mach Xtreme',''],
['^Netac','^Netac','Netac',''],
['^OOS[1-9]','','Utania',''],
['^OWC','^OWC\b','OWC',''],
@@ -8890,7 +8900,7 @@ sub device_vendor {
['^(Silicon\s?Power|SP[CP]C|Silicon|Diamond|Haspeed)','Silicon\s?Power','Silicon Power',''],
['Smartbuy','\s?Smartbuy','Smartbuy',''], # SSD Smartbuy 60GB; mSata Smartbuy 3
# HFS128G39TND-N210A; seen nvme with name in middle
- ['(SK\s?HYNIX|^HFS)','\s?SK\s?HYNIX','SK Hynix',''],
+ ['(SK\s?HYNIX|^HF[MS])','\s?SK\s?HYNIX','SK Hynix',''],
['hynix','hynix','Hynix',''],# nvme middle of string, must be after sk hynix
['^SH','','Smart Modular Tech.',''],
['^Skill','^Skill','Skill',''],
@@ -8901,7 +8911,7 @@ sub device_vendor {
['^SUNEAST','^SUNEAST','SunEast',''],
# NOTE: F[MNETU] not reliable, g.skill starts with FM too:
# Seagate ST skips STT.
- ['^(STT)','','Super Talent',''],
+ ['^(STT|FHM[0-9])','','Super Talent',''],
['^(SF|Swissbit)','^Swissbit','Swissbit',''],
# ['^(SUPERSPEED)','^SUPERSPEED','SuperSpeed',''], # superspeed is a generic term
['^TANDBERG','^TANDBERG','Tanberg',''],
@@ -8915,7 +8925,6 @@ sub device_vendor {
['^TopSunligt','^TopSunligt','TopSunligt',''], # is this a typo? hard to know
['^TopSunlight','^TopSunlight','TopSunlight',''],
['^(TS|Transcend|JetFlash)','^Transcend','Transcend',''],
- # Twister Line but if we slice out Twister it would just say Line
['^(TrekStor|DS maxi)','^TrekStor','TrekStor',''],
['^UDinfo','^UDinfo','UDinfo',''],
['^USBTech','^USBTech','USBTech',''],
@@ -8927,14 +8936,14 @@ sub device_vendor {
['^VMware','^VMware','VMware',''],
['^(Vseky|Vaseky)','^Vaseky','Vaseky',''], # ata-Vseky_V880_350G_
['^(YUCUN|R880)','^YUCUN','YUCUN',''],
+ ['^(Zheino|CHN[0-9])','^Zheino','Zheino',''],
['^ZTC','^ZTC','ZTC',''],
['^(ASMT|2115)','^ASMT','ASMT (case)',''],
);
- foreach my $ref (@vendors){
- my @row = @$ref;
- if ($model =~ /$row[0]/i || ($row[3] && $serial && $serial =~ /$row[3]/)){
- $vendor = $row[2];
- $model =~ s/$row[1]//i if $row[1] && lc($model) ne lc($row[1]);
+ foreach my $row (@vendors){
+ if ($model =~ /$row->[0]/i || ($row->[3] && $serial && $serial =~ /$row->[3]/)){
+ $vendor = $row->[2];
+ $model =~ s/$row->[1]//i if $row->[1] && lc($model) ne lc($row->[1]);
$model =~ s/^[\s\-_]+|[\s\-_]+$//g;
$model =~ s/\s\s/ /g;
@data = ($vendor,$model);
@@ -9723,12 +9732,11 @@ sub display_compositor {
['westford','westford','','westford'],
['xcompmgr','xcompmgr','','xcompmgr'],
);
- foreach my $ref (@compositors){
- my @item = @$ref;
+ foreach my $item (@compositors){
# no need to use check program with short list of ps_gui
# if (main::check_program($item[0]) && (grep {/^$item[1]$/} @ps_gui ) ){
- if (grep {/^$item[1]$/} @ps_gui){
- $compositor = $item[3];
+ if (grep {/^$item->[1]$/} @ps_gui){
+ $compositor = $item->[3];
last;
}
}
@@ -12790,6 +12798,7 @@ sub create_output {
}
$rows[$j]{main::key($num++,'use')} = $ref{'use'} if $b_non_system;
$rows[$j]{main::key($num++,'slots')} = $ref{'slots'};
+ $ref{'eec'} ||= 'N/A';
$rows[$j]{main::key($num++,'EC')} = $ref{'eec'};
if ($extra > 0 && (!$b_non_system ||
( main::is_numeric($ref{'max-module-size'}) && $ref{'max-module-size'} > 10 ) ) ){
@@ -12857,8 +12866,8 @@ sub dmidecode_data {
my ($i,$j,$k) = (0,0,0);
foreach (@dmi){
my @ref = @$_;
- ($derived_module_size,$max_cap_5,$max_cap_16,$max_module_size) = (0,0,0,0);
- # Portable Battery
+ ## NOTE: do NOT reset these values, that causes failures
+ # ($derived_module_size,$max_cap_5,$max_cap_16,$max_module_size) = (0,0,0,0);
if ($ref[0] == 5){
$ram[$k] = ({}) if !$ram[$k];
foreach my $item (@ref){
@@ -12891,7 +12900,6 @@ sub dmidecode_data {
next if ! $temp[1];
if ($temp[0] eq 'Installed Size'){
# get module size
-
$size = calculate_size($temp[1],0);
# get data after module size
$temp[1] =~ s/ Connection\)?//;
@@ -12915,6 +12923,7 @@ sub dmidecode_data {
$ram[$handle] = $ram[$k] if $ram[$k];
$ram[$k] = undef;
$ram[$handle] = ({}) if !$ram[$handle];
+ # ($derived_module_size,$max_cap_16) = (0,0);
foreach my $item (@ref){
@temp = split /:\s*/, $item;
next if ! $temp[1];
@@ -13071,7 +13080,6 @@ sub data_processor {
my $b_debug = 0;
my (@return,@temp);
my $est = 'est.';
-
foreach (@ram){
# because we use the actual array handle as the index,
# there will be many undefined keys
@@ -13080,11 +13088,13 @@ sub data_processor {
my ($max_cap,$max_mod_size) = (0,0);
my ($alt_cap,$est_cap,$est_mod,$unit) = (0,'','','');
$max_cap = $ref{'max-capacity-16'};
+ $max_cap ||= 0;
# make sure they are integers not string if empty
$ref{'slots-5'} ||= 0;
$ref{'slots-16'} ||= 0;
$ref{'max-capacity-5'} ||= 0;
$ref{'max-module-size'} ||= 0;
+ $ref{'used-capacity'} ||= 0;
#$ref{'max-module-size'} = 0;# debugger
# 1: if max cap 1 is null, and max cap 2 not null, use 2
if ($b_debug){
@@ -13186,11 +13196,14 @@ sub data_processor {
elsif ($ref{'slots-5'} && $ref{'slots-5'} > $ref{'slots-16'}){
$slots = $ref{'slots-5'};
}
+ # print "slots: $slots\n" if $b_debug;
if ($ref{'derived-module-size'} * $slots > $max_cap){
$ref{'max-module-size'} = $ref{'derived-module-size'};
+ print "H\n" if $b_debug;
}
else {
$ref{'max-module-size'} = sprintf("%.f",$max_cap/$slots);
+ print "J\n" if $b_debug;
}
$est_mod = $est;
}
@@ -13201,7 +13214,7 @@ sub data_processor {
if (!$est_cap && $ref{'max-module-size'} > 0){
if ($max_cap > ( $ref{'max-module-size'} * $ref{'slots-16'})){
$est_cap = 'check';
- print "H\n" if $b_debug;
+ print "K\n" if $b_debug;
}
}
}
@@ -13271,11 +13284,12 @@ sub calculate_size {
$data = $1/1024;
#print "d3:$data\n";
}
+ #print "d1a: $data s1: $size\n";
if (main::is_numeric($data) && $data > $size ) {
#if ($data =~ /^[0-9][0-9]+$/ && $data > $size ) {
- $size=$data;
+ $size = $data;
}
- #print "d1: $data s1: $size\n";
+ #print "d1b: $data s1: $size\n";
}
else {
$size = 0;
@@ -16249,18 +16263,17 @@ sub get_env_de_data {
[0,'manokwari','manokwari','manokwari',1,0],
[1,'ukui','ukui','ukui-session',0,1],
);
- foreach my $ref (@desktops){
- my @item = @$ref;
- # Check if in xdg_desktop OR desktop_session OR if in $item[6] and in ps_gui
- if ( (($item[0] && ($xdg_desktop eq $item[1] || $desktop_session eq $item[1] )) ||
- (!$item[0] && ($xdg_desktop =~ /$item[1]/ || $desktop_session =~ /$item[1]/ )) ) ||
- ($item[6] && @ps_gui && (grep {/$item[6]/} @ps_gui) ) ){
- @data = main::program_values($item[2]);
+ foreach my $item (@desktops){
+ # Check if in xdg_desktop OR desktop_session OR if in $item->[6] and in ps_gui
+ if ( (($item->[0] && ($xdg_desktop eq $item->[1] || $desktop_session eq $item->[1] )) ||
+ (!$item->[0] && ($xdg_desktop =~ /$item->[1]/ || $desktop_session =~ /$item->[1]/ )) ) ||
+ ($item->[6] && @ps_gui && (grep {/$item->[6]/} @ps_gui) ) ){
+ @data = main::program_values($item->[2]);
$desktop[0] = $data[3];
- $b_gtk = $item[4];
- $b_qt = $item[5];
+ $b_gtk = $item->[4];
+ $b_qt = $item->[5];
if ($data[1] && $data[2]){
- $desktop[1] = main::program_version($item[3],$data[0],$data[1],$data[2],$data[5],$data[6]);
+ $desktop[1] = main::program_version($item->[3],$data[0],$data[1],$data[2],$data[5],$data[6]);
}
last;
}
@@ -16399,11 +16412,10 @@ sub get_xprop_de_data {
['openbox','openbox_pid','openbox','openbox'],
['amiwm','amiwm','amiwm','amiwm'],
);
- foreach my $ref (@desktops){
- my @item = @$ref;
- if (main::check_program($item[0]) && main::awk(\@xprop,$item[1]) &&
- (!$item[4] || (@ps_gui && (grep {/$item[4]/} @ps_gui ))) ){
- @data = main::program_data($item[2],$item[3],0);
+ foreach my $item (@desktops){
+ if (main::check_program($item->[0]) && main::awk(\@xprop,$item->[1]) &&
+ (!$item->[4] || (@ps_gui && (grep {/$item->[4]/} @ps_gui ))) ){
+ @data = main::program_data($item->[2],$item->[3],0);
$desktop[0] = $data[0];
$desktop[1] = $data[1];
last;
@@ -16466,12 +16478,11 @@ sub get_ps_de_data {
['wmx','wmx','wmx','wmx'],
['xmonad','xmonad','xmonad','xmonad'],
);
- foreach my $ref (@desktops){
- my @item = @$ref;
+ foreach my $item (@desktops){
# no need to use check program with short list of ps_gui
# if ( main::check_program($item[0]) && (grep {/^$item[1]$/} @ps_gui)){
- if (grep {/^$item[1]$/} @ps_gui){
- @data = main::program_data($item[2],$item[3],0);
+ if (grep {/^$item->[1]$/} @ps_gui){
+ @data = main::program_data($item->[2],$item->[3],0);
$desktop[0] = $data[0];
$desktop[1] = $data[1];
last;
@@ -17213,6 +17224,7 @@ sub ubuntu_id {
$codename = lc($codename);
my ($id) = ('');
my %codenames = (
+ 'eoan' => '19.10',
'disco' => '19.04',
'cosmic' => '18.10',
'bionic' => '18.04 LTS',
@@ -18574,6 +18586,7 @@ sub set_dmidecode_data {
# my $file = "$ENV{'HOME'}/bin/scripts/inxi/data/dmidecode/dmidecode-loki-1.txt";
#my $file = "$ENV{'HOME'}/bin/scripts/inxi/data/dmidecode/dmidecode-t41-1.txt";
#my $file = "$ENV{'HOME'}/bin/scripts/inxi/data/dmidecode/dmidecode-mint-20180106.txt";
+ #my $file = "$ENV{'HOME'}/bin/scripts/inxi/data/dmidecode/dmidecode-vmware-ram-1.txt";
#open my $fh, '<', $file or die "can't open $file: $!";
#chomp(@data = <$fh>);
}
diff --git a/inxi.1 b/inxi.1
index ef6ec3d..3896091 100644
--- a/inxi.1
+++ b/inxi.1
@@ -1,4 +1,4 @@
-.TH INXI 1 "2019\-04\-30" inxi "inxi manual"
+.TH INXI 1 "2019\-07\-15" inxi "inxi manual"
.SH NAME
inxi \- Command line system information script for console and IRC
.SH SYNOPSIS
@@ -1008,7 +1008,7 @@ lists, or if you have problems making a connection for any reason. Works with
.TP
.B \-\-output [json|screen|xml]\fR
-Change data output type. Requires \-\-output\-file if not fBscreen\fR.
+Change data output type. Requires \-\-output\-file if not \fBscreen\fR.
.TP
.B \-\-output\-file [full path to output file|print]\fR
diff --git a/inxi.changelog b/inxi.changelog
index d9f40f5..a602bf9 100644
--- a/inxi.changelog
+++ b/inxi.changelog
@@ -1,4 +1,37 @@
=====================================================================================
+Version: 3.0.35
+Patch: 00
+Date: 2019-07-15
+-----------------------------------
+Changes:
+-----------------------------------
+New version. Bug fixes, updates.
+
+Bugs:
+1. Issue #185 exposed a small long standing bug in ram max module size logic.
+Was not retaining the value each loop iteration, which could lead to way off
+max module size guesses. Note that this could lead to a VERY wrong max module size
+report.
+2. Issue #185 also exposed a rarely seen undefined value for ram reports, was
+not tested for undefined, now is.
+
+Fixes:
+1. cleanup of comments in start client debugger that made it unclear.
+2. Got rid of all the legacy development modules that were in inxi-perl/modules.
+These were totally out of date and pointless to retain.
+
+Enhancements:
+1. Added eoan ubuntu 19-10 release name
+2. Added zen cpu model ID.
+3. Disk vendors and new vendor IDs added. Thanks linuxlite hardware database.
+4. Made a backend tool to check for new unhandled disks, this makes updating
+disk/vendor IDs a lot easier.
+5. Updated inxi-perl/docs with new links etc.
+
+-----------------------------------
+-- Harald Hope - Mon, 15 Jul 2019 19:48:45 -0700
+
+=====================================================================================
Version: 3.0.34
Patch: 00
Date: 2019-04-30
@@ -50,7 +83,7 @@ can do it, if not, nothing bad happens, it just won't show any suggested install
package, no big deal.
3. Using the new disk vendor method, added even more disk vendors. Thanks
-linux litet hardware database!!
+linux lite hardware database!!
4. EXCITING!! A new --admin/-a option, suggested by a user on techpatterns.com/forums/
Now -S or -b or -F with -a option for GNU/Linux shows the kernel boot parameters,
@@ -64,7 +97,7 @@ This could be very helpful to distros who often have to determine if for example
graphics blacklists are correctly applied for non free drivers, like nomodeset etc,
or if the opposite is present.
-For forum/distro support, they just have to ask for: inxi -ba and they will see t
+For forum/distro support, they just have to ask for: inxi -ba and they will see
the relevant graphics info, for instance, or -SGaxxx, or -Faxxx, whatever is used
to trigger in this case the graphics and system lines.