diff --git a/pinxi b/pinxi index e21c486..9857857 100755 --- a/pinxi +++ b/pinxi @@ -50,8 +50,8 @@ use POSIX qw(ceil uname strftime ttyname); ## INXI INFO ## my $self_name='pinxi'; my $self_version='3.3.31'; -my $self_date='2023-12-19'; -my $self_patch='32'; +my $self_date='2023-12-24'; +my $self_patch='33'; ## END INXI INFO ## my ($b_pledge,@pledges); @@ -9586,7 +9586,8 @@ sub cpuinfo_data_grabber { # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-brickwizard-atom-n270~cpuinfo-1.txt"; # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-amd-phenom-chrisretusn-cpuinfo-1.txt"; # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-drgibbon-intel-i7-cpuinfo.txt"; - $file = "$fake_data_dir/cpu/sys-ci-pairs/ryzen-threadripper-2x-32-3950x-cpuinfo.txt"; + $file = "$fake_data_dir/cpu/sys-ci-pairs/ryzen-threadripper-1x64-3950x-cpuinfo.txt"; + # $file = "$fake_data_dir/cpu/sys-ci-pairs/amd-threadripper-1x12-5945wx-cpuinfo-1.txt"; ## ARM/MIPS # $file = "$fake_data_dir/cpu/arm/arm-4-core-pinebook-1.txt"; # $file = "$fake_data_dir/cpu/arm/armv6-single-core-1.txt"; @@ -9859,7 +9860,8 @@ sub sys_data_grabber { # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-brickwizard-atom-n270~sys-1.txt"; # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-amd-phenom-chrisretusn-sys-1.txt"; # $file = "$fake_data_dir/cpu/sys-ci-pairs/x86-drgibbon-intel-i7-sys.txt"; - $file = "$fake_data_dir/cpu/sys-ci-pairs/ryzen-threadripper-2x-32-3950x-sys.txt"; + $file = "$fake_data_dir/cpu/sys-ci-pairs/ryzen-threadripper-1x64-3950x-sys.txt"; + # $file = "$fake_data_dir/cpu/sys-ci-pairs/amd-threadripper-1x12-5945wx-cpuinfo-1.txt"; @files = main::reader($file); } # There's a massive time hit reading full globbed set of files, so grab and @@ -18692,7 +18694,7 @@ sub get_compositors { # these are more obscure, so check for them after primary common ones push (@compositors,qw(3dwm cosmic-comp dcompmgr gala kmscon metisse mir moblin monsterwm picom ukwm unagi unity-system-compositor - xcompmgr xfwm4 xfwm5 xfwm)); + xcompmgr xfwm3 xfwm4 xfwm5 xfwm)); my $matches = join('|',@compositors) . $ps_data{'wl-comp'}; foreach my $psg (@ps_gui){ if ($psg =~ /^($matches)$/){ @@ -28666,12 +28668,12 @@ sub get_env_de_data { eval $start if $b_log; my ($program,@version_data); if (!$desktop->[0]){ - # 0: 1/0; 1: env var search; 2: data; 3: gtk tk; 4: qt tk; 5: ps_gui search + # 0: 1/0; 1: env var search; 2: data; 3: gtk tk; 4: qt tk; 5: ps search my @desktops =( [1,'unity','unity',0,0], [0,'budgie','budgie-desktop',0,0], # debian package: lxde-core. - # NOTE: some distros fail to set XDG data for root + # NOTE: some distros fail to set XDG data for root, ps may get it [1,'lxde','lxpanel',0,0,',^lxsession$'], [1,'razor','razor-session',0,1,'^razor-session$'], # BAD: lxqt-about opens dialogue, sigh. @@ -28692,9 +28694,12 @@ sub get_env_de_data { ); 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->[5] && @ps_gui && (grep {/$item->[5]/} @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->[5] && + @{$ps_data{'desktop-ps'}} && (grep {/$item->[5]/} @{$ps_data{'desktop-ps'}}))){ ($desktop->[0],$desktop->[1]) = ProgramData::full($item->[2]); $b_gtk = $item->[3]; $b_qt = $item->[4]; @@ -28902,8 +28907,8 @@ sub get_env_xprop_misc_data { ); foreach my $item (@desktops){ if (main::check_program($item->[0]) && main::awk(\@xprop,$item->[1]) && - (!$item->[4] || (@ps_gui && (grep {/$item->[4]/} @ps_gui)))){ - ($desktop->[0],$desktop->[1]) = ProgramData::full($item->[2]); + (!$item->[4] || (@ps_gui && (grep {/$item->[4]/} @ps_gui)))){ + ($desktop->[0],$desktop->[1]) = ProgramData::full($item->[2]); last; } } @@ -28925,11 +28930,6 @@ sub get_ps_de_data { # ['flwm','flwm','flwm',''], ['flwm','flwm(_topside)?','flwm',''], ['fvwm-crystal','fvwm.*-crystal','fvwm-crystal','fvwm'], - ['fvwm1','fvwm1','fvwm1',''], - ['fvwm2','fvwm2','fvwm2',''], - ['fvwm3','fvwm3','fvwm3',''], - ['fvwm95','fvwm95','fvwm95',''], - ['fvwm','fvwm','fvwm',''], ['hyprland','[Hh]yprland','hyprctl',''], # ['qtile','.*qtile','qtile',''], # *(python.*)?qtile' # ['stumpwm','stumpwm','stumpwm',''], # '(sh|c?lisp)?.*stumpwm' @@ -28954,9 +28954,10 @@ sub get_ps_de_data { # unverfied: 2bwm catwm mcwm penrose snapwm uwm wmfs wmfs2 wingo wmii2 # xfdesktoo is fallback in case not in xprop @wms = qw(icewm 2bwm 9wm aewm aewm\+\+ afterstep amiwm antiwm awesome - blackbox bspwm calmwm catwm cde clfswm ctwm dawn dusk dwm echinus evilwm - fluxbox hackedbox herbstluftwm instantwm i3 ion3 jbwm jwm - larswm leftwm lwm matchbox-window-manager mcwm mini musca mvwm mwm + blackbox bspwm calmwm catwm cde clfswm ctwm dawn dusk dwm + echinus evilwm fluxbox fvwm1 fvwm2 fvwm3 fvwm95 fvwm + hackedbox herbstluftwm instantwm i3 ion3 jbwm jwm larswm leftwm lwm + matchbox-window-manager mcwm mini musca mvwm mwm nawm notion nscde openbox pekwm penrose qtile qvwm ratpoison sawfish scrotwm snapwm spectrwm stumpwm tinywm tvtwm twm uwm windowlab wmfs wmfs2 wingo wmii2 wmii wmx xmonad yeahwm); @@ -29060,7 +29061,7 @@ sub get_wm_main { marco mcwm mini muffin musca deepin-mutter mutter deepin-metacity metacity mvwm mwm nawm notion openbox qtile qvwm penrose ratpoison sawfish scrotwm snapwm spectrwm stumpwm tinywm tvtwm twm ukwm windowlab WindowMaker wingo - wmfs2? wmii2? wmx xfwm[45]? xmonad yeahwm); + wmfs2? wmii2? wmx xfwm[345]? xmonad yeahwm); my $wms = join('|',@wms) . $ps_data{'wl-comp'}; foreach my $psg (@ps_gui){ if ($psg =~ /^($wms)$/){ @@ -34210,6 +34211,7 @@ sub set_values { 'xfdesktop-toolkit' => ['Built[[:space:]]with[[:space:]]GTK',4,'--version','Gtk',0,1,0,'',''], # ' This is xfwm4 version 4.16.1 (revision 5f61a84ad) for Xfce 4.16' 'xfwm' => ['xfwm[3-8]? version',5,'--version','xfwm',0,1,0,'^^\s+',''],# unverified + 'xfwm3' => ['xfwm3? version',5,'--version','xfwm',0,1,0,'^^\s+',''], # unverified 'xfwm4' => ['xfwm4? version',5,'--version','xfwm',0,1,0,'^^\s+',''], 'xfwm5' => ['xfwm5? version',5,'--version','xfwm',0,1,0,'^^\s+',''], # unverified 'xmonad' => ['^xmonad',2,'--version','XMonad',0,1,0,'',''], @@ -34563,9 +34565,11 @@ sub set_gui { my ($b_wl,$working,@match,@temp); # desktops / wm (some wm also compositors) if ($show{'system'}){ - @temp=qw(razor-desktop razor-session lxsession lxqt-session - tdelauncher tdeinit_phase1); - push(@match,@temp); + # some desktops detect via ps as fallback + process_gui(\@{$ps_data{'desktop-ps'}},join('|', qw( + razor-desktop razor-session lxsession lxqt-session + tdelauncher tdeinit_phase1))); + @temp=qw(2bwm 3dwm 9wm afterstep aewm aewm\+\+ amiwm antiwm awesome blackbox bspwm calmwm catwm cde clfswm ctwm (openbsd-)?cwm dawn dusk dwm echinus evilwm fluxbox flwm flwm_topside @@ -34585,21 +34589,22 @@ sub set_gui { @temp=qw(budgie-wm compiz deepin-wm gala gnome-shell twin kwin_wayland kwin_x11 kwinft kwin marco deepin-metacity metacity metisse mir muffin deepin-mutter mutter - ukwm xfwm[45]?); + ukwm xfwm[345]?); push(@match,@temp); } # info: NOTE: glx-dock is cairo-dock if ($show{'system'} && $extra > 2){ process_gui(\@{$ps_data{'info-active'}},join('|', qw( - alltray awesomebar awn bar bemenu bmpanel bmpanel2 budgie-panel cairo-dock - dde-dock dmenu dockbarx docker docky dzen dzen2 fbpanel fspanel - glx-dock gnome-panel hpanel i3bar i3-status(-rs|-rust)? icewmtray - kdocker kicker latte latte-dock lemonbar ltpanel luastatus lxpanel lxqt-panel - matchbox-panel mate-panel nwg-bar nwg-dock nwg-panel ourico - perlpanel plank plasma-desktop plasma-netbook polybar pypanel - razor-panel razorqt-panel rootbar sfwbar stalonetray swaybar - taskbar tint2 trayer ukui-panel vala-panel wapanel waybar wbar wharf - wingpanel witray xfce[45]?-panel xmobar yambar yabar))); + albert alltray awesomebar awn bar bemenu bmpanel bmpanel2 budgie-panel + cairo-dock dde-dock dmenu(-wayland)? dockbarx docker docky dzen dzen2 + fbpanel fspanel fuzzel glx-dock gnome-panel hpanel + i3bar i3-status(-rs|-rust)? icewmtray kdocker kicker krunner ksmoothdock + latte lavalauncher latte-dock lemonbar ltpanel luastatus lxpanel lxqt-panel + matchbox-panel mate-panel mauncher nwg-(bar|dock|launchers|panel) ourico + perlpanel plank polybar pypanel razor(qt)?-panel rofi rootbar + sfwbar simplepanel sirula stalonetray swaybar taskbar tint2 tofi trayer + ukui-panel vala-panel wapanel waybar wbar wharf wingpanel witray wldash wofi + xfce[45]?-panel xmobar yambar yabar yofi))); # Generate tools: screensavers/lockers. Note that many lockers may not be services @{$ps_data{'tools-test'}}=qw(away boinc-screensaver budgie-screensaver cinnamon-screensaver gnome-screensaver gsd-screensaver-proxy gtklock i3lock @@ -34615,7 +34620,7 @@ sub set_gui { @temp=qw(3dwm budgie-wm cairo compiz compton cosmic-comp deepin-wm dcompmgr enlightenment gala gnome-shell kmscon kwin_wayland kwin_x11 kwinft kwin marco metisse mir moblin muffin mutter picom steamcompmgr surfaceflinger - ukwm unagi unity-system-compositor wayland xcompmgr xfwm[45]?); + ukwm unagi unity-system-compositor wayland xcompmgr xfwm[345]?); push(@match,@temp); $b_wl = 1; }