Hi there,
I am tempted to install Conky and bring my monitoring scripts to Bluefin-DX to monitor RAM, CPU, disk usage by the virtual machines created with Virtual Manager.
Do you think is a good idea to install Conky in Bluefin?
Conky is not available via brew or flatpak, so a distrobox will have to do.
start.sh is a script that makes several calls to conky -c conkyConfigFile
Following the errors one could say that executing conky from the host invokes a package, inxi, not from the container but from the host, even though inxi being exported as a binary to the host.
I was able to fix the issue with the string conversion between host and container when Python 3.12 calls os.popen("inxi -aG -y1").read() to get information about the GPU and monitors. The string was mixed with special characters that made impossible the parsing:
But no problem at all when running the script from within the distrobox.
My conky configuration is automatically generated by Python scripts. That’s why it gave me extra hard time. For standard conky scripts a distrobox will work out of the box after installing conky in the container.
Dependencies
Since I am using ubuntu:latest, these are the minimum Linux packages required:
conky works by installing it from an AppImage or a distrobox container. I couldn’t find a flatpak available for it.
If the conky script is simple like the default conky.conf, the AppImage will suffice. If it is a bit complex - for example, where the conky files are generated by Python scripts - then, you will need to create a dedicated distrobox. I am using the conky theme AutomatiK, which uses Python 3.12 to generated the conky scripts.
If you have a GPU, in my case, it is a Nvidia GeForce RTX 3080, you will need to install the distrobox with Nvidia drivers and tools. The conky script may need to execute nvidia-smi to retrieve data about the GPU. This is the distrobox command:
The flag —nvidia will call the nvidia-docker-container toolkit, part of the layered packages, to build a distrobox with all the Nvidia libraries inside the container
I also tried running Conky from Docker container but none of the available in GitHub worked. Even one that was building Conky from source failed because of a broken dependency. Link here and here
If you make layered-vscode to work with distrobox, then, modifying the Lua or Python scripts from within the container will make it much easier for you.
TO DO
Make the distrobox to gather data about the host
Add some Fedora Silverblue variables to conky such as OS version, pinned versions, etc.
Applications inventory, such as how they were installed. Which ones are distroboxes, or Docker containers, or brew-installed, layered, or flatpaks, or AppImages.
Thanks for pointing me toward the Appimage. There are a few snags compared to ubuntu, but my ancient .conkyrc loaded up. There’s a few snags like colors, window and font size with my 150% scaled resolution, and cpu temp. I deleted some stuff, but might add back a couple things. This is pretty expected as I’ve migrated the config over multiple distros.
But yes, Appimage looks like the way to go for simple stuff. Your screenshot looks insane!