A simple minimal neofetch-like alternative, aimed at one thing: Just fetching information about your system, while being easy to configure and being blazingly fast.
Nothing more, nothing less.
- Fetching common system properties, such as your username
- A very simple config
- Easy color support
- Support for specifying a custom shell-command to run and print out
[host]
- System host name[kernel]
- Currently active kernel[username]
- Your username[shell]
- Currently active shell[distro]
- Active distribution name[distro_id]
- Distribution ID, for examplearch
[distro_build_id]
- Distribution Build ID, for examplerolling
[total_mem]
- Total amount of installed memory[cached_mem]
- Cached amount of memory[available_mem]
- Available memory[used_mem]
- Used memory
You may display text from shell commands with ease, and it's supported by default as long as you don't pass --raw
.
By default, the config is a mix of bash and a custom format. So you can add $(whoami)
to it and it'll return your username.
If no commands are detected, JustFetch automatically acts like as if you passed --raw
to skip any additional overhead.
You may use colors in your config by defining the text and then the RGB, like such: rgb["Hello, I'm red!", 255, 0, 0]
, which applies a red color to the text inside.
There is no limit to how many colors you may use on one line. Doing something like:
rgb["Hello, I'm red!", 255, 0, 0] rgb["Hello, I'm green!", 0, 255, 0]
will work just fine.
JustFetch focuses a lot on performance, stability and simplicity, and it does this by:
- Not using external processes to capture the output of shell commands by default, as that's slow
- If you do use shell commands via
$(...command...)
, it will add a bit of overhead, but far less than other fetching programs.
- If you do use shell commands via
- Using a custom crate for fetching system information in a straight-forward and fast way
- Making use of a super simple config, requiring no libraries outside of regular expressions for color lookups.
- Endless manual performance benchmarks, both against other compiled versions of itself, but also against other fetching programs.
- Keeping the codebase incredibly small and easy-to-read, which in turn makes it a lot easier to optimize and maintain.
- Not introducing breaking changes, not bloating itself and not making things more complicated than they have to be.
- Making very limited usage of regular expressions, as they aren't the fastest and not the easiest to read.
- Currently it's only being used for the color lookups.