Skip to content

A system information tool written in Rust, similar to screenfetch. Displays beautifull ASCII art logo alongside your system information.

License

Notifications You must be signed in to change notification settings

dima-antonenko/rustfetch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RustFetch

A system information tool written in Rust, similar to screenfetch. Displays beautifull ASCII art logo alongside your system information.

Features

  • Displays Ubuntu ASCII art logo
  • Shows comprehensive system information:
    • OS and Kernel version
    • System uptime
    • Installed packages count
    • Shell information
    • Screen resolution
    • Desktop Environment
    • Window Manager
    • GTK Theme and Icon Theme
    • Font information
    • Disk usage
    • CPU details
    • GPU information
    • RAM usage

Installation

From Source

git clone https://github.com/dima-antonenko/rustfetch.git
cd rustfetch
cargo build --release
sudo cp target/release/rustfetch /usr/local/bin/

Using Cargo

cargo install --path .

Usage

Simply run:

rustfetch

Requirements

  • Rust 1.70 or later
  • Linux system (tested on Ubuntu/Debian)
  • Various system utilities (uname, xrandr, etc.)

Example Output

RustFetch Screenshot

Example text output:

                          ./+o+-       dima@notebook
                  yyyyy- -yyyyyy+      OS: Ubuntu 22.04 jammy
               ://+//////-yyyyyyo      Kernel: x86_64 Linux 6.8.0-85-generic
           .++ .:/++++++/-.+sss/`      Uptime: 11d 2h 15m
         .:++o:  /++++++++/:--:/-      Packages: 2242
        o:+o+:++.`..```.-/oo+++++/     Shell: bash 5.1.16
       .:+o:+o/.          `+sssoo+/    Resolution: 3840x2160
  .++/+:+oo+o:`             /sssooo.   DE: GNOME 41.7
 /+++//+:`oo+o               /::--:.   WM: Mutter
 \+/+o+++`o++o               ++////.   WM Theme: Adwaita
  .++.o+++oo+:`             /dddhhh.   GTK Theme: Yaru-viridian-dark [GTK2/3]
       .+.o+oo:.          `oddhhhh+    Icon Theme: Yaru-viridian
        \+.++o+o``-````.:ohdhhhhh+     Font: Ubuntu 10
         `:o+++ `ohhhhhhhhyo++os:      Disk: 386G / 1,2T (34%)
           .o:`.syhhhhhhh/.oo++o`      CPU: Intel Core i7-8750H @ 12x 4,1GHz
               /osyyyyyyo++ooo+++/     GPU: NVIDIA GeForce GTX 1050 Ti
                   ````` +oo+++o\:     RAM: 14725MiB / 31783MiB

How It Works

RustFetch collects system information from various sources:

  • /proc/ filesystem for kernel, CPU, RAM, and uptime information
  • Environment variables for user, shell, and desktop environment
  • System commands like uname, xrandr, lspci, etc.
  • Configuration files like /etc/os-release and /etc/hostname
  • Package manager commands (dpkg, pacman) for package counts

Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Inspired by screenfetch
  • Written in Rust for performance and safety

Author

Dmitry Antonenko

About

A system information tool written in Rust, similar to screenfetch. Displays beautifull ASCII art logo alongside your system information.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages