vuls: init at 0.27.0
[NixPkgs.git] / nixos / modules / tasks / powertop.nix
blobe8064f9fa80c6c653a61c4fc1ac16e6d3f47d54e
1 { config, lib, pkgs, ... }:
3 with lib;
5 let
6   cfg = config.powerManagement.powertop;
7 in {
8   ###### interface
10   options.powerManagement.powertop.enable = mkEnableOption "powertop auto tuning on startup";
12   ###### implementation
14   config = mkIf (cfg.enable) {
15     systemd.services = {
16       powertop = {
17         wantedBy = [ "multi-user.target" ];
18         after = [ "multi-user.target" ];
19         description = "Powertop tunings";
20         path = [ pkgs.kmod ];
21         serviceConfig = {
22           Type = "oneshot";
23           RemainAfterExit = "yes";
24           ExecStart = "${pkgs.powertop}/bin/powertop --auto-tune";
25         };
26       };
27     };
28   };