summaryrefslogtreecommitdiffstats
path: root/inxi.changelog
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2025-01-14 07:09:32 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2025-01-14 07:09:32 -0500
commit4d80aa82167fdef4cb54a02c1e75f0ee19ebb540 (patch)
treef38df2d108db869d2e5de882d5e676754c338bcf /inxi.changelog
parentb35054355994cae0ce0561b80df38217b65397d5 (diff)
New upstream version 3.3.37-1.upstream/3.3.37-1
Diffstat (limited to 'inxi.changelog')
-rw-r--r--inxi.changelog356
1 files changed, 356 insertions, 0 deletions
diff --git a/inxi.changelog b/inxi.changelog
index 9022a79..33a352a 100644
--- a/inxi.changelog
+++ b/inxi.changelog
@@ -1,4 +1,360 @@
================================================================================
+Version: 3.3.37
+Patch: 00
+Date: 2025-01-06
+--------------------------------------------------------------------------------
+RELEASE NOTES:
+--------------------------------------------------------------------------------
+
+* This release is highlighted by a long overdue rewrite of the -b, -e, and -v[x]
+man page and help options. And changing the long incorrect -F/--full to
+-e/--expanded, which is more accurate. -e expands -b, that is, but is not full.
+-v8 is full. -F/--full will keep working until this inxi is in the stable repos
+of the major distros.
+
+That change turned out to be surprisingly hard, but those options are now much
+more clear and well defined. Some of the actions have not been valid for many
+years, but escaped notice.
+
+This also makes the report generator options -b, -e, and -v [x] all make sense,
+and easily reference each other in the docs. And keeps them consistent by them
+all be lower case options. Upper case is intended mainly for feature item
+triggers.
+
+* Packagers: I reluctantly created and added the AppStream XML file:
+inxi.metainfo.xml
+so that GUI package managers that can't get package data from the packages can
+manage to show inxi. Do I care? No, but sometimes not everything in inxi is
+stuff I care about.
+
+https://freedesktop.org/software/appstream/docs/chap-Metadata.html
+"Upstream projects can ship one or more metainfo files in
+/usr/share/metainfo/%{id}.metainfo.xml, where id is a unique identifier of this
+specific component."
+
+The ID must be exactly the same as the Application-ID: org.smxi.inxi (but many
+of the file names I checked don't, so that could just be specific to certain
+package collector tools like flatpak).
+
+Translation: the inxi.metainfo.xml file must be stored here:
+/usr/share/metainfo/org.smxi.inxi.metainfo.xml
+
+Note that these are not enforced standards, and a quick look in that directory
+shows many don't follow the file naming convention. So do what you want. And
+most applications do not ship this file, for good reason: it's a waste of time.
+
+* Another longstanding mrmazda graphics enhancement request, handling scaling
+per monitor. Adding this exposed some failures in wayland-info, and false
+assumptions in xrandr parsing. Now with -Gxxx shows current mode, scaling, and
+if scaling not 1, the scaled monitor display size.
+
+--------------------------------------------------------------------------------
+SPECIAL THANKS:
+
+1. Codeberg issue #311 poster jkirk for doggedly noting that the use of the word
+'full' as an option and man/help term for -F/--full was confusing and wrong.
+It's other eyes that can see what my eyes are too used to, and have ignored for
+years. See Changes 1 for -e/--expanded solution.
+
+2. mrmazda, for his continuing thoughts and suggestions to make Graphics and
+System better, and more helpful to support people such as him. Also for finding
+that obscure and arcane eglinfo hang issue
+
+--------------------------------------------------------------------------------
+KNOWN ISSUES:
+
+1a. GRAPHICS: StarFive VisionFive 2 apparently uses the Imagination BXE GPU,
+maybe img-bxe, but that does not show up in any of the pci or device data for
+the soc. Result is -G and -A show no device even though there is an HDMI GPU and
+MIPI graphics. This may show in a future kernel however.
+
+1b. GRAPHICS: Very old Intel Pentium 4 and gen-2 GPU system intermittently fails
+to fully execute eglinfo. Since this combination is largely useless, inxi now
+detects those Gen 2 and earlier Intel GPU product IDs and skips running eglinfo
+and shows message.
+
+2. SYSTEM: KernelCompiler: the tendency to add in more gibberish nonsense to the
+old and clean and simple /proc/version continues unabated, almost like a
+competition between distros who can make the silliest strings. Last year's
+winner if I remember right was Ubuntu, but Redhat is not to be outdone with
+their 2024 contribution!
+
+3. DISTRO PACKAGING: thanks mrmazda for spotting what appears to be an OpenSuse
+packaging bug, which inxi can't fix or work around. It's likely this is also in
+RHEL and related, but I don't know:
+* The core modules package which has been incorrectly split out from Perl for
+File::Find spits out an 'uninitalized value $space in concatenation in pinxi
+line 1620 is actually File::Find->import action exposing the undefined value.
+This does not happen in current Debian Testing, or any other distro I've tested
+on.
+* There may be a second issue with eglinfo, but there is simply not enough data
+to pinpoint causes.
+
+--------------------------------------------------------------------------------
+BUGS:
+
+1. PackageData: didn't have option for OpenBSD pkg_info, which made inxi skip
+that package counter, and show no packages. Ooops. Switched to use -a, for all
+non system package. Could use -A to include system packages,but I think pkg_add
+implies you added them outside of core base.
+
+2a. GRAPHICS: not so much a bug as a syntax change in wayland-info led to some
+data not being grabbed, but it would not have worked anyway due to more wrong
+assumptions. xrandr also had an assumption about what the 'connected' value was
+that was not right.
+
+2b. GraphicsItem::wlinfo_data(): unset monitor data in active, not fake data,
+logic, which resulted in removing the EDID data. Ooops.
+
+--------------------------------------------------------------------------------
+FIXES:
+
+1. SYSTEM: KernelCompiler: issue 310 adds another convoluted /proc/version
+syntax, these seem to be coming along every year now. Let's hope the kernel guys
+create a /sys kernel compiler directory with key value pairs for this absurd
+jumble of data that is being tossed into /proc/version string.
+
+Note that these types of random new strings will never be called bugs when they
+fail, but they do require fixing, at least until we get a better data source for
+the kernel compiler data.
+
+2. OPTIONS: See Changes 1. Changed -F/--full to -e/--expanded to more accurately
+reflect what -e actually does. -F/--full will work for a long time however since
+many online inxi dots suggest that option. First step will be deprecation
+notice, then eventually removal. But not for a few years, until this inxi is in
+stable repo pools.
+
+3a. GRAPHICS: GraphicsItem::wlinfo_data() had a subtle failure because
+wayland-info used random numbers of spaces in one key string. Amusingly, the
+comments above that said to expect the data to alter, which it did. This caused
+the resolution to show the logical, scaled, not the actual physical, as
+intended.
+
+3b. GRAPHICS: GraphicsItem::xrandr_data() had a false assumption about what the
+dimensions following 'connected' were. Those turned out to the logical monitor
+size, not the modes. This was not obvious until scaling became used more. Now
+uses the actual current mode from the mode list, which is what we want, and
+uses the logical size to create the scaling data.
+
+3c. GRAPHICS: GraphicsItem::swaymsg_data(): fixed hz for non json version, that
+would never work due to logic vs data error.
+
+3d. GRAPHICS: EGL API tool eglinfo hangs on some very old Intel GPUs, so added
+a blacklist which skips running tool unless --egl flag is also used to force it.
+
+4. UPDATER: Fixed error which made --no-man for -U on inxi not work.
+
+--------------------------------------------------------------------------------
+ENHANCEMENTS:
+
+1a. GRAPHICS: X Driver detections. Added, per:
+https://lwn.net/Articles/558104/
+Some more possible fb and drm drivers: vesafb, efifb, simplefb, and simpledrm.
+
+1b. GRAPHICS: rolled out first attempt to have real scaling data per monitor.
+This uses the logical size, aka, the scaled size, and the actual active mode
+resolution, to generate the scaling factor.
+
+There had been a weak effort for wayland to do this, but the way wayland does
+scaling is weird, so it's better to show the actual factor. I don't know the
+status of the wayland scaling issues, but they used a real convoluted hack of
+wayland only doing integer scaling, which forced compositors to up the integer
+then divide it by something to get the desired fractional scaling. So that data
+in inxi had always been wrong, though it's still being captured and stored
+internally in case I can ever think of something useful to use it for.
+
+If a positive scaling is calculated with logical and physical, -Gxxx will show
+that information. If scaling != 1, also showed scaled dimensions.
+
+For scaled (wayland):
+res:
+ mode: 1680x1050
+ scale: 125% (1.25)
+ to: 1344x840
+hz: 60
+
+For scaled (xrandr):
+res:
+ mode: 1680x1050
+ scale: 125% (0.8)
+ to: 1344x840
+hz: 60
+
+For scaling == 1:
+res:
+ mode: 1680x1050
+ scale: 100% (1)
+hz: 60
+
+If no scaling data found, or if less than -Gxxx:
+
+res: 1680x1050
+
+As far as I can tell, x11 Screen size is always scaled size.
+
+1c. GRAPHICS: -Ga now adds an Info: Tools: line, similar to what -n, -S, -I have
+for services and tools. Shows detected (mostly) display control/info command
+line tools from the following categories:
+* api
+* de (desktop environment)
+* gpu
+* wl (wayland)
+* x11
+
+1d. GRAPHICS: updated amd, intel, nvidia ids.
+
+2. SYSTEM: added hypridle to locker list, not sure how I missed that one.
+
+3. INFO: Added conemu, contour, dolphin, ghostty, mintty, phyxis, rio, warp to
+start client white list. These are all terminals except dolphin, which is like
+kate, has the embedded kde terminal.
+
+4. DRIVES: A few new disk vendors and IDs. Surprisingly few actually.
+
+5. CPU: A few new AMD cpu model IDs.
+
+--------------------------------------------------------------------------------
+CHANGES:
+
+1a. MAN/OPTIONS: going with 1b, changed -F to -e. -F will keep on working for a
+long time, but the report shortcuts -b and -v are already lower case, so no
+reason to continue with the use of the legacy -F for full when it hasn't been
+full for ages. Also, it's nice to be consistent and keep all these lower case.
+
+1b. MAN/OPTIONS: removed reference to --full/-F for -e, though it will of course
+keep working. Technically --full should be a synonym for -v8, since that's the
+full system report. After deprecating -F/--full on a future release, it will be
+removed since it's not accurate, and can confuse people. But that will be in the
+distant future given how many resources suggest -F, or, shudder, --full.
+
+This came about because a long time ago, -F actually did trip all the upper case
+options, and only upper case. That however stopped being the case probably 10
+or more years ago, but the old full connotation for -F remained, and I foolishly
+maintained it when I did the perl inxi rewrite. That would have been the time to
+change it, but I was busy with the rewrite and it didn't register enough.
+
+2a. GRAPHICS: if -xxx and monitor scaling detectable shows if not scaling 1:
+ res: mode: widthxheight scale: 80% (0.8) to: widthxheight
+If scaling 1, just shows:
+ res: mode: widthxheight scale: 100% (1)
+
+So far scaling can only be detected with xrandr, swaymsg, wayland-info,
+wlr-randr, and maybe weston-info. This translates the real terms used internally
+by x11 and wayland.
+
+This is a change from res: widthxheight.
+
+2b. GRAPHICS: To show hz, now shows with -Gxx, not -Gxxx, it never made sense to
+treat the resolution and frequency as different verbosity levels.
+
+2c. GRAPHICS: For GPU arch: data, I stopped trying to use the convoluted post
+Intel Gen11 architecture, and switched to the basic less granular arch that
+Intel's own product ID docs use. Like Xe, Xe2, Xee-LPG, Xe-HPC, Xe-HPG.
+
+--------------------------------------------------------------------------------
+DOCUMENTATION:
+
+1a. MAN/OPTIONS: changed -F/--full to -e/--expanded. And changed wording,
+removed Full, which was wrong, it's not full. It used to be a long time ago, but
+hasn't been for a long time, which caused confusion. -F/--full will still work,
+but will not be shown anymore as the first step towards deprecation then
+removal.
+
+Also added deprecated pointer to -e/--expanded for -F/--full so users can find
+that easily.
+
+Also changed -b to reference -e for expanded output, and -e to point to -b for
+basic output. -b and -e are basically related, which was not obvious before.
+-e for example expands the minimalist CPU line of -b to the full -C CPU line,
+and expands block devices Drives to -D and -P. And expands multimedia from -G to
+-G and -A. And expands -b's -N to -n.
+
+1b. MAN/OPTIONS: Refactored -b, -e, and -v completely. There were some legacy
+items in -v that were not applicable anymore, or just plain wrong. It might be
+worth checking to see if the simple forms of -d still are in the code. The -h
+also had for -v 2 short RAID form, but I don't think that ever existed.
+
+These are all now much more readable and clear, and list items in the order they
+appear in the output as they are added.
+
+Also, -b and -e now point to each much more clearly, and -e notes where the
+items have been expanded from -b.
+
+-b, -e, and -v are also now the same format and structure in man and options.
+
+1c. MAN/OPTIONS: Going along with the other 1 changes, I replaced the word
+'output' in man and help where it refers to a report. That word was being
+overused to refer to 3 different things. Now reports are reports, output is
+output.
+
+1d. MAN/OPTIONS: Updated -G items for resolution changes.
+
+1e. MAN/OPTIONS: Added -Ga Info: Tools: feature.
+
+1f. MAN/OPTIONS: Added more missing force items. Fully redid these to make them
+complete, which went along with making the internal use of them more consistent.
+
+2. DATA: Added nice wayland-info sample.
+
+3a. DOCS: docs/inxi-graphics.txt: added section for resolution/modes/scaling
+because its' confusing and hard to explain.
+
+3b. DOCS: docs/inxi-graphics.txt: added DISPLAY TOOLS section to docuement the
+various tools I found for the new -Ga Info: Tools feature.
+
+--------------------------------------------------------------------------------
+CODE:
+
+1. OPTIONS: There's some legacy use of $show{'optical-basic'} and
+$show{'raid-basic'} which the man/options refactor exposed. Neither actually
+does anything anymore. I may check legacy binxi to see if I can find what they
+used to do.
+
+-b/-v2 trip $show{'raid-basic'}, and -v5 tripped $show{'optical-basic'}.
+
+2. Added basic inxi.metainfo.xml to close issue #312. I was 99% certain that
+when I told the issue poster he needed to do the research and work and provide
+the xml required (because I don't care) that he would not do it. And he did not
+let me down, as expected, he didn't do it. It's sad when things are that
+predictable. So I did the research for the thing I don't care about, for gui
+software installers I never use, and which have nothing to do with inxi.
+
+3a. GRAPHICS: corrected false assumptions about what monitor resolution vs
+mode values are, which also exposed other bugs and errors in parsing for both
+x11 and wayland.
+
+3b. GRAPHICS: added --force swaymsg, wl-info, wlr-randr switches, to allow for
+testing each item, or for using fake data for one of them.
+
+3c. GRAPHICS: Rearranged some subs, and added better section comment headers
+to make the logic blocks more obvious. Graphics, like CPU, is very long.
+
+3d. GRAPHICS: Added --force no-egl, no-opengl, no-graphics-api, no-vulkan
+switches. We've found some legacy systems where eglinfo hangs.
+
+4. main::clean_unset(): added null to cleaner.
+
+5. DEBUG: changed minimum width for --debug-y to 50, from 80.
+
+6a. TOOLS: pinxi/tools/gpu_raw.pl, gpu_ids.pl: Changed the Intel architecture
+names to what they use in their docs, that gives up on trying to assign them
+generation numbers after 11.
+
+6b. TOOLS: pinxi/tools/gpu_raw.pl: changed to aadjust to possible extra columns
+in the gpu.intel.com data source, they have added 1 column to most rows, and 2
+to some, so now it just looks for anything after 5 with .*.
+
+7. INTERNAL: switched $use{'no-ssl'} and $use{'no-man'} to $force, it was not
+consistent, just use --force for all the --no-xxx options. This goes along with
+adding more force switches and shortcuts.
+
+8. INFO: Going with enhancement 3, redid the white list regex for terminals,
+there were a bunch of [xx]tty type names.
+
+--------------------------------------------------------------------------------
+-- Harald Hope - Mon, 6 Jan 2025 12:15:07 -0700
+
+================================================================================
Version: 3.3.36
Patch: 00
Date: 2024-09-04