Randy

Conky inspired system info viewer written in Rust / GTK3

Cheezeburgerz!

Conky was named after the puppet... so this thing is Randy

A man’s gotta eat, Julian.

Goals

Learn a ton

I'm new to Rust (you can tell in the code!), having fun and learning a lot.

I'd like to come up with a more standard "module" interface once I've developed more of the modules and refactor based on what I have learned.

Feature parity with my old Conky config

Done! My old Conky setup looked more or less like the Randy screenshot.

Took 200+ commits to get there, but its there and working!

Frick Ricky, stay off the CPU

Strive to do things in as little cycles as possible. Not do things as fast as possible (hence to parallel scans of /proc/*). shell ps -eo etimes,times,command | grep randy

Speed tests

Linux only

At the moment Randy only really runs on Linux. Running on other operating systems is not a goal.

Note: someone shared a screenshot of Randy running on Windows with WSfL though :D.

Features

Configurable modules

UI settings

Building

Optional deps / features

Example: shell cargo run --features sensors,nvidia

Required build packages

I have only barely looked into packaging but jhjaggars put some helpful hints for Raspbian and Fedora in here: * https://github.com/iphands/randy/issues/2 * https://github.com/iphands/randy/issues/1

Example

shell cargo run --release --no-default-features # build with lm-sensors and nvml disabled

Running

Randy needs to be pointed at a config Yaml. It will look for the deatult.yml in $PWD/config. Should work ootb if you launch from the root of the Git repo.

If are launching Randy from elsewhere... point it at the config Yaml file of your choosing. Example: shell randy /tmp/configs/my_cool_config.yml

Screenshots

screenshot screenshot_green

FAQ