Package Details: nvfancontrol 0.3.2-4

Git Clone URL: (read-only)
Package Base: nvfancontrol
Description: NVidia dynamic fan control
Upstream URL:
Keywords: nvidia system
Licenses: GPL3
Submitter: Foucault
Maintainer: Foucault
Last Packager: Foucault
Votes: 3
Popularity: 0.819446
First Submitted: 2017-07-01 19:11
Last Updated: 2018-01-08 20:52

Latest Comments

Foucault commented on 2018-02-11 21:25

You made it start upon login not upon boot. You could have similarly created a systemd user unit and place it in /.config/systemd/user. Then you could enable it with systemctl --user enable nvfancontrol.service. Here is a minimal systemd unit to do so

Description="NVIDIA Dynamic fan control"



Stillrotten commented on 2018-02-07 03:32

No concerns here, just wanted to say thanks a ton for making a simple, easy to use, and effective program. Using this with my Gigabyte GTX 1060 and it's working absolutely flawlessly. Cheers and thanks again.

Foucault commented on 2018-02-02 01:13

This is more complicated than it sounds. It is impossible to use xnvctrl (the library that controls the GPU) without an X server. So at the very least the program must be run after the graphics environment has been brought up. So should be a better candidate instead of If you run nvfancontrol as root after it might work. However once you log in your desktop the display will probably re-initialised or a new one will be set up (for example GDM does that; if you check $DISPLAY you'll see that is :1 rather than :0). In any case nvfancontrol will be killed once this happen and you will have to start it again. This is an inherent limitation of the way the NVIDIA driver works. There is a hacky way [0] to fake a GPU context however it still involves spinning up an X server so again similar limitations apply. I'm wondering if it is possible to have a different X server always running (etc. in :50) and bind nvfancontrol there but I haven't tested that yet. It might or it might not work.


Foucault commented on 2017-12-29 19:32

You're right; wrong installation permissions

Nordlicht commented on 2017-12-29 19:27

Ok, it works now. Small bug: The executable bit isn't set, so I had to do it via 'chmod +x' after installing.

Foucault commented on 2017-12-28 12:44

It should work now!

Nordlicht commented on 2017-12-28 07:34

Build fails:

error[E0432]: unresolved import log::LogRecord --> src/ | 6 | use log::{Log, LogRecord, LogLevelFilter, LogMetadata, SetLoggerError}; | ^^^^^^^^^ no LogRecord in the root. Did you mean to use Record?

error[E0432]: unresolved import log::LogLevelFilter --> src/ | 6 | use log::{Log, LogRecord, LogLevelFilter, LogMetadata, SetLoggerError}; | ^^^^^^^^^^^^^^ no LogLevelFilter in the root. Did you mean to use LevelFilter?

error[E0432]: unresolved import log::LogMetadata --> src/ | 6 | use log::{Log, LogRecord, LogLevelFilter, LogMetadata, SetLoggerError}; | ^^^^^^^^^^^ no LogMetadata in the root. Did you mean to use Metadata?

error[E0423]: expected function, found macro log::max_log_level --> src/ | 58 | metadata.level() <= log::max_log_level() | ^^^^^------------- | | | | | did you mean max_level? | did you mean log::max_log_level!(...)?

error[E0046]: not all trait items implemented, missing: flush --> src/ | 56 | / impl Log for Logger { 57 | | fn enabled(&self, metadata: &LogMetadata) -> bool { 58 | | metadata.level() <= log::max_log_level() 59 | | } ... | 65 | | } 66 | | } | |_^ missing flush in implementation | = note: flush from trait: fn(&Self)

error: aborting due to 5 previous errors

error: Could not compile nvfancontrol.

To learn more, run the command again with --verbose.