Linux system information tool

Tested with Debian, Fedora, Mint, Mageia, mxLinux, Neptune, Suse, Ubuntu, Sabayon, ZorinOS
Detects apt-get, yum, urpmi, equo and zypper
Runs in textmode or GUI
Supported GUI's are GTK2, GTK3 and QT
Creates easily parseable output for installers or other software






Here
is the linux software including the sourcecode. The binary of the latest version is included, so you can look at the source and try it and use it to develop your own installer / tool without having PureBasic installed.

The software is free to use for anybody under the
Creative Commons 4.0 license.




textmode parameter for the 'tell' command
all
show all available infos
ip
shows the IPv4 or IPv6 of this machine for the rest of the internet. This is done by calling the service defined by #SystemInfo_GetIPService

IPV4=
IPV6=
gtk2version
the installed GTK2 version
gtk3version
id
idlike
name
packagemanager
apt-get, urpmi, yum, equo or zypper
platformid
prettyname
qtversion
the output of qtdiag for the currently installed QT version
ubuntucodename
url
Homepage of this distribution
variantid
versionid


Usage examples are '
textmode tell all' or "textmode tell packagemanager". Check out the Linux Library installer for an example how to use this command in your own project. You can see the textmore version by typing "textmode version". If the software does'nt know the parameter, it is a version before 0.82 and you should update.

The informations are collected by parsing /etc/os-release, qtdiag output, dpkg -l libgtk, zypper (se -i -v gtk), urpmq, equo, glxinfo and probably a few more i forgot now ;) Just check textmode.pb.

While 'textmode' is supposed to work on as many possible linux distributions and installations as possible, the GTK / QT GUI versions require a lot more resources and dependancies to work. Basically the idea is that any installer or other software first calls textmode, to check the environment and afterwards launches a more complex GUI based software to eventually do anything the end-user will see.

As an example for the ability of
PureBasic to develop binary GUI versions for linux, i included the binaries for the gui version of SystemInfo for GTK (guiclient_gtk) and QT (guiclient_qt).