Archey is a simple system information tool written in Python
The answer is here.
Note : Since the 21st September of 2017, you may notice that this repository no longer has the official status of fork.
Actually, the maintainer decided to separate it from the original one's "network" with the help of GitHub's staff.
Nevertheless, this piece of software is still a fork of djmelik's Archey project.
- python3
- lsb-release
- procps
Environments | Packages | Reasons | Notes |
---|---|---|---|
All | dnsutils net-tools |
WAN_IP and LAN_IP would be detected faster | They will provide dig and hostname |
Graphical | pciutils wmctrl |
GPU wouldn't be detected without it WindowManager would be more accurate |
pciutils will provide lspci |
Virtual | virt-what dmidecode |
Model would contain details about the hypervisor | archey will need to be run as root |
Without dnsutils
(or bind-tools
on Arch Linux), you'll need wget
in order to retrieve your public IP address.
First, grab a package for your distribution from the latest release here.
Now, it's time to use your favorite package manager. Some examples :
-
Arch-based distributions (source)
pacman -U ./archey4-v4.Y.Z-R-any.pkg.tar.xz
-
Debian-based distributions (source)
apt install ./archey4-v4.Y.Z-R-all.deb
-
RPM-based distributions, and others...
Packagers are welcome !
$ sudo pip3 install archey4
### Step 1 : Fetch the source ###
# If you want the latest release :
$ wget https://github.com/HorlogeSkynet/archey4/archive/v4.4.1.tar.gz
$ tar xvzf v4.4.1.tar.gz
$ cd archey4-4.4.1/
# _______________________________
# If you want the latest changes :
$ git clone https://github.com/HorlogeSkynet/archey4.git
$ cd archey4/
# _______________________________
### Step 2 : Installation ###
# If you have PIP installed on your system :
$ sudo pip3 install .
# So if one day you wanna uninstall Archey
$ sudo pip3 uninstall archey4
# _________________________________________
# But if you don't have PIP, no worries :
$ sudo cp archey/archey.py /usr/local/bin/archey
$ sudo chmod +x /usr/local/bin/archey
# _______________________________________
### Step 3 (Optional) : Configuration files
# System-wide configuration :
$ sudo mkdir /etc/archey4
$ sudo cp archey/config.json /etc/archey4/config.json
# ___________________________
# User-specific configuration :
$ mkdir ~/.config/archey4
$ cp archey/config.json ~/.config/archey4/config.json
# _____________________________
$ archey
or if you only want to try this out :
$ python3 archey/archey.py
Since the version 4.3.0, Archey 4 may be "tweaked" a bit with external configuration.
You can place a config.json
file in these locations :
/etc/archey4/config.json
(system preferences)~/.config/archey4/config.json
(user preferences)./config.json
(local preferences)
If an option is defined in multiple places, it will be overridden according to the order above (local preferences > user preferences > system preferences).
The example file provided in this repository lists exhaustively the parameters you can set.
Below, some further explanations of each option available :
{
// If set to `false`, configurations defined afterwards won't be loaded.
// Developers running Archey from the original project may keep in there the original `config.json` while having their own external configuration set elsewhere.
"allow_overriding": true,
// If set to `true`, any execution warning or error would be hidden.
// It may not apply to configuration parsing warnings.
"suppress_warnings": false,
"entries": {
// Set to `false` each entry you want to mask.
},
"colors_palette": {
// Set this option to `true` to display a beautiful colors palette.
// `false` by default for backward compatibility with non-Unicode locales.
"use_unicode": false
},
"default_strings": {
// Use this section to override default strings.
},
"ip_settings": {
// The maximum number of local addresses you want to display.
// `false` --> Unlimited.
"lan_ip_max_count": 2,
// `false` would make Archey displays only IPv4 WAN addresses.
"wan_ip_v6_support": true
},
"temperature": {
// The character to display between the temperature value and the unit (as '°' in 53.2°C).
// Set to ' ' (space) by default for backward compatibility with non-Unicode locales.
"char_before_unit": " ",
// Display temperature values in Fahrenheit instead of Celsius.
"use_fahrenheit": false
},
"timeout": {
// Some values you can adjust if the default ones look undersized for your system (seconds)
}
}
Tests are now available. Here is a short procedure to run them (you'll only need python3
) :
$ git clone https://github.com/HorlogeSkynet/archey4.git
$ cd archey4/
# If you have `setuptools` installed
$ python3 setup.py test
# But if you still don't, no worries !
$ python3 -m unittest
Any improvement would be appreciated.
-
If you run
archey
as root, the script will list the processes running by other users on your system in order to display the Window Manager & Desktop Environment outputs correctly. -
During the setup procedure, I advised you to copy this script into the
/usr/local/bin/
folder, you may want to check what it does beforehand. -
If you experience any trouble during the installation or usage, please do open an issue.
-
If you had to adapt the script to make it working with your system, please open a pull request so as to share your modifications with the rest of the world and participate in this project !