python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / nixos / modules / services / hardware / thermald.nix
blob6b694ede588564cb01422b8c1262d145a41b8d54
1 { config, lib, pkgs, ... }:
3 with lib;
5 let
6   cfg = config.services.thermald;
7 in
9   ###### interface
10   options = {
11     services.thermald = {
12       enable = mkEnableOption (lib.mdDoc "thermald, the temperature management daemon");
14       debug = mkOption {
15         type = types.bool;
16         default = false;
17         description = lib.mdDoc ''
18           Whether to enable debug logging.
19         '';
20       };
22       configFile = mkOption {
23         type = types.nullOr types.path;
24         default = null;
25         description = lib.mdDoc "the thermald manual configuration file.";
26       };
28       package = mkOption {
29         type = types.package;
30         default = pkgs.thermald;
31         defaultText = literalExpression "pkgs.thermald";
32         description = lib.mdDoc "Which thermald package to use.";
33       };
34     };
35   };
37   ###### implementation
38   config = mkIf cfg.enable {
39     services.dbus.packages = [ cfg.package ];
41     systemd.services.thermald = {
42       description = "Thermal Daemon Service";
43       wantedBy = [ "multi-user.target" ];
44       serviceConfig = {
45         PrivateNetwork = true;
46         ExecStart = ''
47           ${cfg.package}/sbin/thermald \
48             --no-daemon \
49             ${optionalString cfg.debug "--loglevel=debug"} \
50             ${optionalString (cfg.configFile != null) "--config-file ${cfg.configFile}"} \
51             --dbus-enable \
52             --adaptive
53         '';
54       };
55     };
56   };