/macchina

A system information fetcher, with an emphasis on performance and minimalism.

Primary LanguageRustMIT LicenseMIT

Macchina

Fast, minimal and customizable system information fetcher.

Linux • macOS • Windows • NetBSD • OpenWrt • Android

Preview Version Downloads Say Thanks

Table of Contents


About Macchina

Macchina lets you view basic system information, like your hostname, kernel, uptime, memory usage, and much more. It provides you with convenient features and extensive customization options but doesn't lose sight of its two main priorities, minimalism and performance.

Are you ricing your desktop and would like a program to display your system information, or you want it to load as soon as you open your terminal?

Macchina has you covered.

If you're interested in the library Macchina uses to fetch your system information, check out libmacchina, any issues relating to fetching should be filed on that repository.


Minimalism

Macchina first started as a barebones fetcher, but has evolved to incorporate the many aspects people love to see in their fetcher. This evolution however did not discard the minimalistic look that I envisioned for it.

Here's what you can make it look like using the various supported flags.

macchina -c white --no-box --no-ascii --no-separator --no-bar-delimiter --bar

Minimal Output Preview


Performance

Macchina is pretty fast, see for yourself!

🐧 Linux

Command Mean [ms] Min [ms] Max [ms] Relative
macchina 10.0 ± 0.5 7.0 10.8 1.00
neofetch 214.9 ± 1.4 213.0 216.6 21.39 ± 1.01

macchina runs 21.39 ± 1.01 times faster than neofetch

👩🏽‍💻 macOS

Command Mean [ms] Min [ms] Max [ms] Relative
macchina 5.0 ± 0.2 4.7 5.9 1.00
neofetch 484.5 ± 4.3 477.2 492.3 97.10 ± 3.84

macchina runs 97.10 ± 3.84 times faster than neofetch

🚩 NetBSD

Command Mean [ms] Min [ms] Max [ms] Relative
macchina 23.0 ± 2.5 21.2 32.0 1.00
neofetch 275.9 ± 11.3 267.4 296.0 12.00 ± 1.38

macchina runs 12.00 ± 1.38 times faster than neofetch

💻 Windows

Command Mean [ms] Min [ms] Max [ms] Relative
macchina 9.0 ± 0.4 8.2 11.7 1.00
neofetch 2207.7 ± 53.8 2127.1 2325.9 244.38 ± 13.43

macchina runs 244.38 ± 13.43 times faster than neofetch


Features

Themes

The themes wiki page contains a list of all the built-in themes that you can switch between using the --theme flag.

Theme preview

Bars

Bars provide a way to visualize data, and each theme styles them differently. They can be enabled using the --bar flag.

Preview of bar argument

What it fetches

  • Host
    • Username
    • Hostname
  • Product
  • Kernel
  • Distribution
  • Operating System
  • Desktop Environment
  • Window Manager
  • Package Count [1]
  • Terminal
  • Shell
  • Uptime
  • Processor
    • Model
    • Logical Cores
  • Local IP Address
  • Processor Usage
  • Memory Usage
  • Battery
    • Percentage
    • Status
  • Palette

Meet Doctor

Macchina comes with a very special flag, allowing you analyze which elements failed to fetch, and why. It can differentiate between errors, and warnings, and its comprehensive output should help you understand where the issue is coming from.

macchina --doctor

Doctor flag preview


Usage

Macchina comes packed with arguments that let you customize its behavior and styling.

The usage wiki page can tell you all about them and how they work.


Dependencies

🐧 Linux:

  • wmctrl
  • Gentoo Only: portage-utils

🚩 NetBSD:

  • wmctrl

The dependencies wiki page explains why these dependencies exist.


Installation

🦀 crates.io

cargo install macchina

📦 pkgsrc

pkgin install macchina

🍻 Homebrew

brew install Macchina-CLI/homebrew-tap/macchina

AUR

  • Macchina — latest release:
git clone https://aur.archlinux.org/macchina.git
cd macchina
makepkg -si
  • Macchinamain branch:
git clone https://aur.archlinux.org/packages/macchina-git macchina
cd macchina
makepkg -si

Macchina's installation wiki page lists other ways you can install the program. You might also prefer running the prebuilt binary that corresponds with your operating system.


Platform Support

Platform Support
GNU/Linux Yes
NetBSD Yes
macOS Yes
Windows 80%
OpenWrt Yes
Android Yes

🌍 Contributors

Crates.io

Macchina, like many other open-source projects, would not be where it is right now without the help of its contributors, thank you all so much!

  • Support for NetBSD would not have been possible without the help and testing of NetBSD/pkgsrc package maintainer pin
  • Support for macOS and Windows would not have been possible without the help, testing and major contributions of 123marvin123
  • Support for OpenWrt and Android was made possible through the contributions of uttarayan21