eshell-info-banner will now default to duf if it is installed and
avaliable on the system, otherwise it will default to
platform-specific implementation.
All custom variables now have the package version in which they were
introduced specified.
This commit fixes a small typo in the documentation of
`eshell-info-banner--abbr-path'
Remove a leftover line used for debugging
This commit adds detection of the current OSX or macOS version.
It also adds support for non-standard Guix SD Linux distribution.
Windows OS detection is improved, with a separation of the name of the
version of Windows and its build number, the latter is treated as the
kernel version of Windows.
Memory detection and partition detection now relies of the operating
system detection of Emacs to know whether it can run or not. Also,
this is cleaning up a lot the function `eshell-info-banner', and I
think I will continue cleaning it up even more in the future.
Old one-line comments that used to separate parts of the file are now
on three lines, while one-line comments are a sort of subsection of
these new big sections.
Page breaks will make it easier to navigate the code source.
Variable `system-name' is obsolete and is replaced by a function with
the same name.
Add new custom variable eshell-info-banner-tramp-aware to configure
tramp awareness.
Fixes invalid (localhost) infos for hostname and os-relase when using
Eshell on remote hosts.
The Windows registry key "CurrentVersion" contains both "ProductName"
as well as "BuildLab" to identify the currently running Windows
variant.
As all returned `reg` lines are either values
name REG_<TYPE> value
or the list of subkeys, we can just use a regular expression to filter
the values from the input.
For a more generic variant, see Ashraz code on the Discord.
See also #4 for more progress on all OS detections.
Instead of filtering all lines for `PRETTY_LINE` and then replace the
line with only the quoted contents, `re-serach-forward` (or -backward)
provide a `match-*` interface. That way we can work solely inside the
buffer and return only the matching string part.
While `/etc/os-release` is usually available on Linux systems, it
might be missing on distribution that don't follow that convention.
For those distributions, the commands `hostnamectl` (from systemd) and
`lsb_release` might provide an alternative. Unfortunately, those
commands might also be missing as well as `/etc/os-release`, so the
newly introduced `eshell-info-banner--get-os-information` function
falls back to the string "Unknown" (and should never fail).
Fixes #1.