1
0
Fork 0
mirror of https://github.com/NixOS/nixos-hardware synced 2024-11-18 00:49:41 +01:00
nixos-hardware/lenovo/thinkpad/t490/default.nix
Michael Peyton Jones 2bf94227c1
Replace ad hoc throttling fix with throttled
`throttled` is a service designed to fix the same CPU throttling bug,
but it's an actively maintainted upstream project that we can use.
2019-10-16 22:31:05 +01:00

31 lines
1.1 KiB
Nix

{ nixos, lib, pkgs, config, stdenv, ... }:
{
imports = [
../../../common/cpu/intel
../../../common/pc/laptop/acpi_call.nix
../.
];
services = {
# This fixes the pulseaudio profiles of the Thinkpad T490.
# The laptop contains a single audio card with 5 sub-devices. Default pulseaudio only offers a single sink
# which can only be switched between speaker/HDMI via a manual profile change.
# This configures a profile set for pulseaudio which offers multiple sinks corresponding to the
# speaker + 4 HDMI ports. This allows the user to play audio streams on the speaker and any of the 4 HDMI/USB-C
# ports at the same time.
udev.extraRules = let
t490ProfileSet = ./t490-profile-set.conf;
in ''
SUBSYSTEM!="sound", GOTO="pulseaudio_end"
ACTION!="change", GOTO="pulseaudio_end"
KERNEL!="card*", GOTO="pulseaudio_end"
# Lenovo T490
ATTRS{vendor}=="0x8086" ATTRS{device}=="0x9dc8" ATTRS{subsystem_vendor}=="0x17aa", ATTRS{subsystem_device}=="0x2279", ENV{PULSE_PROFILE_SET}="${t490ProfileSet}"
LABEL="pulseaudio_end"
'';
throttled.enable = lib.mkDefault true;
};
}