Repository navigation
NVIDIA GPU on the proprietary driver, on x86_64? Download tuxctl-x86_64-unknown-linux-gnu.tar.gz (needs glibc 2.28 or newer). The musl binaries cannot load NVML, so they show no NVIDIA temperature or usage.
v0.3.4 makes NVIDIA GPUs work from a release download, frees NVML's memory when it is not in use, and hardens tuxctl and its release process. No new dependencies.
What changed
- New glibc binary for x86_64 (RHEL 8, Debian 10, Ubuntu 20.04 and newer). Unlike the static musl binaries, it can load NVML for NVIDIA GPUs.
- GPU card hint: the static binaries now say "NVML needs a glibc build" on the GPU card instead of showing nothing.
- Less memory off the Overview: NVML is unloaded once the Overview has been hidden for 10 seconds and loaded again when you return. With the glibc build and NVML loaded, memory on the other screens drops from about 31 MiB to 11 MiB.
- Hardening:
- Firmware strings are sanitized in
--check. - Quitting no longer hangs on a stuck worker.
systemctl/journalctlare run from the system directories first.- Command lines are capped at 4 KiB.
- Release archives have build provenance attestations.
- The workflows' actions are pinned to commits.
- Firmware strings are sanitized in
- Elsewhere: documentation at https://seqat.github.io/tuxctl/. The release workflow now publishes to crates.io itself, through Trusted Publishing (no stored token).
CPU and memory of the musl binary are unchanged from v0.3.3. Full details: CHANGELOG.md.
Known limitations
- Hybrid laptops (iGPU + NVIDIA dGPU) can pick the wrong main GPU for the GPU card when the dGPU is asleep at startup (#7).
- NVML unloading on RTD3 GPUs (runtime-suspending dGPUs, common on laptops) is covered by tests but untested on real hardware. If you have one, please report how it behaves in #8.
Verification
base=https://github.com/Seqat/tuxctl/releases/download/v0.3.4
archive=tuxctl-x86_64-unknown-linux-gnu.tar.gz # or tuxctl-$(uname -m)-unknown-linux-musl.tar.gz
curl -LO "$base/$archive" -LO "$base/SHA256SUMS"
sha256sum -c --ignore-missing SHA256SUMS
gh attestation verify "$archive" --repo Seqat/tuxctlgh attestation verify confirms that the archive was built by this repository's release workflow. Installation options: https://seqat.github.io/tuxctl/installation.html.