Screenfetch

Jarret B

Well-Known Member
Staff member
Joined
May 22, 2017
Messages
340
Reaction score
367
Credits
11,754
Sometimes you may need some information about the system you are currently using. Whether it is your system or one that belongs to someone else, you may not want to spend a lot of time snooping around the System Info or some such program.

The Screenfetch application uses about 1,325 KB of space and makes an easy way to find the information you need.

Requirements

Before we install the application, let's see what systems it will operate on for you.

Once installed on the system, you can get some great help information that will help you find this, but for now, the distros it functions on are:

  • ALDOS
  • Alpine Linux
  • Alter Linux
  • Amazon Linux
  • Antergos
  • Arch Linux (Old and Current Logos)
  • Arch Linux 32
  • ArcoLinu
  • Artix Linux
  • blackPanther OS
  • BLAG
  • BunsenLabs
  • CentOS
  • Chakra
  • Chapeau
  • Chrome OS
  • Chromium OS
  • CrunchBang
  • CRUX
  • Debian
  • Deepin
  • DesaOS
  • Devuan
  • Dragora
  • DraugerOS
  • elementary OS
  • EuroLinux
  • Evolve OS
  • Sulin
  • Exherbo
  • Fedora (Old and Current Logos)
  • Frugalware
  • Fuduntu
  • Funtoo
  • Fux
  • Gentoo
  • gNewSense
  • Guix System
  • Hyperbola GNU/Linux-libre
  • januslinux
  • Jiyuu Linux
  • Kali Linux
  • KaOS
  • KDE neon
  • Kogaion
  • Korora
  • LinuxDeepin
  • Linux Mint
  • LMDE
  • Logos
  • Mageia
  • Mandriva/Mandrake
  • Manjaro
  • Mer
  • Netrunner
  • NixOS
  • OBRevenge
  • openSUSE
  • OS Elbrus
  • Oracle Linux
  • Parabola
  • GNU/Linux-libre
  • Pardus
  • Parrot Security
  • PCLinuxOS
  • PeppermintOS
  • Proxmox VE
  • PureOS
  • Qubes OS
  • Raspbian
  • Red Hat Enterprise Linux
  • ROSA
  • Sabayon
  • SailfishOS
  • Scientific Linux
  • Siduction
  • Slackware
  • Solus
  • Source Mage
  • GNU/Linu
  • SparkyLinux
  • SteamOS
  • SUSE Linux Enterprise
  • SwagArch
  • TeArch
  • TinyCore
  • Trisquel
  • Ubuntu
  • Viperr
  • Void
  • Zorin OS
  • EndeavourOS
This seems quite an extensive list. Make sure you have one of these, and if not, try it anyway. You never know, it may still work.

Installation

Now, you can sometimes install the program from the repository, such as on Ubuntu:

sudo apt install screenfetch

But, let’s go over the method that will work for all distros.

Follow the following in a terminal:

cd ~/Downloads
mkdir tmp
cd tmp
wget https://github.com/KittyKatt/screenFetch/archive/master.zip
unzip master.zip


You should now have a folder named 'screenFetch.master'. Now, we need to move the file where it needs to be, rename it, and make it executable:

sudo mv screenFetch-master/screenfetch-dev /usr/bin/
cd /usr/bin
sudo mv screenfetch-dev screenfetch
chmod 755 screenfetch


All we need to do is run the command 'screenfetch' from a terminal. The output will look similar to Figure 1.

Figure 1.JPG

FIGURE 1

The first part of the output is based on the Operating System (OS). Here, you can see the username and hostname (jarret@Tester). The OS is Ubuntu 22.04 jammy with the running kernel version (5.15.0-52-generic). You’ll see that the system has been running for 1 hour and 40 minutes. The OS has 1700 packages installed. BASH version 5.1.16is running on the system. The screen resolution is 1920x975. I'm running Gnome 41.7. Mutter is the Window Manager with the Adwaita theme. The GTK Theme and Icon Theme are Yaru. The system Font is Ubuntu 11.

