summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2019-10-09 15:12:00 +0100
committerGitHub <noreply@github.com>2019-10-09 15:12:00 +0100
commit05e63ee072e69b1f48cdc402fb81d81215ff8316 (patch)
tree90c9ec8d9e72c298e6b591c7aa2a9e8aeab0fe0b
parent26bbc980b9b7c6b0d38b51fec5b41e977731fb5c (diff)
parentf08177ef66b5b26f42b21df85ac706e94aa6c45d (diff)
Merge branch 'master' into add-e7240
-rw-r--r--README.md83
-rw-r--r--lenovo/thinkpad/t490/default.nix2
-rw-r--r--lenovo/thinkpad/x1-extreme/default.nix8
-rw-r--r--lenovo/thinkpad/x1-extreme/gen2/default.nix47
4 files changed, 97 insertions, 43 deletions
diff --git a/README.md b/README.md
index e852161..e0e061c 100644
--- a/README.md
+++ b/README.md
@@ -24,48 +24,47 @@ imports = [
See code for all available configurations.
-
-
-| Model | Path |
-| --------------------------------- | -------------------------------------------- |
-| [Acer Aspire 4810T][] | `<nixos-hardware/acer/aspire/4810t>` |
-| Airis N990 | `<nixos-hardware/airis/n990>` |
-| Apple MacBook Air 4,X | `<nixos-hardware/apple/macbook-air/4>` |
-| Apple MacBook Air 6,X | `<nixos-hardware/apple/macbook-air/6>` |
-| [Apple MacBook Pro 10,1][] | `<nixos-hardware/apple/macbook-pro/10-1>` |
-| Apple MacBook Pro 12,1 | `<nixos-hardware/apple/macbook-pro/12-1>` |
-| BeagleBoard PocketBeagle | `<nixos-hardware/beagleboard/pocketbeagle>` |
-| [Dell XPS E7240][] | `<nixos-hardware/dell/e7240>` |
-| [Dell XPS 13 9360][] | `<nixos-hardware/dell/xps/13-9360>` |
-| [Dell XPS 13 9370][] | `<nixos-hardware/dell/xps/13-9370>` |
-| [Dell XPS 13 9380][] | `<nixos-hardware/dell/xps/13-9380>` |
-| [Dell XPS 15 9550][] | `<nixos-hardware/dell/xps/15-9550>` |
-| [Inverse Path USB armory][] | `<nixos-hardware/inversepath/usbarmory>` |
-| Lenovo IdeaPad Z510 | `<nixos-hardware/lenovo/ideapad/z510>` |
-| Lenovo ThinkPad T410 | `<nixos-hardware/lenovo/thinkpad/t410>` |
-| Lenovo ThinkPad T430 | `<nixos-hardware/lenovo/thinkpad/t430>` |
-| Lenovo ThinkPad T440s | `<nixos-hardware/lenovo/thinkpad/t440s>` |
-| Lenovo ThinkPad T440p | `<nixos-hardware/lenovo/thinkpad/t440p>` |
-| Lenovo ThinkPad T450s | `<nixos-hardware/lenovo/thinkpad/t450s>` |
-| Lenovo ThinkPad T460s | `<nixos-hardware/lenovo/thinkpad/t460s>` |
-| Lenovo ThinkPad T470s | `<nixos-hardware/lenovo/thinkpad/t470s>` |
-| Lenovo ThinkPad T480s | `<nixos-hardware/lenovo/thinkpad/t480s>` |
-| Lenovo ThinkPad T490 | `<nixos-hardware/lenovo/thinkpad/t490>` |
-| Lenovo ThinkPad X140e | `<nixos-hardware/lenovo/thinkpad/x140e>` |
-| Lenovo ThinkPad X220 | `<nixos-hardware/lenovo/thinkpad/x220>` |
-| Lenovo ThinkPad X230 | `<nixos-hardware/lenovo/thinkpad/x230>` |
-| Lenovo ThinkPad X250 | `<nixos-hardware/lenovo/thinkpad/x250>` |
-| [Lenovo ThinkPad X260][] | `<nixos-hardware/lenovo/thinkpad/x260>` |
-| Lenovo ThinkPad X270 | `<nixos-hardware/lenovo/thinkpad/x270>` |
-| [Lenovo ThinkPad X1 (6th Gen)][] | `<nixos-hardware/lenovo/thinkpad/x1/6th-gen>` |
-| [Microsoft Surface Pro 3][] | `<nixos-hardware/microsoft/surface-pro/3>` |
-| PC Engines APU | `<nixos-hardware/pcengines/apu>` |
-| [Raspberry Pi 2][] | `<nixos-hardware/raspberry-pi/2>` |
-| [Samsung Series 9 NP900X3C][] | `<nixos-hardware/samsung/np900x3c>` |
-| [Purism Librem 13v3][] | `<nixos-hardware/purism/librem/13v3>` |
-| Supermicro A1SRi-2758F | `<nixos-hardware/supermicro/a1sri-2758f>` |
-| Supermicro X10SLL-F | `<nixos-hardware/supermicro/x10sll-f>` |
-| [Toshiba Chromebook 2 `swanky`][] | `<nixos-hardware/toshiba/swanky>` |
+| Model | Path |
+| --------------------------------- | -------------------------------------------------- |
+| [Acer Aspire 4810T][] | `<nixos-hardware/acer/aspire/4810t>` |
+| Airis N990 | `<nixos-hardware/airis/n990>` |
+| Apple MacBook Air 4,X | `<nixos-hardware/apple/macbook-air/4>` |
+| Apple MacBook Air 6,X | `<nixos-hardware/apple/macbook-air/6>` |
+| [Apple MacBook Pro 10,1][] | `<nixos-hardware/apple/macbook-pro/10-1>` |
+| Apple MacBook Pro 12,1 | `<nixos-hardware/apple/macbook-pro/12-1>` |
+| BeagleBoard PocketBeagle | `<nixos-hardware/beagleboard/pocketbeagle>` |
+| [Dell XPS E7240][] | `<nixos-hardware/dell/e7240>` |
+| [Dell XPS 13 9360][] | `<nixos-hardware/dell/xps/13-9360>` |
+| [Dell XPS 13 9370][] | `<nixos-hardware/dell/xps/13-9370>` |
+| [Dell XPS 13 9380][] | `<nixos-hardware/dell/xps/13-9380>` |
+| [Dell XPS 15 9550][] | `<nixos-hardware/dell/xps/15-9550>` |
+| [Inverse Path USB armory][] | `<nixos-hardware/inversepath/usbarmory>` |
+| Lenovo IdeaPad Z510 | `<nixos-hardware/lenovo/ideapad/z510>` |
+| Lenovo ThinkPad T410 | `<nixos-hardware/lenovo/thinkpad/t410>` |
+| Lenovo ThinkPad T430 | `<nixos-hardware/lenovo/thinkpad/t430>` |
+| Lenovo ThinkPad T440s | `<nixos-hardware/lenovo/thinkpad/t440s>` |
+| Lenovo ThinkPad T440p | `<nixos-hardware/lenovo/thinkpad/t440p>` |
+| Lenovo ThinkPad T450s | `<nixos-hardware/lenovo/thinkpad/t450s>` |
+| Lenovo ThinkPad T460s | `<nixos-hardware/lenovo/thinkpad/t460s>` |
+| Lenovo ThinkPad T470s | `<nixos-hardware/lenovo/thinkpad/t470s>` |
+| Lenovo ThinkPad T480s | `<nixos-hardware/lenovo/thinkpad/t480s>` |
+| Lenovo ThinkPad T490 | `<nixos-hardware/lenovo/thinkpad/t490>` |
+| Lenovo ThinkPad X140e | `<nixos-hardware/lenovo/thinkpad/x140e>` |
+| Lenovo ThinkPad X220 | `<nixos-hardware/lenovo/thinkpad/x220>` |
+| Lenovo ThinkPad X230 | `<nixos-hardware/lenovo/thinkpad/x230>` |
+| Lenovo ThinkPad X250 | `<nixos-hardware/lenovo/thinkpad/x250>` |
+| [Lenovo ThinkPad X260][] | `<nixos-hardware/lenovo/thinkpad/x260>` |
+| Lenovo ThinkPad X270 | `<nixos-hardware/lenovo/thinkpad/x270>` |
+| [Lenovo ThinkPad X1 (6th Gen)][] | `<nixos-hardware/lenovo/thinkpad/x1/6th-gen>` |
+| Lenovo ThinkPad X1 Extreme Gen 2 | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen2>` |
+| [Microsoft Surface Pro 3][] | `<nixos-hardware/microsoft/surface-pro/3>` |
+| PC Engines APU | `<nixos-hardware/pcengines/apu>` |
+| [Raspberry Pi 2][] | `<nixos-hardware/raspberry-pi/2>` |
+| [Samsung Series 9 NP900X3C][] | `<nixos-hardware/samsung/np900x3c>` |
+| [Purism Librem 13v3][] | `<nixos-hardware/purism/librem/13v3>` |
+| Supermicro A1SRi-2758F | `<nixos-hardware/supermicro/a1sri-2758f>` |
+| Supermicro X10SLL-F | `<nixos-hardware/supermicro/x10sll-f>` |
+| [Toshiba Chromebook 2 `swanky`][] | `<nixos-hardware/toshiba/swanky>` |
[Acer Aspire 4810T]: acer/aspire/4810t
[Apple MacBook Pro 10,1]: apple/macbook-pro/10-1
diff --git a/lenovo/thinkpad/t490/default.nix b/lenovo/thinkpad/t490/default.nix
index e795aa7..1a4f71d 100644
--- a/lenovo/thinkpad/t490/default.nix
+++ b/lenovo/thinkpad/t490/default.nix
@@ -22,7 +22,7 @@
KERNEL!="card*", GOTO="pulseaudio_end"
# Lenovo T490
- ATTRS{subsystem_vendor}=="0x17aa", ATTRS{subsystem_device}=="0x2279", ENV{PULSE_PROFILE_SET}="${t490ProfileSet}"
+ ATTRS{vendor}=="0x8086" ATTRS{device}=="0x9dc8" ATTRS{subsystem_vendor}=="0x17aa", ATTRS{subsystem_device}=="0x2279", ENV{PULSE_PROFILE_SET}="${t490ProfileSet}"
LABEL="pulseaudio_end"
'';
diff --git a/lenovo/thinkpad/x1-extreme/default.nix b/lenovo/thinkpad/x1-extreme/default.nix
new file mode 100644
index 0000000..09a0ec1
--- /dev/null
+++ b/lenovo/thinkpad/x1-extreme/default.nix
@@ -0,0 +1,8 @@
+{
+ imports = [
+ ../.
+ ../../../common/cpu/intel
+ ../../../common/pc/laptop/acpi_call.nix
+ ../../../common/pc/laptop/ssd
+ ];
+}
diff --git a/lenovo/thinkpad/x1-extreme/gen2/default.nix b/lenovo/thinkpad/x1-extreme/gen2/default.nix
new file mode 100644
index 0000000..912cc95
--- /dev/null
+++ b/lenovo/thinkpad/x1-extreme/gen2/default.nix
@@ -0,0 +1,47 @@
+{ config, lib, ... }:
+
+with lib;
+
+{
+ imports = [
+ ../.
+ ../../../../common/pc/laptop/cpu-throttling-bug.nix
+ ];
+
+ # 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" ];
+ })
+ ];
+}