Commit 81fc14bc authored by John Titor's avatar John Titor Committed by Masum Reza
Browse files

nixos/lact: init



On AMD GPU, you should enable overdrive mode by using `hardware.amdgpu.overdrive.enable = true;` in your configuration.

Co-authored-by: default avatarPopeRigby <poperigby@mailbox.org>
Signed-off-by: default avatarJohn Titor <50095635+JohnRTitor@users.noreply.github.com>
parent 3d79cbf3
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@

- [FileBrowser](https://filebrowser.org/), a web application for managing and sharing files. Available as [services.filebrowser](#opt-services.filebrowser.enable).

- [LACT](https://github.com/ilya-zlobintsev/LACT), a GPU monitoring and configuration tool, can now be enabled through [services.lact.enable](#opt-services.lact.enable).
  Note that for LACT to work properly on AMD GPU systems, you need to enable [hardware.amdgpu.overdrive.enable](#opt-hardware.amdgpu.overdrive.enable).

- [SuiteNumérique Docs](https://github.com/suitenumerique/docs), a collaborative note taking, wiki and documentation web platform and alternative to Notion or Outline. Available as [services.lasuite-docs](#opt-services.lasuite-docs.enable).

## Backward Incompatibilities {#sec-release-25.11-incompatibilities}
+1 −0
Original line number Diff line number Diff line
@@ -646,6 +646,7 @@
  ./services/hardware/kanata.nix
  ./services/hardware/keyd.nix
  ./services/hardware/kmonad.nix
  ./services/hardware/lact.nix
  ./services/hardware/lcd.nix
  ./services/hardware/libinput.nix
  ./services/hardware/lirc.nix
+39 −0
Original line number Diff line number Diff line
{
  config,
  lib,
  pkgs,
  ...
}:

let
  cfg = config.services.lact;
in
{
  meta.maintainers = [ lib.maintainers.johnrtitor ];

  options.services.lact = {
    enable = lib.mkEnableOption null // {
      description = ''
        Whether to enable LACT, a tool for monitoring, configuring and overclocking GPUs.

        ::: {.note}
        If you are on an AMD GPU, it is recommended to enable overdrive mode by using
        `hardware.amdgpu.overdrive.enable = true;` in your configuration.
        See [LACT wiki](https://github.com/ilya-zlobintsev/LACT/wiki/Overclocking-(AMD)) for more information.
        :::
      '';
    };

    package = lib.mkPackageOption pkgs "lact" { };
  };

  config = lib.mkIf cfg.enable {
    environment.systemPackages = [ cfg.package ];
    systemd.packages = [ cfg.package ];

    systemd.services.lactd = {
      description = "LACT GPU Control Daemon";
      wantedBy = [ "multi-user.target" ];
    };
  };
}