ilya-zlobintsev / LACT

Linux AMDGPU Configuration Tool
MIT License
1.14k stars 30 forks source link

Cannot build on EL8 #377

Open xander-st-aubyn opened 2 days ago

xander-st-aubyn commented 2 days ago

Checklist

Bug description

Glib-2.56 (the version installed on EL8) is too old for the version of the rust crate glib-sys requires which is 2.68 I believe or 67.

Since Enterprise Linux 8 is supported until nearly the end of the decade it would be great if one could use lact on it.

System info

- LACT version: Any
- GPU model: AMD Radeon RX 6650 XT - AMD/ATI Navi 23
- Kernel version: 4.18 (Though I am planning to compile a newer perhaps 5x or 6x)
- Distribution: Enterprise Linux 8.10 (any RHEL 8x)
ilya-zlobintsev commented 2 days ago

RHEL 8 doesn't ship GTK4. LACT requires GTK4 (short of using only the daemon without GUI). Maybe you could build GTK/glib from source, but it's likely not a simple process.

You might however be able to run LACT inside of a newer distro's environment using something like distrobox, provided the container has root access to /sys.

xander-st-aubyn commented 1 day ago

Honestly, I would be fine with a small service and all it does is take a fan curve from a config file and override that zero-speed fan control so they run according to the curve. It's just LACT is the only piece of software I have found that actually.. functions in respect to my gfx card on Linux. On Windows I used MSI Afterburner for the exact same purpose.

Also, I thought this was a GTK3 program? Anyway, so if I ran say a Fedora 40 chroot I could likely manually start the service and even run the GUI program (x11 is a wonderful thing)? I been meaning to experiment with a good host selection (from scratch) and chroots and more advanced container solutions plus some legacy VMware'ing.

ilya-zlobintsev commented 1 day ago

I would be fine with a small service and all it does is take a fan curve from a config file and override that zero-speed fan control so they run according to the curve

It should be possible to do this with LACT already - you can build with make build-release-headless and it will not depend on GTK at all. Also see the api description.

xander-st-aubyn commented 1 day ago

I believe from reading some of the files here that if I build headless and use the cli command to get the gpu id it uses then I can just use the settings otherwise from a fedora install right? No JSON API needed.

ilya-zlobintsev commented 1 day ago

Yes, that is correct. The changes should even be detected automatically when you edit the config file.

xander-st-aubyn commented 17 hours ago

Success. Were you planning to expand the cli functionality? Cause it would seem to me that either the cli functionality should be expanded or the daemon and core should be split from the UI to promote many different solutions for a frontend cli or GUI.

ilya-zlobintsev commented 14 hours ago

The daemon is already separated - you've just built it separately, and there are headless builds provided in releases. However the CLI is indeed very limited. I think maybe it would be better to document the configuration file and make it easier to manually edit rather than adding everything via cli commands though.