nixpkgs/nixos/hardware/lenovo/thinkpad/x1-extreme/gen2/default.nix
Profpatsch b9a7e21ef6 nixos-hardware: prepare for merge by moving to nixos/hardware
It is going to be merged into nixpkgs, under `nixos/hardware`.

This will give better discoverability, and considering the low
turnover (less than 100 commits in the last year and only 350 total)
it won’t make any dent on the size of nixpkgs.

We have a monorepo, let’s use it.
2020-06-20 12:55:55 +02:00

49 lines
1.3 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ config, lib, ... }:
with lib;
{
imports = [
../.
];
# Fixes an issue with incorrect battery reporting. See
# https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Extreme_(Gen_2)#Invalid_Stats_Workaround
boot.initrd.availableKernelModules = [ "battery" ];
# New ThinkPads have a different TrackPoint manufacturer/name.
# See also https://certification.ubuntu.com/catalog/component/input/5313/input%3ATPPS/2ElanTrackPoint/
hardware.trackpoint.device = "TPPS/2 Elan TrackPoint";
# Since the HDMI port is connected to the NVIDIA card.
hardware.bumblebee.connectDisplay = true;
nixpkgs.overlays = [
(self: super: {
bumblebee = super.bumblebee.override {
extraNvidiaDeviceOptions = ''
Option "AllowEmptyInitialConfiguration"
'';
};
})
];
services.xserver = mkMerge [
{
# Set the right DPI. xdpyinfo says the screen is 508×285 mm but
# it actually is 344×193 mm.
monitorSection = ''
DisplaySize 344 193
'';
}
# To support intel-virtual-output when using Bumblebee.
(mkIf config.hardware.bumblebee.enable {
deviceSection = ''Option "VirtualHeads" "1"'';
videoDrivers = [ "intel" ];
})
];
services.throttled.enable = lib.mkDefault true;
}