NBFC-Linux

NBFC-Linux is a lightweight fan control daemon written in C.
It is a port of Stefan Hirschmann’s NoteBook FanControl (NBFC) for Linux and offers similar functionality and configuration tools.

Features

Downloads

Operating System Download
Arch Linux Download 0.3.19 (141KB)
Debian (Bookworm) Download 0.3.19 (121KB)
Fedora 42 (Adams) Download 0.3.19 (146KB)
OpenSuse (Tumbleweed) Download 0.3.19 (145KB)

Graphical User Interfaces

NBFC-Linux comes with graphical frontends for common desktop environments.

GTK4 GUI (for GNOME, XFCE, etc.)

Operating System Download
Arch Linux Download 0.2.1 (28KB)
Debian (Bookworm) Download 0.2.1 (14KB)
Fedora 42 (Adams) Download 0.2.1 (19KB)
OpenSuse (Tumbleweed) Download 0.2.1 (19KB)

Qt6 GUI (for KDE)

Operating System Download
Arch Linux Download 0.4.2 (124KB)
Debian (Bookworm) Download 0.4.2 (111KB)
Fedora 42 (Adams) Download 0.4.2 (116KB)
OpenSuse (Tumbleweed) Download 0.4.2 (116KB)

Getting Started (GUI)

When running NBFC for the first time, you need to give it a configuration file for your laptop model.

Start the GUI with root privileges:

sudo nbfc-qt  # For NBFC-Qt
# -- or --
sudo nbfc-gtk # For NBFC-Gtk
  1. Perform update (tab “Update”)
    Click the “Update” button to fetch the latest configuration files.
  2. Select configuration (tab “Basic Configuration”)
    Warning: The model name must match completely or use placeholders (like XXX).
    • Select a configuration from the dropdown menu
    • Click “Set”
    • Then save using “Save”
  3. Start test mode (read-only) (tab “Service”)
    • Enable the checkbox “Start in read-only mode”
    • Click “Start” – status should change to “Running”
  4. Test the configuration
    Run a stress test in the terminal:
    stress -c 8

    Watch the “Fans” tab to see if the displayed fan speed (“Current Speed”) changes. If it doesn't, the configuration is likely invalid!

  5. Enable write mode (tab “Service”)
    • Stop the service (“Stop” button)
    • Uncheck “Start in read-only mode”
    • Start the service again (“Start”)
  6. Use manual or automatic fan control (tab “Fans”):
    • Manual: Set fan speed directly
    • Automatic: Temperature-based control via profile

Enable Auto-Start at Boot

To have NBFC-Linux start automatically on system boot:

sudo systemctl enable nbfc_service.service

Getting Started (Command Line)

When running NBFC for the first time, you need to give it a configuration file for your laptop model.

Follow the steps below:

  1. sudo nbfc update will download the latest configuration files from the internet.
  2. sudo nbfc config --set auto will try to set a configuration automatically.
    If this succeeds, skip to Step 5.
  3. nbfc config --recommend will compare your DMI system-product-name to the available configuration file names and print a list of descending similarity.
  4. Repeat the following until you find a working configuration:
    • sudo nbfc config --set "<MODEL>" – set a configuration
    • sudo nbfc restart -r – (re-)start the service in read only mode
    • nbfc status – show the fan status
    • Let the fan turn up (and down) (e.g. using stress) and observe if nbfc status shows fan speed changes
    • If speeds are reported correctly, the config is likely valid. Proceed to Step 5.
  5. sudo nbfc restart will (re-)start the service in write mode (enabling fan control)
  6. Test fan control manually:
    • nbfc set -s <SPEED> will set the fan speed. (0=off, 100=full speed)
      If this does not work, the specified configuration is invalid. Go back to Step 4.
  7. nbfc set --auto will enable auto mode (temperature-based automatic fan speed control as specified in configuration)
  8. sudo systemctl enable nbfc_service will enable the service to start automatically on boot

Screenshots

NBFC-Qt

NBFC-GTK

Sponsors

No sponsors yet