-NetBSD: Finally fixed resolution readout failing, due to linkage mistakes.
-NetBSD: Set a fallback, that tries to fetch resolution through the ACPIVGA
driver.
-Merged a PR by @uttarayan21 that adds support for reading the configuration
file by specifying a path to the config file using --config, or using
MACCHINA_CONF environment variable.
-Merged a PR by @uttarayan21 that displays a warning when one or more of the
custom themes is conflicting with a built-in theme.
-Merged a PR by @FantasyTeddy that allows the processor readout to be printed
even if processor count fails to fetch.
0.8.1
=====
-Added the ability to list available and custom themes through --list-themes
flag
-Merged a PR by @uttarayan21 that adds more targets for our CI checks and
releases
0.8.0
=====
-Merged a PR by @uttarayan21 that adds support for configuring macchina
through a dotfile.
-The same PR also adds support for using custom themes that allow you
to customize macchina the way you like instead of using the built-in themes
we provide.
New features:
Macchina's custom ASCII art implementation is now much smarter than before,
thanks to the amazing work of @uttarayan21, and his brilliant parser
ansi-to-tui, go on, give it a star!
How smart is it? Well, it can now parse ANSI characters to determine how to
color the specified ascii.
Want to give it a go? You'll find a directory named "ascii" in the source code,
that contains some ascii files generated by jp2a which you can show alongside
your beautiful system information. You can use your own too, of course!
You'll also notice there's a new "contrib" directory too, which has a neat bash
script that can download a video from any site that is supported by youtube-dl,
and display it alongside your machine information, this is another one of
@uttarayan21's contributions :)
Bug fixes:
-Fixed a build error occurring on macOS.
- CPU Usage is allowed to exceed a 100% when bars are disabled, and appears
capped at 100% when they are enabled.
- Merged a PR by @CuriouslyCurious that adds the ability to use custom ASCII
art: --custom-ascii lets you import your own ASCII art, overriding the
default one. --custom-ascii-color lets you change your custom ASCII art color.
- libmacchina: (Android) Performance improvements.
- libmacchina: (Distribution Readout) try to fetch VERSION before attempting
to fetch VERSION_ID.
- libmacchina: (NetBSD) Performance improvements thanks to a super fast
custom terminal fetching implementation.
- libmacchina: (macOS) Fixed an issue where the program might panic if the
battery doesn't get detected.
- libmacchina: A check has been added to ensure that in case of a failure
during the terminal fetching process,
- libmacchina: Is now able to properly fetch snaps and dpkg packages.
- libmacchina: Added more checks to ensure package managers don't return '0'.
the program should not return any unexpected value: terminal_name() will
only continue if it receives a PID that is not -1.
- Changes to the README as well as an update to the benchmarks.
Release v0.7.0, Codename "Cobalt".
Okay, before I tell you all about the new features and bug fixes, I'd like to
thank everybody that is actively using Macchina, and especially our
contributors.
I'm very grateful that people find Macchina as interesting as I do. Our
codebase has grown from a small, glued-together set of instructions, to two
independent packages, providing users and developers the opportunity to inspect
the code and actually enjoy doing so :)
Let's take a look at the new changes:
-ASCII art now adapts to how many readouts are displayed, as suggested by
@Ramiferous.
-Updated Linux big ASCII art variant.
-The title of "Emoji" theme, now named "Boron", can now be changed, and its
separator has been modified too.
-Removed jemallocator from the dependency list, this is due to build errors
primarily with libc, we started using this a while back, because its
performance improvements were promising, but I have just come to the conclusion
that the headaches it causes aren't worth it for the most part.
-A "Beryllium" theme has appeared!
-Themes now print their own name in the box title.
-Benchmarking with hyperfine has finally been fixed.
-Update Linux and NetBSD benchmarks.
-libmacchina: Optimizations for Linux, Android and OpenWrt by implementing an
interface for sysinfo struct and using that when possible.
-libmacchina (Linux): Optimize terminal fetching by utilizing a custom
implementation instead of calling ps.
-libmacchina (Linux): Distribution should now return NAME and VERSION whenever
possible, previously it was NAME and VERSION_ID.
@123marvin123:
-Fixed an issue where the palette doesn't respect the user-provided padding
value.
@uttarayan21:
-Added command autocompletion for bash and fish.
-libmacchina: Refactored many functions, fixing a lot of clippy's warnings.
-libmacchina: Added Android support.
-Fixed a bug that caused bars to seem 100% full when using --no-color
-Slight modifications to the wording used in the help text
-No longer generate a random number when picking which ASCII art to display
-Reorder the readouts
-libmacchina can now fetch CPU usage, and Macchina can now display it
-Fixed a bug where LocalIP will be marked as failed when username or hostname
fails to fetch
-Updated some of the example images in README files
v0.6.2
-Fix a bug where --hide behaves the same as --show-only
v0.6.1
-Move macchina-read to its own repository, named libmacchina
-Add a TUI, and provide all the customizations options one might need
-Add ASCII art
-Fix several bugs
-Use jemalloc for improved performance
-Add --doctor, a more verbose and helpful debugger
-Added local IP address entry
-More miscellaneous improvements and changes
v0.6.0
-Rework the theming system
-Rework the long theme
-Declutter Elements and display.rs
-Remove objc runtime and use sysctl to get os version to improve performance on
macOS
-Add documentation for theme.rs
-Add macOS and NetBSD benchmarks to README
-Add more Windows metrics and fix its compilations errors
-Add support for APK (Alpine Linux) package manager
-Fix an issue where a bar's unused glyphs (when using --no-color flag) are not
hidden for some terminals, e.g. Kitty.
-Remove "To be filled by O.E.M." from machine information on certain computers
-ripgrep should no longer print any error messages to the terminal on NetBSD
-Use type-safe command line parsing with StructOpt and Clap
-Move dependencies section of README files to the bottom
-Other miscellaneous changes and improvements
-Added macOS support
-Execution time on macOS is ~3ms!
-Major overhaul and structural changes to the majority of the codebase,
enhancing the execution time significantly across all platforms, and allowing
for easier OS support in the future.
-Added extensive and comprehensive documentation.
-Added GitHub Actions.
-Made distribution fetching more robust
-Fix a bug that results in the program crashing when theme is set to def
.Remove def
-Fix package count incorrect value for Gentoo systems
-Macchina now reads battery information from /sys/class/power_supply/BAT1
if /sys/class/power_supply/BAT0 doesn't exist
-Add --show-only argument to help text
-Previously, extra::which looked through hardcoded paths to confirm the
existence of a program, now it searches through all directories in your PATH.
-Fixed a bug that resulted in package count failing to fetch and printing an
error message on Gentoo.
Tweaks and changes:
-Small under the hood tweaks
-Update documentation
-Changes to default and alt theme
-Capitalize first letter of shell (shorthand:ON)
Basic system information fetcher, with a focus on performance and minimalism.
Macchina lets you view basic system information, like your hostname, kernel
version, uptime, memory usage, and much more.
No one wants a slow fetcher, and Macchina's selling point is providing you with
convenient features while keeping performance a priority and minimalism a goal.
Macchina has native full support for NetBSD. Thanks grtcdr!