Linux Love Affair: Screenfetch vs. Neofetch – Who Wears the Crown?
Last Updated on January 1, 2024 by David Both
Image by: Opensource.com CC-by-SA 4
You might want to share your Linux configuration with others for many reasons. You might be looking for help troubleshooting a problem on your system, or maybe you’re so proud of the environment you’ve created that you want to showcase it to fellow open source enthusiasts.
You could get some of that information with a cat /proc/cpuinfo or lscpu command at the Bash prompt. But if you want to share more details, such as your operating system, kernel, uptime, shell environment, screen resolution, etc., you have two great tools to choose: screenFetch and Neofetch.
ScreenFetch
ScreenFetch is a Bash command-line utility that can produce a very nice screenshot of your system configuration and uptime. It is an easy way to share your system’s configuration with others in a colorful way.
It’s simple to install screenFetch for many Linux distributions. On Fedora, enter:
$ sudo dnf install screenfetch
On Ubuntu, enter:
$ sudo apt install screenfetch
For other operating systems, including FreeBSD, MacOS, and more, consult the screenFetch wiki’s installation page. Once screenFetch is installed, it can produce a detailed and colorful screenshot like this:
ScreenFetch also provides various command-line options to fine-tune your results. For example, screenfetch -v returns verbose output that presents each option line-by-line along with the display shown above. And screenfetch -n eliminates the operating system icon when it displays your system information.
Other options include screenfetch -N, which strips all color from the output; screenfetch -t, which truncates the output depending on the size of the terminal; and screenFetch -E, which suppresses errors. Be sure to check the man page on your system for other options. ScreenFetch is open source under the GPLv3, and you can learn more about the project in its GitHub repository.
Neofetch
Neofetch is another tool to create a screenshot with your system information. It is written in Bash 3.2 and is open source under the MIT License.
According to the project’s website, “Neofetch supports almost 150 different operating systems. From Linux to Windows, to more obscure operating systems like Minix, AIX, and Haiku.”
The project maintains a wiki with excellent installation documentation for various distributions and operating systems.
If you are on Fedora, RHEL, or CentOS, you can install Neofetch at the Bash prompt with:
$ sudo dnf install neofetch
On Ubuntu 17.10 and greater, you can use:
$ sudo apt install neofetch
On its first run, Neofetch writes a ~/.config/neofetch/config.conf file to your home directory (.config/config.conf), which enables you to customize and control every aspect of Neofetch’s output. For example, you can configure Neofetch to use the image, ASCII file, or wallpaper of your choice—or nothing at all. The config.conf file also makes it easy to share your customization with others.
If Neofetch doesn’t support your operating system or provide all the options you are looking for, be sure to open up an issue in the project’s GitHub repo.
Conclusion
No matter why you want to share your system configuration, screenFetch or Neofetch should enable you to do so. Do you know of another open source tool that provides this functionality on Linux? Please share your favorite in the comments.