pfetch
Display system information and logo
TLDR
Display the ASCII art and default fields
Display only the ASCII art and color palette fields
Display all possible fields
Display a different username and hostname
Display without colors
SYNOPSIS
pfetch [options]
PARAMETERS
-h, --help
Displays the help message and exits.
-c, --color
Disables color output.
-i, --info
Disables the information output, showing only the logo.
-s, --small
Disables the ASCII art logo, showing a smaller text-only output.
-o, --os
Hides the OS logo, only printing the system information.
-m, --memory
Shows memory usage in megabytes (MB) instead of gibibytes (GiB).
-v, --version
Displays the pfetch version and exits.
-d <distro>, --distro <distro>
Forces a specific distribution logo to be displayed (e.g., arch, ubuntu).
-L <path>, --logo <path>
Specifies a custom ASCII art logo file to use.
-p <name>, --profile <name>
Loads a specific configuration profile from ~/.config/pfetch/profiles/.
-a <type>, --ascii <type>
Specifies the type of ASCII art to display (e.g., auto, none).
DESCRIPTION
pfetch is a command-line utility designed to display concise system information in a visually appealing format. It serves as a lightweight, pure Bash alternative to more feature-rich tools like neofetch or screenfetch.
Written entirely in Bash, pfetch aims for speed, minimal dependencies, and a small footprint, making it ideal for low-resource environments or users who prefer a quick overview without extensive customization. It presents key system details such as the operating system, kernel version, uptime, installed packages, shell, display resolution, desktop environment or window manager, CPU, GPU, and memory usage.
The output typically includes an ASCII art representation of the distribution's logo, which can be disabled or customized. Its design philosophy emphasizes simplicity and efficiency, providing essential system data with elegance.
CAVEATS
As a pure Bash script, pfetch relies heavily on standard Unix utilities and procfs/sysfs entries. While highly portable, this can sometimes lead to less precise or incomplete information compared to compiled binaries, especially if underlying system tools (like grep, awk, sed, lspci) are missing or behave non-standardly.
Its minimalist nature means fewer customization options compared to tools like neofetch.
CONFIGURATION AND CUSTOMIZATION
pfetch can be customized through environment variables which override default settings. For instance, PFETCH_BARS_ENABLE=0 would disable progress bars. While it doesn't have a complex configuration file like neofetch, users can create custom logo files and specify them with the -L option or define profiles in ~/.config/pfetch/profiles/ to quickly switch configurations.
HISTORY
pfetch emerged from the desire for a highly portable, extremely lightweight system information tool, contrasting with the increasing complexity of its predecessors like screenfetch and neofetch. It was primarily developed by dylanaraps, known for creating neofetch and other minimal Bash utilities.
Its development focused on stripping away non-essential features, relying solely on pure Bash and common system utilities to achieve maximum compatibility and minimal resource consumption. This philosophy resonates with users who prioritize speed and simplicity over extensive customization.
SEE ALSO
neofetch(1), screenfetch(1), lshw(8), lsb_release(1), uname(1)