The next portion contains more information on the system hardware. It showed disk Usage and Max Disk Space (9.9G/25G). The CPU is an Intel Core i3-10100 running at 3.6GHz. The GPU is a VMWare SVGA II (yes; you caught me, I'm in VirtualBox). It lists the RAM Usage and Max RAM (970MB/1976MB).

You can also notice from Figure 1 that the output includes the logo of the Linux OS distro. Some distros do not have a logo, so it shows the logo of a penguin.

Looking at Figure 2, you can see a 'screenfetch' capture from another system running Linux Mint.

Figure 2.jpg

FIGURE 2

Parameters


It shows the default output in Figure 1 and Figure 2. There are 19 parameters that can change the output or specify a different output.

The parameters are:

  • -h, --help prints out help information
  • -V, --version screenfetch program version
  • -v verbose output
  • -o 'options' Allows you to set script variables by using 'OPTION1="OPTIONARG1";OPTION2="OPTIONARG2"'
  • -d '+var;-var;var' Allows for setting what information it displays on the command line. You can add displays with +var,var. You can delete displays with -var,var. Setting without + or – will set display to that explicit combination. Add and delete statements may be used in conjunction by placing a ; between them as so:
    • +var,var,var;-var,var. See above to find supported display names.
  • -n Do not display the ASCII distribution logo.
  • -L Display ASCII distribution logo only.
  • -N Strip all color from output.
  • -w Wrap long lines.
  • -t Truncate output based on terminal width (Experimental!).
  • -p Portrait output.
  • -s [-u IMGHOST] Using this flag tells the script that you want it to take a screenshot. Use the -u flag if you would like to upload the screenshots to one of the pre-configured locations. These include: teknik, imgur, mediacrush and hmp.
  • -c string You may change the outputted colors with -c. The format is: [0-9][0-9],[0-9][0-9]. Notice that the first argument controls the ASCII logo colors and the label colors. The second argument controls the colors of the information found. We may use one argument without the other. For terminals supporting 256 colors argument may also contain other terminal control codes for bold, underline etc. separated by semicolon. For example -c "4;1,1;2" will produce bold blue and dim red.
  • -a 'PATH' You can specify a custom ASCII art by passing the path to a Bash script, defining `startline` and `fulloutput` variables, and optionally `labelcolor` and `textcolor`. See the `asciiText` function in the source code for more information on the variables format.
  • -S 'COMMAND' Here you can specify a custom screenshot command for the script to execute. Surrounding quotes are required.
  • -D 'DISTRO' Here, you can specify your distribution for the script to use. Surrounding quotes are required.
  • -A 'DISTRO' Here you can specify the distribution art that you want displayed. This is for when you want your distro detected but want to display a different logo.
  • -E Suppress output of errors.
  • -C Add custom (extra) lines.
    For example:
    screenfetch -C 'IP WAN=192.168.0.12,IP BRIDGED=10.1.1.10'
    ... will add two extra lines:
    IP WAN: 192.168.0.12
    IP BRIDGED: 10.1.1.10
Conlusion

The 'screenfetch' program can be a very useful tool to find specifics on a system.

Keep this tool in mind when you need to find on any system and remember that you direct the output to a file to save.
 


I realize this is still in staging but the Google result for 'screenfetch vs neofetch' heads to linux-tips.us. :p
 
Sometimes you may need some information about the system you are currently using. Whether it is your system or one that belongs to someone else, you may not want to spend a lot of time snooping around the System Info or some such program.

The Screenfetch application uses about 1,325 KB of space and makes an easy way to find the information you need.

Requirements

Before we install the application, let's see what systems it will operate on for you.

Once installed on the system, you can get some great help information that will help you find this, but for now, the distros it functions on are:

  • ALDOS
  • Alpine Linux
  • Alter Linux
  • Amazon Linux
  • Antergos
  • Arch Linux (Old and Current Logos)
  • Arch Linux 32
  • ArcoLinu
  • Artix Linux
  • blackPanther OS
  • BLAG
  • BunsenLabs
  • CentOS
  • Chakra
  • Chapeau
  • Chrome OS
  • Chromium OS
  • CrunchBang
  • CRUX
  • Debian
  • Deepin
  • DesaOS
  • Devuan
  • Dragora
  • DraugerOS
  • elementary OS
  • EuroLinux
  • Evolve OS
  • Sulin
  • Exherbo
  • Fedora (Old and Current Logos)
  • Frugalware
  • Fuduntu
  • Funtoo
  • Fux
  • Gentoo
  • gNewSense
  • Guix System
  • Hyperbola GNU/Linux-libre
  • januslinux
  • Jiyuu Linux
  • Kali Linux
  • KaOS
  • KDE neon
  • Kogaion
  • Korora
  • LinuxDeepin
  • Linux Mint
  • LMDE
  • Logos
  • Mageia
  • Mandriva/Mandrake
  • Manjaro
  • Mer
  • Netrunner
  • NixOS
  • OBRevenge
  • openSUSE
  • OS Elbrus
  • Oracle Linux
  • Parabola
  • GNU/Linux-libre
  • Pardus
  • Parrot Security
  • PCLinuxOS
  • PeppermintOS
  • Proxmox VE
  • PureOS
  • Qubes OS
  • Raspbian
  • Red Hat Enterprise Linux
  • ROSA
  • Sabayon
  • SailfishOS
  • Scientific Linux
  • Siduction
  • Slackware
  • Solus
  • Source Mage
  • GNU/Linu
  • SparkyLinux
  • SteamOS
  • SUSE Linux Enterprise
  • SwagArch
  • TeArch
  • TinyCore
  • Trisquel
  • Ubuntu
  • Viperr
  • Void
  • Zorin OS
  • EndeavourOS
This seems quite an extensive list. Make sure you have one of these, and if not, try it anyway. You never know, it may still work.

Installation

Now, you can sometimes install the program from the repository, such as on Ubuntu:

sudo apt install screenfetch

But, let’s go over the method that will work for all distros.

Follow the following in a terminal:

cd ~/Downloads
mkdir tmp
cd tmp
wget https://github.com/KittyKatt/screenFetch/archive/master.zip
unzip master.zip


You should now have a folder named 'screenFetch.master'. Now, we need to move the file where it needs to be, rename it, and make it executable:

sudo mv screenFetch-master/screenfetch-dev /usr/bin/
cd /usr/bin
sudo mv screenfetch-dev screenfetch
chmod 755 screenfetch


All we need to do is run the command 'screenfetch' from a terminal. The output will look similar to Figure 1.

View attachment 13937
FIGURE 1

The first part of the output is based on the Operating System (OS). Here, you can see the username and hostname (jarret@Tester). The OS is Ubuntu 22.04 jammy with the running kernel version (5.15.0-52-generic). You’ll see that the system has been running for 1 hour and 40 minutes. The OS has 1700 packages installed. BASH version 5.1.16is running on the system. The screen resolution is 1920x975. I'm running Gnome 41.7. Mutter is the Window Manager with the Adwaita theme. The GTK Theme and Icon Theme are Yaru. The system Font is Ubuntu 11.

The next portion contains more information on the system hardware. It showed disk Usage and Max Disk Space (9.9G/25G). The CPU is an Intel Core i3-10100 running at 3.6GHz. The GPU is a VMWare SVGA II (yes; you caught me, I'm in VirtualBox). It lists the RAM Usage and Max RAM (970MB/1976MB).

You can also notice from Figure 1 that the output includes the logo of the Linux OS distro. Some distros do not have a logo, so it shows the logo of a penguin.

Looking at Figure 2, you can see a 'screenfetch' capture from another system running Linux Mint.

View attachment 13938
FIGURE 2

Parameters


It shows the default output in Figure 1 and Figure 2. There are 19 parameters that can change the output or specify a different output.

The parameters are:

  • -h, --help prints out help information
  • -V, --version screenfetch program version
  • -v verbose output
  • -o 'options' Allows you to set script variables by using 'OPTION1="OPTIONARG1";OPTION2="OPTIONARG2"'
  • -d '+var;-var;var' Allows for setting what information it displays on the command line. You can add displays with +var,var. You can delete displays with -var,var. Setting without + or – will set display to that explicit combination. Add and delete statements may be used in conjunction by placing a ; between them as so:
    • +var,var,var;-var,var. See above to find supported display names.
  • -n Do not display the ASCII distribution logo.
  • -L Display ASCII distribution logo only.
  • -N Strip all color from output.
  • -w Wrap long lines.
  • -t Truncate output based on terminal width (Experimental!).
  • -p Portrait output.
  • -s [-u IMGHOST] Using this flag tells the script that you want it to take a screenshot. Use the -u flag if you would like to upload the screenshots to one of the pre-configured locations. These include: teknik, imgur, mediacrush and hmp.
  • -c string You may change the outputted colors with -c. The format is: [0-9][0-9],[0-9][0-9]. Notice that the first argument controls the ASCII logo colors and the label colors. The second argument controls the colors of the information found. We may use one argument without the other. For terminals supporting 256 colors argument may also contain other terminal control codes for bold, underline etc. separated by semicolon. For example -c "4;1,1;2" will produce bold blue and dim red.
  • -a 'PATH' You can specify a custom ASCII art by passing the path to a Bash script, defining `startline` and `fulloutput` variables, and optionally `labelcolor` and `textcolor`. See the `asciiText` function in the source code for more information on the variables format.
  • -S 'COMMAND' Here you can specify a custom screenshot command for the script to execute. Surrounding quotes are required.
  • -D 'DISTRO' Here, you can specify your distribution for the script to use. Surrounding quotes are required.
  • -A 'DISTRO' Here you can specify the distribution art that you want displayed. This is for when you want your distro detected but want to display a different logo.
  • -E Suppress output of errors.
  • -C Add custom (extra) lines.
    For example:
    screenfetch -C 'IP WAN=192.168.0.12,IP BRIDGED=10.1.1.10'
    ... will add two extra lines:
    IP WAN: 192.168.0.12
    IP BRIDGED: 10.1.1.10
Conlusion

The 'screenfetch' program can be a very useful tool to find specifics on a system.

Keep this tool in mind when you need to find on any system and remember that you direct the output to a file to save.
@Jarret B
Thanks a bunch. Just what I have been wanting.
OG TC
 

Staff online

Members online


Top