mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-08 19:46:10 +01:00
Merge branch 'master' into tc358743-4-lane
This commit is contained in:
commit
003318603f
45 changed files with 403 additions and 118 deletions
4
.github/workflows/test.yml
vendored
4
.github/workflows/test.yml
vendored
|
|
@ -9,13 +9,13 @@ jobs:
|
|||
nixfmt:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
- uses: cachix/install-nix-action@v31
|
||||
- run: cd tests && nix fmt .. -- --fail-on-change
|
||||
tests:
|
||||
needs: nixfmt
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
- uses: cachix/install-nix-action@v31
|
||||
- run: nix run ./tests#run .
|
||||
|
|
@ -97,6 +97,7 @@ See code for all available configurations.
|
|||
| [Apple MacBook Pro 8,1](apple/macbook-pro/8-1) | `<nixos-hardware/apple/macbook-pro/8-1>` | `apple-macbook-pro-8-1` |
|
||||
| [Apple MacBook Pro 10,1](apple/macbook-pro/10-1) | `<nixos-hardware/apple/macbook-pro/10-1>` | `apple-macbook-pro-10-1` |
|
||||
| [Apple MacBook Pro 11,1](apple/macbook-pro/11-1) | `<nixos-hardware/apple/macbook-pro/11-1>` | `apple-macbook-pro-11-1` |
|
||||
| [Apple MacBook Pro 11,4](apple/macbook-pro/11-4) | `<nixos-hardware/apple/macbook-pro/11-4>` | `apple-macbook-pro-11-4` |
|
||||
| [Apple MacBook Pro 11,5](apple/macbook-pro/11-5) | `<nixos-hardware/apple/macbook-pro/11-5>` | `apple-macbook-pro-11-5` |
|
||||
| [Apple MacBook Pro 12,1](apple/macbook-pro/12-1) | `<nixos-hardware/apple/macbook-pro/12-1>` | `apple-macbook-pro-12-1` |
|
||||
| [Apple MacBook Pro 14,1](apple/macbook-pro/14-1) | `<nixos-hardware/apple/macbook-pro/14-1>` | `apple-macbook-pro-14-1` |
|
||||
|
|
@ -109,6 +110,7 @@ See code for all available configurations.
|
|||
| [Asus ROG Flow X13 GV302X\* (2023)](asus/flow/gv302x/nvidia) | `<nixos-hardware/asus/flow/gv302x/nvidia>` | `asus-flow-gv302x-nvidia` |
|
||||
| [Asus ROG Strix G513IM](asus/rog-strix/g513im) | `<nixos-hardware/asus/rog-strix/g513im>` | `asus-rog-strix-g513im` |
|
||||
| [Asus ROG Strix G533ZW](asus/rog-strix/g533zw) | `<nixos-hardware/asus/rog-strix/g533zw>` | `asus-rog-strix-g533zw` |
|
||||
| [Asus ROG Strix G533Q](asus/rog-strix/g533q) | `<nixos-hardware/asus/rog-strix/g533q>` | `asus-rog-strix-g533zw` |
|
||||
| [Asus ROG Strix G713IE](asus/rog-strix/g713ie) | `<nixos-hardware/asus/rog-strix/g713ie>` | `asus-rog-strix-g713ie` |
|
||||
| [Asus ROG Strix G733QS](asus/rog-strix/g733qs) | `<nixos-hardware/asus/rog-strix/g733qs>` | `asus-rog-strix-g733qs` |
|
||||
| [Asus ROG Strix X570-E GAMING](asus/rog-strix/x570e) | `<nixos-hardware/asus/rog-strix/x570e>` | `asus-rog-strix-x570e` |
|
||||
|
|
@ -223,6 +225,7 @@ See code for all available configurations.
|
|||
| [HP Probook 440G5](hp/probook/440g5) | `<nixos-hardware/hp/probook/440g5>` | `hp-probook-440G5` |
|
||||
| [Huawei Matebook X Pro (2020)](huawei/machc-wa) | `<nixos-hardware/huawei/machc-wa>` | `huawei-machc-wa` |
|
||||
| [i.MX8QuadMax Multisensory Enablement Kit](nxp/imx8qm-mek/) | `<nixos-hardware/nxp/imx8qm-mek>` | `nxp-imx8qm-mek` |
|
||||
| [Intel NUC 5i5RYB](intel/nuc/5i5ryb/) | `<nixos-hardware/intel/nuc/5i5ryb>` | `intel-nuc-5i5ryb` |
|
||||
| [Intel NUC 8i7BEH](intel/nuc/8i7beh/) | `<nixos-hardware/intel/nuc/8i7beh>` | `intel-nuc-8i7beh` |
|
||||
| [Lenovo IdeaCentre K330](lenovo/ideacentre/k330) | `<nixos-hardware/lenovo/ideacentre/k330>` | `lenovo-ideacentre-k330` |
|
||||
| [Lenovo IdeaPad 3 15alc6](lenovo/ideapad/15alc6) | `<nixos-hardware/lenovo/ideapad/15alc6>` | `lenovo-ideapad-15alc6` |
|
||||
|
|
@ -236,6 +239,8 @@ See code for all available configurations.
|
|||
| [Lenovo IdeaPad 2-in-1 16ahp9](lenovo/ideapad/16ahp9) | `<nixos-hardware/lenovo/ideapad/16ahp9>` | `lenovo-ideapad-16ahp9` |
|
||||
| [Lenovo IdeaPad S145 15api](lenovo/ideapad/s145-15api) | `<nixos-hardware/lenovo/ideapad/s145-15api>` | `lenovo-ideapad-s145-15api` |
|
||||
| [Lenovo Legion 5 15ach6h](lenovo/legion/15ach6h) | `<nixos-hardware/lenovo/legion/15ach6h>` | `lenovo-legion-15ach6h` |
|
||||
| [Lenovo Legion 5 15ach6h (Hybrid)](lenovo/legion/15ach6h/hybrid) | `<nixos-hardware/lenovo/legion/15ach6h/hybrid>` | `lenovo-legion-15ach6h-hybrid` |
|
||||
| [Lenovo Legion 5 15ach6h (Nvidia)](lenovo/legion/15ach6h/hybrid) | `<nixos-hardware/lenovo/legion/15ach6h/nvidia>` | `lenovo-legion-15ach6h-nvidia` |
|
||||
| [Lenovo Legion 5 15arh05h](lenovo/legion/15arh05h) | `<nixos-hardware/lenovo/legion/15arh05h>` | `lenovo-legion-15arh05h` |
|
||||
| [Lenovo Legion 7 Slim 15ach6](lenovo/legion/15ach6) | `<nixos-hardware/lenovo/legion/15ach6>` | `lenovo-legion-15ach6` |
|
||||
| [Lenovo Legion 5 Pro 16ach6h](lenovo/legion/16ach6h) | `<nixos-hardware/lenovo/legion/16ach6h>` | `lenovo-legion-16ach6h` |
|
||||
|
|
@ -274,6 +279,7 @@ See code for all available configurations.
|
|||
| [Lenovo ThinkPad P14s Intel Gen 5](lenovo/thinkpad/p14s/intel/gen5) | `<nixos-hardware/lenovo/thinkpad/p14s/intel/gen5>` | `lenovo-thinkpad-p14s-intel-gen5`|
|
||||
| [Lenovo ThinkPad P16s AMD Gen 1](lenovo/thinkpad/p16s/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/p16s/amd/gen1>` | `lenovo-thinkpad-p16s-amd-gen1` |
|
||||
| [Lenovo ThinkPad P16s AMD Gen 2](lenovo/thinkpad/p16s/amd/gen2) | `<nixos-hardware/lenovo/thinkpad/p16s/amd/gen2>` | `lenovo-thinkpad-p16s-amd-gen2` |
|
||||
| [Lenovo ThinkPad P16s AMD Gen 4](lenovo/thinkpad/p16s/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/p16s/amd/gen4>` | `lenovo-thinkpad-p16s-amd-gen4` |
|
||||
| [Lenovo ThinkPad P16s Intel Gen 2](lenovo/thinkpad/p16s/intel/gen2) | `<nixos-hardware/lenovo/thinkpad/p16s/intel/gen2>` | `lenovo-thinkpad-p16s-intel-gen2`|
|
||||
| [Lenovo ThinkPad P1](lenovo/thinkpad/p1) | `<nixos-hardware/lenovo/thinkpad/p1>` | `lenovo-thinkpad-p1` |
|
||||
| [Lenovo ThinkPad P43s](lenovo/thinkpad/p43s) | `<nixos-hardware/lenovo/thinkpad/p43s>` | `lenovo-thinkpad-p43s` |
|
||||
|
|
@ -287,6 +293,7 @@ See code for all available configurations.
|
|||
| [Lenovo ThinkPad T14 AMD Gen 4](lenovo/thinkpad/t14/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen4>` | `lenovo-thinkpad-t14-amd-gen4` |
|
||||
| [Lenovo ThinkPad T14 AMD Gen 5](lenovo/thinkpad/t14/amd/gen5) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen5>` | `lenovo-thinkpad-t14-amd-gen5` |
|
||||
| [Lenovo ThinkPad T14](lenovo/thinkpad/t14) | `<nixos-hardware/lenovo/thinkpad/t14>` | `lenovo-thinkpad-t14` |
|
||||
| [Lenovo ThinkPad T14 Intel Gen 6](lenovo/thinkpad/t14/intel/gen6) | `<nixos-hardware/lenovo/thinkpad/t14/intel/gen6>` | `lenovo-thinkpad-t14-intel-gen6` |
|
||||
| [Lenovo ThinkPad T14s AMD Gen 1](lenovo/thinkpad/t14s/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/t14s/amd/gen1>` | `lenovo-thinkpad-t14s-amd-gen1` |
|
||||
| [Lenovo ThinkPad T14s AMD Gen 4](lenovo/thinkpad/t14s/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/t14s/amd/gen4>` | `lenovo-thinkpad-t14s-amd-gen4` |
|
||||
| [Lenovo ThinkPad T14s](lenovo/thinkpad/t14s) | `<nixos-hardware/lenovo/thinkpad/t14s>` | `lenovo-thinkpad-t14s` |
|
||||
|
|
@ -363,6 +370,7 @@ See code for all available configurations.
|
|||
| [Microsoft Surface Pro 9](microsoft/surface-pro/9) | `<nixos-hardware/microsoft/surface-pro/9>` | `microsoft-surface-pro-9` |
|
||||
| [Morefine M600](morefine/m600) | `<nixos-hardware/morefine/m600>` | `morefine-m600` |
|
||||
| [Minisforum V3](minisforum/v3) | `<nixos-hardware/minisforum/v3>` | `minisforum-v3` |
|
||||
| [MECHREVO Yilong15Pro](mechrevo/GM5HG0A) | `<nixos-hardware/mechrevo/GM5HG0A>` | `mechrevo-gm5hg0a` |
|
||||
| [NXP iMX8 MPlus Evaluation Kit](nxp/imx8mp-evk) | `<nixos-hardware/nxp/imx8mp-evk>` | `nxp-imx8mp-evk` |
|
||||
| [NXP iMX8 MQuad Evaluation Kit](nxp/imx8mq-evk) | `<nixos-hardware/nxp/imx8mq-evk>` | `nxp-imx8mq-evk` |
|
||||
| [Hardkernel Odroid HC4](hardkernel/odroid-hc4/default.nix) | `<nixos-hardware/hardkernel/odroid-hc4>` | `hardkernel-odroid-hc4` |
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
{
|
||||
boot.kernelParams = [
|
||||
"hid_apple.iso_layout=0"
|
||||
];
|
||||
|
||||
hardware.facetimehd.enable = lib.mkDefault (config.nixpkgs.config.allowUnfree or false);
|
||||
|
||||
services.mbpfan.enable = lib.mkDefault true;
|
||||
|
|
|
|||
42
apple/macbook-pro/11-4/README.md
Normal file
42
apple/macbook-pro/11-4/README.md
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# Apple MacBookPro11,4
|
||||
|
||||
[Product page](https://support.apple.com/en-us/111955)
|
||||
|
||||
|
||||
## Tested Hardware
|
||||
```console
|
||||
foo@bar:~$ lspci -nn
|
||||
00:00.0 Host bridge [0600]: Intel Corporation Crystal Well DRAM Controller [8086:0d04] (rev 08)
|
||||
00:01.0 PCI bridge [0604]: Intel Corporation Crystal Well PCI Express x16 Controller [8086:0d01] (rev 08)
|
||||
00:01.1 PCI bridge [0604]: Intel Corporation Crystal Well PCI Express x8 Controller [8086:0d05] (rev 08)
|
||||
00:02.0 VGA compatible controller [0300]: Intel Corporation Crystal Well Integrated Graphics Controller [8086:0d26] (rev 08)
|
||||
00:03.0 Audio device [0403]: Intel Corporation Crystal Well HD Audio Controller [8086:0d0c] (rev 08)
|
||||
00:14.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI [8086:8c31] (rev 05)
|
||||
00:16.0 Communication controller [0780]: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 [8086:8c3a] (rev 04)
|
||||
00:1b.0 Audio device [0403]: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller [8086:8c20] (rev 05)
|
||||
00:1c.0 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 [8086:8c10] (rev d5)
|
||||
00:1c.2 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 [8086:8c14] (rev d5)
|
||||
00:1c.3 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 [8086:8c16] (rev d5)
|
||||
00:1f.0 ISA bridge [0601]: Intel Corporation HM87 Express LPC Controller [8086:8c4b] (rev 05)
|
||||
00:1f.3 SMBus [0c05]: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller [8086:8c22] (rev 05)
|
||||
00:1f.6 Signal processing controller [1180]: Intel Corporation 8 Series Chipset Family Thermal Management Controller [8086:8c24] (rev 05)
|
||||
01:00.0 SATA controller [0106]: Samsung Electronics Co Ltd S4LN058A01[SSUBX] AHCI SSD Controller (Apple slot) [144d:a801] (rev 01)
|
||||
03:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC [14e4:43ba] (rev 01)
|
||||
04:00.0 Multimedia controller [0480]: Broadcom Inc. and subsidiaries 720p FaceTime HD Camera [14e4:1570]
|
||||
05:00.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
06:00.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
06:03.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
06:04.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
06:05.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
06:06.0 PCI bridge [0604]: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013] [8086:156d]
|
||||
07:00.0 System peripheral [0880]: Intel Corporation DSL5520 Thunderbolt 2 NHI [Falcon Ridge 4C 2013] [8086:156c]
|
||||
```
|
||||
|
||||
## Tested Nix Configuration
|
||||
- system: `"x86_64-linux"`
|
||||
- host os: `Linux 6.12.36, NixOS, 25.11 (Xantusia), 25.11.20250708.9807714`
|
||||
- multi-user?: `yes`
|
||||
- sandbox: `yes`
|
||||
- version: `nix-env (Nix) 2.28.4`
|
||||
- channels(root): `"nixos"`
|
||||
- nixpkgs: `/nix/store/bgl6ldj5ihbwcq8p42z3a0qzgqafgk2b-source`
|
||||
17
apple/macbook-pro/11-4/default.nix
Normal file
17
apple/macbook-pro/11-4/default.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
../.
|
||||
../../../common/cpu/intel/haswell
|
||||
../../../common/pc/ssd
|
||||
"${modulesPath}/hardware/network/broadcom-43xx.nix"
|
||||
];
|
||||
|
||||
hardware.graphics.enable = lib.mkDefault true;
|
||||
}
|
||||
|
|
@ -9,7 +9,6 @@ This means it might be required to restart your wifi deamon i.e. wpa_supplicant:
|
|||
powerManagement.powerUpCommands = ''
|
||||
${pkgs.systemd}/bin/systemctl restart wpa_supplicant.service
|
||||
'';
|
||||
};
|
||||
```
|
||||
|
||||
You can apply this to your network management software of choice.
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@
|
|||
"b43-firmware"
|
||||
];
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
### For all packages
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"base_url": "https://raw.githubusercontent.com/t2linux/linux-t2-patches/8ec11f3aaa314d25e18842851a2124c0031e2e3f/",
|
||||
"base_url": "https://raw.githubusercontent.com/t2linux/linux-t2-patches/6b41c3fd65913e0fa3592ad16ff4a3a5b01efc7a/",
|
||||
"patches": [
|
||||
{
|
||||
"name": "1001-Add-apple-bce-driver.patch",
|
||||
|
|
@ -37,29 +37,9 @@
|
|||
"name": "1011-HID-multitouch-add-device-ID-for-Apple-Touch-Bar.patch",
|
||||
"hash": "sha256-dIzEOj89D2rIEc2/mjq3TkIfI3ZHzu0VRDQQOzp+Snc="
|
||||
},
|
||||
{
|
||||
"name": "1013-lib-vsprintf-Add-support-for-generic-FourCCs-by-exte.patch",
|
||||
"hash": "sha256-g8M3j1ZPND10/LtPD/txaSoJGV9Lp+g5bgn+vQc56p4="
|
||||
},
|
||||
{
|
||||
"name": "1014-printf-add-tests-for-generic-FourCCs.patch",
|
||||
"hash": "sha256-5Z4cFBMAY695OEU/CxiGQkUz68zmKdxssD+yp1DCYgs="
|
||||
},
|
||||
{
|
||||
"name": "1015-drm-appletbdrm-use-p4cl-instead-of-p4cc.patch",
|
||||
"hash": "sha256-rZej0ZbpPv+8NROuYnf4Jpu9scCsmbKWyz7yf5A3G3s="
|
||||
},
|
||||
{
|
||||
"name": "1016-vsprintf-Use-p4chR-instead-of-p4cn-for-reading-data-.patch",
|
||||
"hash": "sha256-/Ork2CmYk6SG213Owk+nGsw7KTEVDLRzQTeWcKrPZGw="
|
||||
},
|
||||
{
|
||||
"name": "1017-checkpatch-remove-p4cn.patch",
|
||||
"hash": "sha256-lnMnjnMiR9WSNf/XYsiOwFdC9xKv8zSluWiR584xFPU="
|
||||
},
|
||||
{
|
||||
"name": "2008-i915-4-lane-quirk-for-mbp15-1.patch",
|
||||
"hash": "sha256-Ui9tK4IGSWfEscmD92emX/NfulO0m8zwLc9ivIClCFQ="
|
||||
"hash": "sha256-PjMVt4u505PXnKFpojov0Uwhj0KxZas1E4NYJGI6lQ4="
|
||||
},
|
||||
{
|
||||
"name": "2009-apple-gmux-allow-switching-to-igpu-at-probe.patch",
|
||||
|
|
@ -103,7 +83,7 @@
|
|||
},
|
||||
{
|
||||
"name": "4001-asahi-trackpad.patch",
|
||||
"hash": "sha256-QM/FtDft4N4imJBuEHg6cH3e8vEyMPLt0alDhugLPy8="
|
||||
"hash": "sha256-nOpQ3t+QQXco6p7C03fM5EZ3ZfnzwC6UCFwHQd1EnGE="
|
||||
},
|
||||
{
|
||||
"name": "4002-HID-quirks-remove-T2-devices-from-hid_mouse_ignore_l.patch",
|
||||
|
|
@ -115,7 +95,7 @@
|
|||
},
|
||||
{
|
||||
"name": "4004-HID-magicmouse-Add-support-for-trackpads-found-on-T2.patch",
|
||||
"hash": "sha256-HcPX7gY3hnlwM/tY06pbtXnch04AqwHgC596E8ZqGY8="
|
||||
"hash": "sha256-dNrpDlIE9SaQUOntVQHMOyj7T/dsuRemN56yskKWue0="
|
||||
},
|
||||
{
|
||||
"name": "4005-HID-apple-Add-necessary-IDs-and-support-for-replacem.patch",
|
||||
|
|
@ -123,15 +103,15 @@
|
|||
},
|
||||
{
|
||||
"name": "4006-HID-magicmouse-Add-MacBookPro15-1-replacement-trackp.patch",
|
||||
"hash": "sha256-uAlT/4ADwYyKvbuPQaGwqCjZ2/myruC63etVV6cfFLk="
|
||||
"hash": "sha256-mMqHhxig+Z9eVPaa1qfcNVCRX16B6/KuEd1KnSZMLLk="
|
||||
},
|
||||
{
|
||||
"name": "7001-drm-i915-fbdev-Discard-BIOS-framebuffers-exceeding-h.patch",
|
||||
"hash": "sha256-O6RHFxmKZn7aCq1D+r5z2T3jLt0r5+01EABD9rs0E5M="
|
||||
"hash": "sha256-/EKN7JsAxcpAgfJFtPp2NLYaGqQ0kl8wjJEXifSzJpY="
|
||||
},
|
||||
{
|
||||
"name": "8001-Add-APFS-driver.patch",
|
||||
"hash": "sha256-io17Kk6FDscDoDshddK9TqSPuXVFTzjvRUwOGTl5cjM="
|
||||
"hash": "sha256-uR5hg75SFFWzfrKyU5UnzPL4U7LkjqGs44rkxM7ur8o="
|
||||
},
|
||||
{
|
||||
"name": "8002-Necessary-modifications-to-build-APFS-with-the-kerne.patch",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{ callPackage, linux_6_15, ... }@args:
|
||||
{ callPackage, linux_6_16, ... }@args:
|
||||
|
||||
callPackage ./generic.nix args {
|
||||
kernel = linux_6_15;
|
||||
kernel = linux_6_16;
|
||||
patchesFile = ./latest.json;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"base_url": "https://raw.githubusercontent.com/t2linux/linux-t2-patches/e08a76e1f1234885b9b68be6c843bf91833e8b0a/",
|
||||
"base_url": "https://raw.githubusercontent.com/t2linux/linux-t2-patches/5eaf1261d069bbc67aba7fe2737a5fe981e05a9e/",
|
||||
"patches": [
|
||||
{
|
||||
"name": "1001-Add-apple-bce-driver.patch",
|
||||
|
|
@ -49,10 +49,6 @@
|
|||
"name": "1013-lib-vsprintf-Add-support-for-generic-FourCCs-by-exte.patch",
|
||||
"hash": "sha256-h3gxaKtvdm/GSd+AP1sPC9avWHOsceUxTmoua/3rIf4="
|
||||
},
|
||||
{
|
||||
"name": "1014-drm-format-helper-Add-conversion-from-XRGB8888-to-BG.patch",
|
||||
"hash": "sha256-Ky19+cCiYDaHBh2o5IhZO8J1ExDT7o8K9cgPz+AL8Cg="
|
||||
},
|
||||
{
|
||||
"name": "1015-drm-tiny-add-driver-for-Apple-Touch-Bars-in-x86-Macs.patch",
|
||||
"hash": "sha256-tDjK/VipVQbuNOURW38gssqeRLy3s8I+DVq0+4zGnHs="
|
||||
|
|
@ -103,7 +99,7 @@
|
|||
},
|
||||
{
|
||||
"name": "4001-asahi-trackpad.patch",
|
||||
"hash": "sha256-NOuGgUxDQEfFPlij/EnhWmgqeG3/l+j+r2T1YJG7raY="
|
||||
"hash": "sha256-kfAYVovukZLD5ocHQxhoHJSa9c5XAJ1GhH1RlzGkS+k="
|
||||
},
|
||||
{
|
||||
"name": "4002-HID-quirks-remove-T2-devices-from-hid_mouse_ignore_l.patch",
|
||||
|
|
@ -131,7 +127,7 @@
|
|||
},
|
||||
{
|
||||
"name": "8001-Add-APFS-driver.patch",
|
||||
"hash": "sha256-O3RNtpeZQENPEfyYi/0ZTLhAWBAw6pmxMS30NUxOTdk="
|
||||
"hash": "sha256-QpIPsMjWNPOkw6rSKn7rW0Fmx9HUwJaiGy3pZeT5Fd0="
|
||||
},
|
||||
{
|
||||
"name": "8002-Necessary-modifications-to-build-APFS-with-the-kerne.patch",
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@
|
|||
}:
|
||||
let
|
||||
p = pkgs.writeScriptBin "charge-upto" ''
|
||||
echo ''${0:-100} > /sys/class/power_supply/BAT?/charge_control_end_threshold
|
||||
#!${pkgs.bash}/bin/bash
|
||||
echo ''${1:-100} > /sys/class/power_supply/BAT?/charge_control_end_threshold
|
||||
'';
|
||||
cfg = config.hardware.asus.battery;
|
||||
in
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@
|
|||
};
|
||||
|
||||
hardware.nvidia = {
|
||||
powerManagement.enable = lib.mkDefault true;
|
||||
modesetting.enable = lib.mkDefault true;
|
||||
open = lib.mkDefault false;
|
||||
nvidiaSettings = lib.mkDefault true;
|
||||
|
|
|
|||
18
asus/rog-strix/g533q/default.nix
Normal file
18
asus/rog-strix/g533q/default.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../../common/cpu/amd
|
||||
../../../common/cpu/amd/pstate.nix
|
||||
../../../common/gpu/nvidia/prime.nix
|
||||
../../../common/gpu/nvidia/ampere
|
||||
../../../common/pc/laptop
|
||||
../../../common/pc/ssd
|
||||
../../battery.nix
|
||||
];
|
||||
|
||||
hardware.nvidia.prime = {
|
||||
amdgpuBusId = "PCI:6:0:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
};
|
||||
}
|
||||
|
|
@ -61,7 +61,10 @@ Then use `fwupdmgr` to perform updates
|
|||
|
||||
## Nvidia Driver
|
||||
|
||||
The choice of the `legacy_390` driver is based on looking for PCI Device ID `10de:1436`. On the [nvidia driver site](https://www.nvidia.com/en-us/drivers/unix/legacy-gpu/) which should indicate the
|
||||
driver, the exact device isn't listed. However, we can see
|
||||
[here](https://linux-hardware.org/?id=pci:10de-1436-103c-1909) has nvidia driver "375.82 and newer" listed. Since the
|
||||
newest nvidia drivers don't support legacy devices, the closest version newer than 375.82 was chosen.
|
||||
The choice of the `stable` driver is based on looking at the family of the card on [nouveau wiki's code names page](https://nouveau.freedesktop.org/CodeNames.html) obtained with:
|
||||
|
||||
```bash
|
||||
$ lspci -k -d ::03xx
|
||||
```
|
||||
|
||||
Both `Quadro M2200 Mobile (GM206GLM)` and `Quadro M1200 Mobile (GM107GLM)` belong to the **Maxwell** family which is still supported by the stable driver.
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
enable32Bit = lib.mkDefault true;
|
||||
};
|
||||
nvidia = {
|
||||
package = config.boot.kernelPackages.nvidiaPackages.legacy_390;
|
||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||
nvidiaSettings = lib.mkDefault true;
|
||||
modesetting.enable = lib.mkDefault true;
|
||||
open = lib.mkDefault false;
|
||||
|
|
|
|||
22
flake.lock
generated
22
flake.lock
generated
|
|
@ -1,26 +1,6 @@
|
|||
{
|
||||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1751290770,
|
||||
"narHash": "sha256-u4s8yKAqTzPGY3vTcDyAIet11uXaNCM//93/0O0NlbA=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0620a50e9a847851bf802c59a4202552ed79b821",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.05-small",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
"root": {}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
|
|
|
|||
11
flake.nix
11
flake.nix
|
|
@ -26,6 +26,7 @@
|
|||
apple-macbook-pro-8-1 = import ./apple/macbook-pro/8-1;
|
||||
apple-macbook-pro-10-1 = import ./apple/macbook-pro/10-1;
|
||||
apple-macbook-pro-11-1 = import ./apple/macbook-pro/11-1;
|
||||
apple-macbook-pro-11-4 = import ./apple/macbook-pro/11-4;
|
||||
apple-macbook-pro-11-5 = import ./apple/macbook-pro/11-5;
|
||||
apple-macbook-pro-12-1 = import ./apple/macbook-pro/12-1;
|
||||
apple-macbook-pro-14-1 = import ./apple/macbook-pro/14-1;
|
||||
|
|
@ -43,6 +44,7 @@
|
|||
asus-pro-ws-x570-ace = import ./asus/pro-ws-x570-ace;
|
||||
asus-rog-strix-g513im = import ./asus/rog-strix/g513im;
|
||||
asus-rog-strix-g533zw = import ./asus/rog-strix/g533zw;
|
||||
asus-rog-strix-g533q = import ./asus/rog-strix/g533q;
|
||||
asus-rog-strix-g713ie = import ./asus/rog-strix/g713ie;
|
||||
asus-rog-strix-g733qs = import ./asus/rog-strix/g733qs;
|
||||
asus-rog-strix-x570e = import ./asus/rog-strix/x570e;
|
||||
|
|
@ -65,6 +67,7 @@
|
|||
dell-e7240 = deprecated "1326" "dell-e7240" (import ./dell/e7240);
|
||||
dell-g3-3779 = import ./dell/g3/3779;
|
||||
dell-g3-3579 = import ./dell/g3/3579;
|
||||
dell-inspiron-3442 = import ./dell/inspiron/3442;
|
||||
dell-inspiron-14-5420 = import ./dell/inspiron/14-5420;
|
||||
dell-inspiron-5509 = import ./dell/inspiron/5509;
|
||||
dell-inspiron-5515 = import ./dell/inspiron/5515;
|
||||
|
|
@ -132,6 +135,7 @@
|
|||
framework-13-7040-amd = import ./framework/13-inch/7040-amd;
|
||||
framework-amd-ai-300-series = import ./framework/13-inch/amd-ai-300-series;
|
||||
framework-16-7040-amd = import ./framework/16-inch/7040-amd;
|
||||
framework-desktop-amd-ai-max-300-series = import ./framework/desktop/amd-ai-max-300-series;
|
||||
friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4;
|
||||
friendlyarm-nanopi-r5s = import ./friendlyarm/nanopi-r5s;
|
||||
focus-m2-gen1 = import ./focus/m2/gen1;
|
||||
|
|
@ -155,6 +159,7 @@
|
|||
hp-laptop-14s-dq2024nf = import ./hp/laptop/14s-dq2024nf;
|
||||
huawei-machc-wa = import ./huawei/machc-wa;
|
||||
hp-notebook-14-df0023 = import ./hp/notebook/14-df0023;
|
||||
intel-nuc-5i5ryb = import ./intel/nuc/5i5ryb;
|
||||
intel-nuc-8i7beh = import ./intel/nuc/8i7beh;
|
||||
lenovo-ideacentre-k330 = import ./lenovo/ideacentre/k330;
|
||||
lenovo-ideapad-14imh9 = import ./lenovo/ideapad/14imh9;
|
||||
|
|
@ -163,11 +168,14 @@
|
|||
lenovo-ideapad-15ach6 = import ./lenovo/ideapad/15ach6;
|
||||
lenovo-ideapad-16ach6 = import ./lenovo/ideapad/16ach6;
|
||||
lenovo-ideapad-16ahp9 = import ./lenovo/ideapad/16ahp9;
|
||||
lenovo-ideapad-s5-16iah8 = import ./lenovo/ideapad/16iah8;
|
||||
lenovo-ideapad-z510 = import ./lenovo/ideapad/z510;
|
||||
lenovo-ideapad-slim-5 = import ./lenovo/ideapad/slim-5;
|
||||
lenovo-ideapad-s145-15api = import ./lenovo/ideapad/s145-15api;
|
||||
lenovo-legion-15ach6 = import ./lenovo/legion/15ach6;
|
||||
lenovo-legion-15ach6h = import ./lenovo/legion/15ach6h;
|
||||
lenovo-legion-15ach6h-hybrid = import ./lenovo/legion/15ach6h/hybrid;
|
||||
lenovo-legion-15ach6h-nvidia = import ./lenovo/legion/15ach6h/nvidia;
|
||||
lenovo-legion-15arh05h = import ./lenovo/legion/15arh05h;
|
||||
lenovo-legion-16ach6h = import ./lenovo/legion/16ach6h;
|
||||
lenovo-legion-16ach6h-hybrid = import ./lenovo/legion/16ach6h/hybrid;
|
||||
|
|
@ -208,6 +216,7 @@
|
|||
lenovo-thinkpad-p14s-intel-gen5 = import ./lenovo/thinkpad/p14s/intel/gen5;
|
||||
lenovo-thinkpad-p16s-amd-gen1 = import ./lenovo/thinkpad/p16s/amd/gen1;
|
||||
lenovo-thinkpad-p16s-amd-gen2 = import ./lenovo/thinkpad/p16s/amd/gen2;
|
||||
lenovo-thinkpad-p16s-amd-gen4 = import ./lenovo/thinkpad/p16s/amd/gen4;
|
||||
lenovo-thinkpad-p16s-intel-gen2 = import ./lenovo/thinkpad/p16s/intel/gen2;
|
||||
lenovo-thinkpad-p43s = import ./lenovo/thinkpad/p43s;
|
||||
lenovo-thinkpad-p50 = import ./lenovo/thinkpad/p50;
|
||||
|
|
@ -220,6 +229,7 @@
|
|||
lenovo-thinkpad-t14-amd-gen3 = import ./lenovo/thinkpad/t14/amd/gen3;
|
||||
lenovo-thinkpad-t14-amd-gen4 = import ./lenovo/thinkpad/t14/amd/gen4;
|
||||
lenovo-thinkpad-t14-amd-gen5 = import ./lenovo/thinkpad/t14/amd/gen5;
|
||||
lenovo-thinkpad-t14-intel-gen6 = import ./lenovo/thinkpad/t14/intel/gen6;
|
||||
lenovo-thinkpad-t14s = import ./lenovo/thinkpad/t14s;
|
||||
lenovo-thinkpad-t14s-amd-gen1 = import ./lenovo/thinkpad/t14s/amd/gen1;
|
||||
lenovo-thinkpad-t14s-amd-gen4 = import ./lenovo/thinkpad/t14s/amd/gen4;
|
||||
|
|
@ -287,6 +297,7 @@
|
|||
lenovo-yoga-7-slim-gen8 = import ./lenovo/yoga/7/slim/gen8;
|
||||
letsnote-cf-lx4 = import ./panasonic/letsnote/cf-lx4;
|
||||
malibal-aon-s1-intel = import ./malibal/aon/s1;
|
||||
mechrevo-gm5hg0a = import ./mechrevo/GM5HG0A;
|
||||
microchip-icicle-kit = import ./microchip/icicle-kit;
|
||||
microsoft-surface-go = import ./microsoft/surface/surface-go;
|
||||
microsoft-surface-pro-intel = import ./microsoft/surface/surface-pro-intel;
|
||||
|
|
|
|||
|
|
@ -2,16 +2,13 @@
|
|||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop12.RPL.BIOS.firmware)
|
||||
|
|
|
|||
|
|
@ -4,4 +4,10 @@
|
|||
../common
|
||||
../../../common/cpu/intel
|
||||
];
|
||||
|
||||
# If this module isn't built into the kernel, we need to make sure it loads
|
||||
# before soc_button_array. Otherwise the tablet mode gpio doesn't work.
|
||||
# If correctly loaded, dmesg should show
|
||||
# input: gpio-keys as /devices/platform/INT33D3:00
|
||||
boot.initrd.kernelModules = [ "pinctrl_tigerlake" ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,4 +16,7 @@
|
|||
|
||||
# Needed for desktop environments to detect display orientation
|
||||
hardware.sensor.iio.enable = lib.mkDefault true;
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,16 +2,13 @@
|
|||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.Ryzen7040.BIOS.firmware)
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@ in
|
|||
../common/amd.nix
|
||||
../../../common/cpu/amd/raphael/igpu.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
hardware.framework.amd-7040.preventWakeOnAC = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
|
|
@ -30,6 +29,8 @@ in
|
|||
};
|
||||
|
||||
config = {
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Workaround applied upstream in Linux >=6.7 (on BIOS 03.03)
|
||||
# https://github.com/torvalds/linux/commit/a55bdad5dfd1efd4ed9ffe518897a21ca8e4e193
|
||||
services.udev.extraRules =
|
||||
|
|
|
|||
|
|
@ -2,14 +2,13 @@
|
|||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.RyzenAI300.BIOS.firmware)
|
||||
|
|
|
|||
|
|
@ -10,6 +10,17 @@
|
|||
../common
|
||||
../common/amd.nix
|
||||
];
|
||||
config.hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
|
||||
|
||||
config = {
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
|
||||
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
|
||||
|
||||
# suspend works with 6.15
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.15") (
|
||||
lib.mkDefault pkgs.linuxPackages_latest
|
||||
);
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,14 +2,13 @@
|
|||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.MTL.BIOS.firmware)
|
||||
|
|
|
|||
|
|
@ -11,6 +11,9 @@
|
|||
../common/intel.nix
|
||||
];
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Need at least 6.9 to make suspend properly
|
||||
# Specifically this patch: https://github.com/torvalds/linux/commit/073237281a508ac80ec025872ad7de50cfb5a28a
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.9") (
|
||||
|
|
@ -41,4 +44,6 @@
|
|||
''For Intel NPU support, set the option: hardware.enableRedistributableFirmware = true;''
|
||||
];
|
||||
|
||||
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||
lib.mkDefault "alsa_output.pci-0000_00_1f.3.analog-stereo";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,14 @@
|
|||
# [Framework Laptop 16](https://frame.work/)
|
||||
|
||||
## Updating Firmware
|
||||
The Framework Laptop 16 uses LVFS, so it can be updated via fwupd; see https://wiki.nixos.org/wiki/Fwupd for details
|
||||
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop16.Ryzen7040.BIOS.firmware)
|
||||
|
|
|
|||
|
|
@ -12,4 +12,6 @@
|
|||
../../../common/cpu/amd/raphael/igpu.nix
|
||||
];
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,12 +8,6 @@
|
|||
../../framework-tool.nix
|
||||
];
|
||||
|
||||
# Fix TRRS headphones missing a mic
|
||||
# https://community.frame.work/t/headset-microphone-on-linux/12387/3
|
||||
boot.extraModprobeConfig = lib.mkIf (lib.versionOlder config.boot.kernelPackages.kernel.version "6.6.8") ''
|
||||
options snd-hda-intel model=dell-headset-multi
|
||||
'';
|
||||
|
||||
# For fingerprint support
|
||||
services.fprintd.enable = lib.mkDefault true;
|
||||
|
||||
|
|
@ -50,4 +44,7 @@
|
|||
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
||||
AttrKeyboardIntegration=internal
|
||||
'';
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
|
|
|||
23
framework/desktop/amd-ai-max-300-series/README.md
Normal file
23
framework/desktop/amd-ai-max-300-series/README.md
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# [Framework Desktop](https://frame.work/desktop)
|
||||
|
||||
## Kernel version
|
||||
|
||||
The recommended version is 6.15 or newer, it has good GPU and also EC firmware support (for sensors and ARGB).
|
||||
The lowest recommended version is 6.14. It has good GPU support already.
|
||||
The absolute lowest that runs okay on headless systems is 6.11, but the GPU is not fully supported yet.
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Desktop.RyzenAIMax300.BIOS.firmware)
|
||||
20
framework/desktop/amd-ai-max-300-series/default.nix
Normal file
20
framework/desktop/amd-ai-max-300-series/default.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
../../../common/cpu/amd
|
||||
../../../common/cpu/amd/pstate.nix
|
||||
../../../common/gpu/amd
|
||||
../../../common/pc/ssd
|
||||
../../framework-tool.nix
|
||||
];
|
||||
|
||||
# 6.14 and above have good GPU support
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.14") (
|
||||
lib.mkDefault pkgs.linuxPackages_latest
|
||||
);
|
||||
}
|
||||
11
intel/nuc/5i5ryb/default.nix
Normal file
11
intel/nuc/5i5ryb/default.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ lib, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../../common/cpu/intel/broadwell
|
||||
../../../common/pc
|
||||
../../../common/pc/ssd
|
||||
];
|
||||
|
||||
services.thermald.enable = lib.mkDefault true;
|
||||
}
|
||||
|
|
@ -26,6 +26,10 @@
|
|||
# See https://wiki.archlinux.org/title/Dell_XPS_16_(9640)#Random_freezes
|
||||
"iommu.strict=1"
|
||||
"iommu.passthrough=1"
|
||||
|
||||
# Workaround: i915 0000:00:02.0: [drm] *ERROR* [CRTC:82:pipe A] flip_done timed out
|
||||
# See https://github.com/pop-os/pop/issues/3130
|
||||
"i915.dmc_firmware_path=\"\""
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
|||
5
lenovo/thinkpad/p16s/amd/gen4/default.nix
Normal file
5
lenovo/thinkpad/p16s/amd/gen4/default.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
../.
|
||||
];
|
||||
}
|
||||
9
lenovo/thinkpad/t14/intel/default.nix
Normal file
9
lenovo/thinkpad/t14/intel/default.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{ lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../.
|
||||
../../../../common/cpu/intel
|
||||
../../../../common/gpu/intel
|
||||
];
|
||||
}
|
||||
60
lenovo/thinkpad/t14/intel/gen6/default.nix
Normal file
60
lenovo/thinkpad/t14/intel/gen6/default.nix
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../.
|
||||
../../../../../common/cpu/intel/lunar-lake
|
||||
];
|
||||
|
||||
# T14 Gen 6 uses Intel Core Ultra processors (Lunar Lake architecture)
|
||||
# with integrated Intel Arc graphics
|
||||
# The lunar-lake module already includes appropriate GPU support
|
||||
|
||||
# Ensure modern kernel for full Lunar Lake support
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.8") pkgs.linuxPackages_latest;
|
||||
|
||||
# TODO: Looking for feedback on these kernel parameters for T14 Gen 6
|
||||
# Force use of the thinkpad_acpi driver for backlight control
|
||||
# This allows the backlight save/load systemd service to work
|
||||
boot.kernelParams = [
|
||||
"acpi_backlight=native"
|
||||
# TODO: Looking for feedback - touchpad fix needed for proper click registration on some T14 models
|
||||
"psmouse.synaptics_intertouch=0"
|
||||
];
|
||||
|
||||
# TODO: Looking for feedback - modern Intel CPUs don't typically need throttled service
|
||||
# which can interfere with newer power management on Lunar Lake
|
||||
services.throttled.enable = lib.mkDefault false;
|
||||
|
||||
# Enable fingerprint reader support
|
||||
# NOTE: PAM configuration should be done in host config to avoid login issues
|
||||
# See: https://github.com/NixOS/nixpkgs/issues/171136
|
||||
services.fprintd.enable = lib.mkDefault true;
|
||||
|
||||
# For complete fingerprint authentication in GNOME, add the following to your host config:
|
||||
#
|
||||
# security.pam.services = {
|
||||
# # Enable fingerprint authentication for sudo
|
||||
# sudo.fprintAuth = lib.mkDefault true;
|
||||
#
|
||||
# # Enable fingerprint authentication for su
|
||||
# su.fprintAuth = lib.mkDefault true;
|
||||
#
|
||||
# # Enable fingerprint authentication for screen unlock
|
||||
# xscreensaver.fprintAuth = lib.mkDefault true;
|
||||
#
|
||||
# # WARNING: login.fprintAuth may break GDM password authentication
|
||||
# # Only enable if you understand the risks:
|
||||
# # login.fprintAuth = lib.mkDefault true;
|
||||
# };
|
||||
#
|
||||
# After configuration:
|
||||
# 1. Rebuild your system
|
||||
# 2. Enroll fingerprint: sudo fprintd-enroll $USER
|
||||
# 3. Test sudo and screen unlock with fingerprint
|
||||
}
|
||||
|
|
@ -6,8 +6,8 @@
|
|||
../../../../common/pc/ssd
|
||||
];
|
||||
|
||||
# touchpad, wifi, and bluetooth do not work before 6.12
|
||||
config.boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.12") (
|
||||
# device will not boot in kernel versions older than 6.15
|
||||
config.boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.15") (
|
||||
lib.mkDefault pkgs.linuxPackages_latest
|
||||
);
|
||||
}
|
||||
|
|
|
|||
35
mechrevo/GM5HG0A/default.nix
Normal file
35
mechrevo/GM5HG0A/default.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
../../common/cpu/amd
|
||||
../../common/cpu/amd/pstate.nix
|
||||
../../common/cpu/amd/zenpower.nix
|
||||
../../common/cpu/amd/raphael/igpu.nix
|
||||
../../common/gpu/amd
|
||||
../../common/gpu/nvidia
|
||||
../../common/gpu/nvidia/ada-lovelace
|
||||
../../common/gpu/nvidia/prime.nix
|
||||
../../common/hidpi.nix
|
||||
../../common/pc/laptop
|
||||
../../common/pc/ssd
|
||||
];
|
||||
|
||||
# Resolve the issue of sleep mode being awakened by GPIO 6.
|
||||
# https://nova.gal/blog/%E6%9C%BA%E6%A2%B0%E9%9D%A9%E5%91%BD%E7%BF%BC%E9%BE%99-15Pro-%E8%BF%81%E7%A7%BB-Linux-%E9%81%87%E5%88%B0%E7%9A%84%E4%B8%80%E4%BA%9B%E9%97%AE%E9%A2%98#%E6%97%A0%E6%B3%95%E4%BC%91%E7%9C%A0
|
||||
# https://lore.kernel.org/all/20221012221028.4817-1-mario.limonciello@amd.com/T/
|
||||
boot.kernelParams = [ "gpiolib_acpi.ignore_interrupt=AMDI0030:00@6" ];
|
||||
|
||||
hardware.nvidia = {
|
||||
primeBatterySaverSpecialisation = lib.mkDefault true;
|
||||
modesetting.enable = lib.mkDefault true;
|
||||
prime = {
|
||||
amdgpuBusId = "PCI:6:0:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -103,6 +103,23 @@ with the `ath10k` QCA6174 Wifi device.
|
|||
This was fixed in Nov 2021:
|
||||
- https://github.com/linux-surface/linux-surface/issues/542#issuecomment-976995453
|
||||
|
||||
## Troubleshooting IPU6
|
||||
|
||||
While the camera patches are applied in `common`, camera functionality is still WIP for several devices (see [https://github.com/linux-surface/linux-surface/wiki/Camera-Support](https://github.com/linux-surface/linux-surface/wiki/Camera-Support)). As a result they may break some userspace tools on unsupported devices, notably such as Wireplumber. An example fix for such userspace issues is shown below.
|
||||
```
|
||||
services.pipewire.wireplumber.extraConfig = {
|
||||
"50-surface-disable-libcamera.conf" = ''
|
||||
monitor.libcamera = { enabled = false }
|
||||
wireplumber.profiles = {
|
||||
main = {
|
||||
monitor.libcamera = disabled
|
||||
hardware.video-capture = disabled
|
||||
}
|
||||
}
|
||||
'';
|
||||
};
|
||||
```
|
||||
|
||||
### Background:
|
||||
|
||||
With the older firmware, you would see messages like "Can't ping firmware".
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ let
|
|||
if kernelVersion == "longterm" then
|
||||
"6.12.19"
|
||||
else if kernelVersion == "stable" then
|
||||
"6.15.3"
|
||||
"6.15.9"
|
||||
else
|
||||
abort "Invalid kernel version: ${kernelVersion}";
|
||||
|
||||
|
|
@ -28,7 +28,7 @@ let
|
|||
if kernelVersion == "longterm" then
|
||||
"sha256-1zvwV77ARDSxadG2FkGTb30Ml865I6KB8y413U3MZTE="
|
||||
else if kernelVersion == "stable" then
|
||||
"sha256-ErUMiZJUONnNc4WgyvycQz5lYqxd8AohiJ/On1SNZbA="
|
||||
"sha256-6U86+FSSMC96gZRBRY+AvKCtmRLlpMg8aZ/zxjxSlX0="
|
||||
else
|
||||
abort "Invalid kernel version: ${kernelVersion}";
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
{
|
||||
name = "microsoft-surface-patches-linux-${version}";
|
||||
patch = null;
|
||||
extraStructuredConfig = with kernel; {
|
||||
structuredExtraConfig = with kernel; {
|
||||
STAGING_MEDIA = yes;
|
||||
|
||||
##
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
{
|
||||
name = "microsoft-surface-patches-linux-${version}";
|
||||
patch = null;
|
||||
extraStructuredConfig = with kernel; {
|
||||
structuredExtraConfig = with kernel; {
|
||||
STAGING_MEDIA = yes;
|
||||
##
|
||||
## Surface Aggregator Module
|
||||
|
|
|
|||
|
|
@ -37,6 +37,9 @@
|
|||
"reset-raspberrypi" # required for vl805 firmware to load
|
||||
];
|
||||
|
||||
# Allow building kernel
|
||||
initrd.systemd.tpm2.enable = false;
|
||||
|
||||
loader = {
|
||||
grub.enable = lib.mkDefault false;
|
||||
generic-extlinux-compatible.enable = lib.mkDefault true;
|
||||
|
|
|
|||
|
|
@ -23,10 +23,16 @@ in
|
|||
Number of CSI lanes available
|
||||
'';
|
||||
};
|
||||
media-controller = lib.mkEnableOption ''
|
||||
Enable support for the Media Controller API.
|
||||
|
||||
See https://forums.raspberrypi.com/viewtopic.php?t=322076 for details
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
hardware.deviceTree.filter = "bcm2711-rpi-4*.dtb";
|
||||
hardware.deviceTree.overlays = [
|
||||
{
|
||||
name = "tc358743-overlay";
|
||||
|
|
@ -71,6 +77,15 @@ in
|
|||
__overlay__ {
|
||||
status = "okay";
|
||||
|
||||
${
|
||||
if cfg.media-controller then
|
||||
""
|
||||
else
|
||||
''
|
||||
compatible = "brcm,bcm2835-unicam-legacy";
|
||||
''
|
||||
}
|
||||
|
||||
port {
|
||||
|
||||
endpoint {
|
||||
|
|
|
|||
|
|
@ -9,9 +9,16 @@
|
|||
../.
|
||||
../../common/gpu/nvidia/prime.nix
|
||||
../../common/gpu/nvidia/ampere
|
||||
../../common/cpu/intel/raptor-lake
|
||||
../../common/pc/laptop
|
||||
../../common/pc/ssd
|
||||
];
|
||||
|
||||
boot.initrd.kernelModules = [ "nvidia" ];
|
||||
# For offloading, `modesetting` is needed
|
||||
services.xserver.videoDrivers = [
|
||||
"modesetting"
|
||||
"nvidia"
|
||||
];
|
||||
|
||||
hardware.graphics = {
|
||||
enable = lib.mkDefault true;
|
||||
|
|
@ -20,8 +27,6 @@
|
|||
|
||||
hardware.nvidia = {
|
||||
|
||||
# modesetting.enable = lib.mkDefault true;
|
||||
|
||||
powerManagement.finegrained = lib.mkDefault true;
|
||||
|
||||
prime = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue