Awesome
<div align="center"> <h1> zeitfetch 📸 </h1>Instantaneous snapshots of system information <br /> Linux • macOS • Windows <br />
</div>
About
zeitfetch is a neofetch implementation in Rust aiming to be near instantaneous, with the least amount of dependencies possible.
Considering the shortage of fully cross platform screenfetch solutions (including Windows shells) this crate aims to fill that gap.
Several distros are currently supported, with more on the way. There has been a slew of Open Source contributions toward this effort as well. See the Contribution section if you're interested!
If your Linux distribution is not listed/not being actively tested on, most likely it will be missing a dedicated OS logo, so an ASCII rendition of Tux will be displayed instead.
Features
Fully cross platform compatible with Windows, macOS, and most Linux distros.
Customizable output. Choose between:
- full info + logo (default, similar to neofetch)
- no-logo
- logo-only
- minimal
- custom logo (coming soon)
Installation
Using Cargo
With Cargo installed, run:
cargo install zeitfetch
Using Homebrew
On macOS, zeitfetch can also be installed via brew:
brew tap nidnogg/zeitfetch && brew install zeitfetch
Fedora
Available on Fedora 41+ stable repositories, zeitfetch can also be installed via dnf, via the rust-zeitfetch
package:
sudo dnf update
sudo dnf install rust-zeitfetch
Usage
Just run:
zeitfetch
If you want to customize the output a bit, some options are listed below:
zeitfetch --no-logo # omits logo
zeitfetch --logo-only # omits sys info text
zeitfetch --minimal # display logo + user prompt vertically
If you're unsure of what to use, run:
zeitfetch --help
# alternatively,
zeitfetch -h
Note for running on terminal boot
Some people like to run fetch programs as soon as any terminal tab is open (e.g: from within .bashrc
).
For this, within Operating Systems other than macOS, Rust binaries have to be reloaded to the PATH environment variables before running the desired command. When editing out a .bashrc
, .zshrc
file or whichever is available, adding the following line before zeitfetch will ensure that it works correctly:
export PATH="$HOME/.cargo/bin:$PATH"
Contribution
If you feel like contributing to zeitfetch, feel free to fork it and open up a PR. Any merges will be checked for cargo fmt
and cargo clippy
.
So, before pushing changes to your branch, make sure you run:
# For checking formatting
cargo fmt --all --
# For linting
cargo clippy
To run the development environment, make sure you have both Rust and Cargo installed. After that, in the root directory, run:
cargo run
Current priorities list:
- More distro ASCII Art in hex escape code format;
- Variable color configs for bolded text sections;
- Some refactoring here and there.
Disclaimer for ASCII logos
Most of the ASCII art from zeitfetch is not originally made by me, only slightly modified here and there. All of the respective credit for them is listed below:
OS | Author | Source |
---|---|---|
Debian | dylanaraps | neofetch |
Ubuntu | KittyKatt | screenfetch |
Fedora | likw1dus | pagure.io |
Arch | trizen | wiki.archlinux.org (alsi) |
Void | Xaidee | original design using neofetch as a reference |
MacOS | shelldandy | neofetch PR |
Windows 11 | kiedtl | winfetch |
Windows 10 | HotDog640 | neofetch PR |
Linux | Joan Stark (jgs) | Wikipedia |
If any artists feel like this is an issue in particular, please feel free to drop me an email @ henriquevt98@gmail.com and I'll remove any infringing works ASAP.
Latest Updates
Check out the release notes!