mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-08 11:36:10 +01:00
Compare commits
198 commits
d2c87a8e19
...
e60c66bd0b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e60c66bd0b | ||
|
|
e4c6ee69e7 | ||
|
|
ae91411396 | ||
|
|
d48e8f0e16 | ||
|
|
eea20ba3b0 | ||
|
|
2e85ae1b70 | ||
|
|
8b72f74d80 | ||
|
|
655a6da8a8 | ||
|
|
bffe23e699 | ||
|
|
5ad68c5dff | ||
|
|
fad92f5f57 | ||
|
|
f2e49f279c | ||
|
|
e598a4ca2f | ||
|
|
2567706185 | ||
|
|
7467f155fc | ||
|
|
ddb27b7bba | ||
|
|
13cc234e37 | ||
|
|
a2bc09823a | ||
|
|
86d9291cc3 | ||
|
|
8650454db6 | ||
|
|
11ea8b8477 | ||
|
|
a3576f0f3c | ||
|
|
fe21eda733 | ||
|
|
43ffe9ac82 | ||
|
|
3beac2438b | ||
|
|
b09586b101 | ||
|
|
e07b1618c3 | ||
|
|
e214e292a6 | ||
|
|
779c16f604 | ||
|
|
6ec1e82182 | ||
|
|
4bafcc2454 | ||
|
|
46ab381a8c | ||
|
|
ec7bf039ca | ||
|
|
e11482075d | ||
|
|
2379bc4099 | ||
|
|
688ee555de | ||
|
|
8b405e9c6d | ||
|
|
34b7229b95 | ||
|
|
46f9982c9b | ||
|
|
9c0ee5dfa1 | ||
|
|
7667e19678 | ||
|
|
b27995044c | ||
|
|
d6645c340e | ||
|
|
c4fe135227 | ||
|
|
9ed85f8afe | ||
|
|
c816590dca | ||
|
|
eb9e8e10ac | ||
|
|
156fbb62a9 | ||
|
|
c52ea60901 | ||
|
|
d232c6f9cc | ||
|
|
a8bbda8911 | ||
|
|
d0955d227d | ||
|
|
3441b5242a | ||
|
|
0257a0aa58 | ||
|
|
e087756cf4 | ||
|
|
a74f5ce8c6 | ||
|
|
dd4227bb1b | ||
|
|
30bf4efeda | ||
|
|
081542ae22 | ||
|
|
ba70d20716 | ||
|
|
28c41d0a5d | ||
|
|
c8b6a49ebf | ||
|
|
895e314e4b | ||
|
|
0582a93516 | ||
|
|
1243f78ca9 | ||
|
|
5e57f28e6a | ||
|
|
095a445675 | ||
|
|
0e9dc7cf61 | ||
|
|
27581273c2 | ||
|
|
170ff93c86 | ||
|
|
76a314765d | ||
|
|
4ba28b48c8 | ||
|
|
3caaf86f9d | ||
|
|
67a709cfe5 | ||
|
|
0632a5e10f | ||
|
|
4c38a024fa | ||
|
|
82e5fcb58c | ||
|
|
f89c620d3d | ||
|
|
e049c10c3e | ||
|
|
4100cffdbe | ||
|
|
a98f1a2b75 | ||
|
|
536ac3ab4b | ||
|
|
40dffd02e3 | ||
|
|
0c55f0f776 | ||
|
|
11b2a10c7b | ||
|
|
7e40faf569 | ||
|
|
295e0f92ff | ||
|
|
410a17733a | ||
|
|
a6cc50d994 | ||
|
|
af3dd1cb20 | ||
|
|
e9db02252a | ||
|
|
7e56e39db4 | ||
|
|
d9b0f10475 | ||
|
|
ba6fab2976 | ||
|
|
da1b459c17 | ||
|
|
003318603f | ||
|
|
ad6d270a9a | ||
|
|
c362a52136 | ||
|
|
4091b501aa | ||
|
|
4a39585546 | ||
|
|
71841ee366 | ||
|
|
7d524775bf | ||
|
|
2dbfb943a0 | ||
|
|
2f7f1dc6ec | ||
|
|
47eb4856cf | ||
|
|
b403970fdf | ||
|
|
81129e6f19 | ||
|
|
72d5560fb7 | ||
|
|
321cb2173b | ||
|
|
ea1e368e75 | ||
|
|
6f97793214 | ||
|
|
6b7941884f | ||
|
|
f4a07aa370 | ||
|
|
7fe67c44d1 | ||
|
|
c69cdbed34 | ||
|
|
31b333f6e7 | ||
|
|
7c75c09ab6 | ||
|
|
c5231106d4 | ||
|
|
bfce4a25eb | ||
|
|
232f44c2d5 | ||
|
|
c38b907bd4 | ||
|
|
65b725a43e | ||
|
|
fe8baa10f9 | ||
|
|
74dc6125d0 | ||
|
|
e903fd796d | ||
|
|
682c8615f1 | ||
|
|
f08ec094d3 | ||
|
|
21030ae98d | ||
|
|
3e10646c9b | ||
|
|
a57aded40e | ||
|
|
f3444245a7 | ||
|
|
9691e6ee8a | ||
|
|
bfda6f34d3 | ||
|
|
59e2d82cc2 | ||
|
|
6439a46c7c | ||
|
|
cfb36e4feb | ||
|
|
a65b650d69 | ||
|
|
048c7bbca5 | ||
|
|
3a4da5f8c1 | ||
|
|
cd3d24b038 | ||
|
|
c13241f1c0 | ||
|
|
cc896f1f7e | ||
|
|
8137ca755e | ||
|
|
ebd8f57cd9 | ||
|
|
5e741b56dc | ||
|
|
17113fc124 | ||
|
|
0413405b45 | ||
|
|
e3e3717d85 | ||
|
|
2d512d0f4e | ||
|
|
6287c9e15f | ||
|
|
3dac8a8725 | ||
|
|
c006c5a59b | ||
|
|
7dd36b62fc | ||
|
|
292aeb6fd6 | ||
|
|
c4af46bb6a | ||
|
|
79649965c5 | ||
|
|
680761f019 | ||
|
|
139a6586ed | ||
|
|
aaecdd8d3b | ||
|
|
26ed7a0d4b | ||
|
|
cd88704818 | ||
|
|
df02f4f16a | ||
|
|
659b41d59c | ||
|
|
9157552825 | ||
|
|
8972e6538b | ||
|
|
9368056b73 | ||
|
|
547c96d797 | ||
|
|
a872d98539 | ||
|
|
d99ca4e5f4 | ||
|
|
26c9d90663 | ||
|
|
f30fc54b0e | ||
|
|
c92f8fc536 | ||
|
|
28fc41508c | ||
|
|
85070738e9 | ||
|
|
1f7ed6211f | ||
|
|
37d0301b3c | ||
|
|
c46bd952e9 | ||
|
|
25fdfb36a7 | ||
|
|
19b899ead6 | ||
|
|
b90855f92a | ||
|
|
cc66fddc6c | ||
|
|
e792f2f4ac | ||
|
|
5efc6e9418 | ||
|
|
2b75e96d0d | ||
|
|
d1bfa8f6cc | ||
|
|
95ee2804d7 | ||
|
|
8ea54c025e | ||
|
|
9410081079 | ||
|
|
7ced9122cf | ||
|
|
323366c51c | ||
|
|
6015af43f3 | ||
|
|
41f2cad3f9 | ||
|
|
1828627b08 | ||
|
|
497ae1357f | ||
|
|
d2a1b158ac | ||
|
|
3b622ae6e6 | ||
|
|
a724614b86 | ||
|
|
66e88bdcaa |
182 changed files with 14941 additions and 1430 deletions
8
.github/workflows/test.yml
vendored
8
.github/workflows/test.yml
vendored
|
|
@ -9,13 +9,13 @@ jobs:
|
||||||
nixfmt:
|
nixfmt:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: cachix/install-nix-action@v31
|
- uses: cachix/install-nix-action@v31
|
||||||
- run: cd tests && nix fmt .. -- --fail-on-change
|
- run: nix build .#checks.x86_64-linux.formatting
|
||||||
tests:
|
tests:
|
||||||
needs: nixfmt
|
needs: nixfmt
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: cachix/install-nix-action@v31
|
- uses: cachix/install-nix-action@v31
|
||||||
- run: nix run ./tests#run .
|
- run: nix run .#run-tests
|
||||||
|
|
|
||||||
|
|
@ -11,4 +11,4 @@ purism/librem/13v3 @yegortimoshenko
|
||||||
system76/darp6 @khumba
|
system76/darp6 @khumba
|
||||||
framework @emiller88
|
framework @emiller88
|
||||||
tuxedo/pulse/15/gen2 @trueNAHO
|
tuxedo/pulse/15/gen2 @trueNAHO
|
||||||
tuxedo/pulse/14/gen3 @gabyx @britter @trueNAHO
|
tuxedo/pulse/14/gen3 @gabyx @britter
|
||||||
|
|
|
||||||
|
|
@ -14,8 +14,9 @@ For example:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{ lib }: {
|
{ lib }: {
|
||||||
# Using mkDefault, because the user might want to disable tlp
|
# Using mkDefault, because the user might want to disable power-profiles-daemon
|
||||||
services.tlp.enable = lib.mkDefault true;
|
services.power-profiles-daemon.enable = lib.mkDefault true;
|
||||||
|
|
||||||
# No need to use mkDefault, because the setting will merge with the user's setting
|
# No need to use mkDefault, because the setting will merge with the user's setting
|
||||||
boot.kernelModules = [ "tmp_smapi" ];
|
boot.kernelModules = [ "tmp_smapi" ];
|
||||||
}
|
}
|
||||||
|
|
@ -42,7 +43,7 @@ Link the profile in the table in README.md and in flake.nix.
|
||||||
|
|
||||||
## 3. Testing
|
## 3. Testing
|
||||||
|
|
||||||
Run `nix run ./tests#run .` to evaluate all hardware profiles.
|
Run `nix run .#run-tests` to evaluate all hardware profiles.
|
||||||
Because profiles can only be tested with the appropriate hardware, quality
|
Because profiles can only be tested with the appropriate hardware, quality
|
||||||
assurance is up to *you*.
|
assurance is up to *you*.
|
||||||
|
|
||||||
|
|
|
||||||
692
README.md
692
README.md
|
|
@ -84,335 +84,365 @@ All contributors and users are welcome to join!
|
||||||
|
|
||||||
See code for all available configurations.
|
See code for all available configurations.
|
||||||
|
|
||||||
| Model | Path | Flake Module |
|
| Model | Path | Flake Module |
|
||||||
| --------------------------------------------------------------------------------- | ------------------------------------------------------- | ---------------------------------- |
|
| --------------------------------------------------------------------------------- | ------------------------------------------------------- | -------------------------------------- |
|
||||||
| [Acer Aspire 4810T](acer/aspire/4810t) | `<nixos-hardware/acer/aspire/4810t>` | `acer-aspire-4810t` |
|
| [Acer Aspire 4810T](acer/aspire/4810t) | `<nixos-hardware/acer/aspire/4810t>` | `acer-aspire-4810t` |
|
||||||
| [Airis N990](airis/n990) | `<nixos-hardware/airis/n990>` | `airis-n990` |
|
| [Airis N990](airis/n990) | `<nixos-hardware/airis/n990>` | `airis-n990` |
|
||||||
| [Apple iMac 14.2](apple/imac/14-2) | `<nixos-hardware/apple/imac/14-2>` | `apple-imac-14-2` |
|
| [Apple iMac 14.2](apple/imac/14-2) | `<nixos-hardware/apple/imac/14-2>` | `apple-imac-14-2` |
|
||||||
| [Apple iMac 18.2](apple/imac/18-2) | `<nixos-hardware/apple/imac/18-2>` | `apple-imac-18-2` |
|
| [Apple iMac 18.2](apple/imac/18-2) | `<nixos-hardware/apple/imac/18-2>` | `apple-imac-18-2` |
|
||||||
| [Apple MacBook Air 3,X](apple/macbook-air/3) | `<nixos-hardware/apple/macbook-air/3>` | `apple-macbook-air-3` |
|
| [Apple MacBook Air 3,X](apple/macbook-air/3) | `<nixos-hardware/apple/macbook-air/3>` | `apple-macbook-air-3` |
|
||||||
| [Apple MacBook Air 4,X](apple/macbook-air/4) | `<nixos-hardware/apple/macbook-air/4>` | `apple-macbook-air-4` |
|
| [Apple MacBook Air 4,X](apple/macbook-air/4) | `<nixos-hardware/apple/macbook-air/4>` | `apple-macbook-air-4` |
|
||||||
| [Apple MacBook Air 6,X](apple/macbook-air/6) | `<nixos-hardware/apple/macbook-air/6>` | `apple-macbook-air-6` |
|
| [Apple MacBook Air 5,X](apple/macbook-air/5) | `<nixos-hardware/apple/macbook-air/5>` | `apple-macbook-air-5` |
|
||||||
| [Apple MacBook Air 7,X](apple/macbook-air/7) | `<nixos-hardware/apple/macbook-air/7>` | `apple-macbook-air-7` |
|
| [Apple MacBook Air 6,X](apple/macbook-air/6) | `<nixos-hardware/apple/macbook-air/6>` | `apple-macbook-air-6` |
|
||||||
| [Apple MacBook Pro 8,1](apple/macbook-pro/8-1) | `<nixos-hardware/apple/macbook-pro/8-1>` | `apple-macbook-pro-8-1` |
|
| [Apple MacBook Air 7,X](apple/macbook-air/7) | `<nixos-hardware/apple/macbook-air/7>` | `apple-macbook-air-7` |
|
||||||
| [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 8,1](apple/macbook-pro/8-1) | `<nixos-hardware/apple/macbook-pro/8-1>` | `apple-macbook-pro-8-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 10,1](apple/macbook-pro/10-1) | `<nixos-hardware/apple/macbook-pro/10-1>` | `apple-macbook-pro-10-1` |
|
||||||
| [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 11,1](apple/macbook-pro/11-1) | `<nixos-hardware/apple/macbook-pro/11-1>` | `apple-macbook-pro-11-1` |
|
||||||
| [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 11,4](apple/macbook-pro/11-4) | `<nixos-hardware/apple/macbook-pro/11-4>` | `apple-macbook-pro-11-4` |
|
||||||
| [Apple MacBook Pro 14,1](apple/macbook-pro/14-1) | `<nixos-hardware/apple/macbook-pro/14-1>` | `apple-macbook-pro-14-1` |
|
| [Apple MacBook Pro 11,5](apple/macbook-pro/11-5) | `<nixos-hardware/apple/macbook-pro/11-5>` | `apple-macbook-pro-11-5` |
|
||||||
| [Apple MacMini (2010, Intel, Nvidia)](apple/macmini/4) | `<nixos-hardware/apple/macmini/4>` | `apple-macmini-4-1` |
|
| [Apple MacBook Pro 12,1](apple/macbook-pro/12-1) | `<nixos-hardware/apple/macbook-pro/12-1>` | `apple-macbook-pro-12-1` |
|
||||||
| [Apple Macs with a T2 Chip](apple/t2) | `<nixos-hardware/apple/t2>` | `apple-t2` |
|
| [Apple MacBook Pro 14,1](apple/macbook-pro/14-1) | `<nixos-hardware/apple/macbook-pro/14-1>` | `apple-macbook-pro-14-1` |
|
||||||
| [Aoostar R1 N100](aoostar/r1/n100) | `<nixos-hardware/aoostar/r1/n100>` | `aoostar-r1-n100` |
|
| [Apple MacMini (2010, Intel, Nvidia)](apple/macmini/4) | `<nixos-hardware/apple/macmini/4>` | `apple-macmini-4-1` |
|
||||||
| [Asus Pro WS X570-ACE](asus/pro-ws-x570-ace) | `<nixos-hardware/asus/pro-ws-x570-ace>` | `asus-pro-ws-x570-ace` |
|
| [Apple Macs with a T2 Chip](apple/t2) | `<nixos-hardware/apple/t2>` | `apple-t2` |
|
||||||
| [Asus ROG Ally RC71L (2023)](asus/ally/rc71l) | `<nixos-hardware/asus/ally/rc71l>` | `asus-ally-rc71l` |
|
| [Aoostar R1 N100](aoostar/r1/n100) | `<nixos-hardware/aoostar/r1/n100>` | `aoostar-r1-n100` |
|
||||||
| [Asus ROG Flow X13 GV302X\* (2023)](asus/flow/gv302x/amdgpu) | `<nixos-hardware/asus/flow/gv302x/amdgpu>` | `asus-flow-gv302x-amdgpu` |
|
| [Asus Pro WS X570-ACE](asus/pro-ws-x570-ace) | `<nixos-hardware/asus/pro-ws-x570-ace>` | `asus-pro-ws-x570-ace` |
|
||||||
| [Asus ROG Flow X13 GV302X\* (2023)](asus/flow/gv302x/nvidia) | `<nixos-hardware/asus/flow/gv302x/nvidia>` | `asus-flow-gv302x-nvidia` |
|
| [Asus ROG Ally RC71L (2023)](asus/ally/rc71l) | `<nixos-hardware/asus/ally/rc71l>` | `asus-ally-rc71l` |
|
||||||
| [Asus ROG Strix G513IM](asus/rog-strix/g513im) | `<nixos-hardware/asus/rog-strix/g513im>` | `asus-rog-strix-g513im` |
|
| [Asus ROG Flow X13 GV302X\* (2023)](asus/flow/gv302x/amdgpu) | `<nixos-hardware/asus/flow/gv302x/amdgpu>` | `asus-flow-gv302x-amdgpu` |
|
||||||
| [Asus ROG Strix G533ZW](asus/rog-strix/g533zw) | `<nixos-hardware/asus/rog-strix/g533zw>` | `asus-rog-strix-g533zw` |
|
| [Asus ROG Flow X13 GV302X\* (2023)](asus/flow/gv302x/nvidia) | `<nixos-hardware/asus/flow/gv302x/nvidia>` | `asus-flow-gv302x-nvidia` |
|
||||||
| [Asus ROG Strix G713IE](asus/rog-strix/g713ie) | `<nixos-hardware/asus/rog-strix/g713ie>` | `asus-rog-strix-g713ie` |
|
| [Asus ROG GL552VW](asus/rog-gl552vw) | `<nixos-hardware/asus/rog-gl552vw>` | `asus-rog-gl552vw` |
|
||||||
| [Asus ROG Strix G733QS](asus/rog-strix/g733qs) | `<nixos-hardware/asus/rog-strix/g733qs>` | `asus-rog-strix-g733qs` |
|
| [Asus ROG Strix G513IM](asus/rog-strix/g513im) | `<nixos-hardware/asus/rog-strix/g513im>` | `asus-rog-strix-g513im` |
|
||||||
| [Asus ROG Strix X570-E GAMING](asus/rog-strix/x570e) | `<nixos-hardware/asus/rog-strix/x570e>` | `asus-rog-strix-x570e` |
|
| [Asus ROG Strix G533ZW](asus/rog-strix/g533zw) | `<nixos-hardware/asus/rog-strix/g533zw>` | `asus-rog-strix-g533zw` |
|
||||||
| [Asus ROG Zephyrus G14 GA401](asus/zephyrus/ga401) | `<nixos-hardware/asus/zephyrus/ga401>` | `asus-zephyrus-ga401` |
|
| [Asus ROG Strix G533Q](asus/rog-strix/g533q) | `<nixos-hardware/asus/rog-strix/g533q>` | `asus-rog-strix-g533zw` |
|
||||||
| [Asus ROG Zephyrus G14 GA402](asus/zephyrus/ga402) | `<nixos-hardware/asus/zephyrus/ga402>` | `asus-zephyrus-ga402` |
|
| [Asus ROG Strix G713IE](asus/rog-strix/g713ie) | `<nixos-hardware/asus/rog-strix/g713ie>` | `asus-rog-strix-g713ie` |
|
||||||
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/amdgpu) | `<nixos-hardware/asus/zephyrus/ga402x/amdgpu>` | `asus-zephyrus-ga402x-amdgpu` |
|
| [Asus ROG Strix G733QS](asus/rog-strix/g733qs) | `<nixos-hardware/asus/rog-strix/g733qs>` | `asus-rog-strix-g733qs` |
|
||||||
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/nvidia) | `<nixos-hardware/asus/zephyrus/ga402x/nvidia>` | `asus-zephyrus-ga402x-nvidia` |
|
| [Asus ROG Strix X570-E GAMING](asus/rog-strix/x570e) | `<nixos-hardware/asus/rog-strix/x570e>` | `asus-rog-strix-x570e` |
|
||||||
| [Asus ROG Zephyrus G15 GA502](asus/zephyrus/ga502) | `<nixos-hardware/asus/zephyrus/ga502>` | `asus-zephyrus-ga502` |
|
| [Asus ROG Zephyrus G14 GA401](asus/zephyrus/ga401) | `<nixos-hardware/asus/zephyrus/ga401>` | `asus-zephyrus-ga401` |
|
||||||
| [Asus ROG Zephyrus G15 GA503](asus/zephyrus/ga503) | `<nixos-hardware/asus/zephyrus/ga503>` | `asus-zephyrus-ga503` |
|
| [Asus ROG Zephyrus G14 GA402](asus/zephyrus/ga402) | `<nixos-hardware/asus/zephyrus/ga402>` | `asus-zephyrus-ga402` |
|
||||||
| [Asus ROG Zephyrus G16 GU605MY](asus/zephyrus/gu605my) | `<nixos-hardware/asus/zephyrus/gu605my>` | `asus-zephyrus-gu605my` |
|
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/amdgpu) | `<nixos-hardware/asus/zephyrus/ga402x/amdgpu>` | `asus-zephyrus-ga402x-amdgpu` |
|
||||||
| [Asus ROG Zephyrus M16 GU603H](asus/zephyrus/gu603h) | `<nixos-hardware/asus/zephyrus/gu603h>` | `asus-zephyrus-gu603h` |
|
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/nvidia) | `<nixos-hardware/asus/zephyrus/ga402x/nvidia>` | `asus-zephyrus-ga402x-nvidia` |
|
||||||
| [Asus TUF FX504GD](asus/fx504gd) | `<nixos-hardware/asus/fx504gd>` | `asus-fx504gd` |
|
| [Asus ROG Zephyrus G15 GA502](asus/zephyrus/ga502) | `<nixos-hardware/asus/zephyrus/ga502>` | `asus-zephyrus-ga502` |
|
||||||
| [Asus TUF FX506HM](asus/fx506hm) | `<nixos-hardware/asus/fx506hm>` | `asus-fx506hm` |
|
| [Asus ROG Zephyrus G15 GA503](asus/zephyrus/ga503) | `<nixos-hardware/asus/zephyrus/ga503>` | `asus-zephyrus-ga503` |
|
||||||
| [Asus TUF FA506IC](asus/fa506ic) | `<nixos-hardware/asus/fa506ic>` | `asus-fa506ic` |
|
| [Asus ROG Zephyrus G16 GU605MY](asus/zephyrus/gu605my) | `<nixos-hardware/asus/zephyrus/gu605my>` | `asus-zephyrus-gu605my` |
|
||||||
| [Asus TUF FA507RM](asus/fa507rm) | `<nixos-hardware/asus/fa507rm>` | `asus-fa507rm` |
|
| [Asus ROG Zephyrus M16 GU603H](asus/zephyrus/gu603h) | `<nixos-hardware/asus/zephyrus/gu603h>` | `asus-zephyrus-gu603h` |
|
||||||
| [Asus TUF FA507NV](asus/fa507nv) | `<nixos-hardware/asus/fa507nv>` | `asus-fa507nv` |
|
| [Asus TUF FX504GD](asus/fx504gd) | `<nixos-hardware/asus/fx504gd>` | `asus-fx504gd` |
|
||||||
| [Asus Zenbook Duo 14 UX481](asus/zenbook/ux481/intelgpu/) | `<nixos-hardware/asus/zenbook/ux481/intelgpu>` | `asus-zenbook-ux481-intelgpu` |
|
| [Asus TUF FX506HM](asus/fx506hm) | `<nixos-hardware/asus/fx506hm>` | `asus-fx506hm` |
|
||||||
| [Asus Zenbook Duo 14 UX481](asus/zenbook/ux481/nvidia/) | `<nixos-hardware/asus/zenbook/ux481/nvidia>` | `asus-zenbook-ux481-nvidia` |
|
| [Asus TUF FA506IC](asus/fa506ic) | `<nixos-hardware/asus/fa506ic>` | `asus-fa506ic` |
|
||||||
| [Asus Zenbook Flip S13 UX371](asus/zenbook/ux371/) | `<nixos-hardware/asus/zenbook/ux371>` | `asus-zenbook-ux371` |
|
| [Asus TUF FA507RM](asus/fa507rm) | `<nixos-hardware/asus/fa507rm>` | `asus-fa507rm` |
|
||||||
| [Asus Zenbook Pro 15 UX535](asus/zenbook/ux535/) | `<nixos-hardware/asus/zenbook/ux535>` | `asus-zenbook-ux535` |
|
| [Asus TUF FA507NV](asus/fa507nv) | `<nixos-hardware/asus/fa507nv>` | `asus-fa507nv` |
|
||||||
| [BeagleBoard PocketBeagle](beagleboard/pocketbeagle) | `<nixos-hardware/beagleboard/pocketbeagle>` | `beagleboard-pocketbeagle` |
|
| [Asus Zenbook Duo 14 UX481](asus/zenbook/ux481/intelgpu/) | `<nixos-hardware/asus/zenbook/ux481/intelgpu>` | `asus-zenbook-ux481-intelgpu` |
|
||||||
| [Chuwi MiniBook X](chuwi/minibook-x) | `<nixos-hardware/chuwi/minibook-x>` | `chuwi-minibook-x` |
|
| [Asus Zenbook Duo 14 UX481](asus/zenbook/ux481/nvidia/) | `<nixos-hardware/asus/zenbook/ux481/nvidia>` | `asus-zenbook-ux481-nvidia` |
|
||||||
| [Deciso DEC series](deciso/dec) | `<nixos-hardware/deciso/dec>` | `deciso-dec` |
|
| [Asus Zenbook Flip S13 UX371](asus/zenbook/ux371/) | `<nixos-hardware/asus/zenbook/ux371>` | `asus-zenbook-ux371` |
|
||||||
| [Dell G3 3779](dell/g3/3779) | `<nixos-hardware/dell/g3/3779>` | `dell-g3-3779` |
|
| [Asus Zenbook Pro 15 UX535](asus/zenbook/ux535/) | `<nixos-hardware/asus/zenbook/ux535>` | `asus-zenbook-ux535` |
|
||||||
| [Dell G3 3579](dell/g3/3579) | `<nixos-hardware/dell/g3/3579>` | `dell-g3-3579` |
|
| [Asus Zenbook Pro 17 UM6702](asus/zenbook/um6702/) | `<nixos-hardware/asus/zenbook/um6702>` | `asus-zenbook-um6702` |
|
||||||
| [Dell Inspiron 3442](dell/inspiron/3442) | `<nixos-hardware/dell/inspiron/3442>` | `dell-inspiron-3442` |
|
| [BeagleBoard PocketBeagle](beagleboard/pocketbeagle) | `<nixos-hardware/beagleboard/pocketbeagle>` | `beagleboard-pocketbeagle` |
|
||||||
| [Dell Inspiron 14 5420](dell/inspiron/14-5420) | `<nixos-hardware/dell/inspiron/14-5420>` | `dell-inspiron-14-5420` |
|
| [Chuwi MiniBook X](chuwi/minibook-x) | `<nixos-hardware/chuwi/minibook-x>` | `chuwi-minibook-x` |
|
||||||
| [Dell Inspiron 5509](dell/inspiron/5509) | `<nixos-hardware/dell/inspiron/5509>` | `dell-inspiron-5509` |
|
| [Deciso DEC series](deciso/dec) | `<nixos-hardware/deciso/dec>` | `deciso-dec` |
|
||||||
| [Dell Inspiron 5515](dell/inspiron/5515) | `<nixos-hardware/dell/inspiron/5515>` | `dell-inspiron-5515` |
|
| [Dell G3 3779](dell/g3/3779) | `<nixos-hardware/dell/g3/3779>` | `dell-g3-3779` |
|
||||||
| [Dell Inspiron 7405](dell/inspiron/7405) | `<nixos-hardware/dell/inspiron/7405>` | `dell-inspiron-7405` |
|
| [Dell G3 3579](dell/g3/3579) | `<nixos-hardware/dell/g3/3579>` | `dell-g3-3579` |
|
||||||
| [Dell Inspiron 7460](dell/inspiron/7460) | `<nixos-hardware/dell/inspiron/7460>` | `dell-inspiron-7460` |
|
| [Dell Inspiron 3442](dell/inspiron/3442) | `<nixos-hardware/dell/inspiron/3442>` | `dell-inspiron-3442` |
|
||||||
| [Dell Inspiron 7559](dell/inspiron/7559) | `<nixos-hardware/dell/inspiron/7559>` | `dell-inspiron-7559` |
|
| [Dell Inspiron 14 5420](dell/inspiron/14-5420) | `<nixos-hardware/dell/inspiron/14-5420>` | `dell-inspiron-14-5420` |
|
||||||
| [Dell Latitude 3340](dell/latitude/3340) | `<nixos-hardware/dell/latitude/3340>` | `dell-latitude-3340` |
|
| [Dell Inspiron 5509](dell/inspiron/5509) | `<nixos-hardware/dell/inspiron/5509>` | `dell-inspiron-5509` |
|
||||||
| [Dell Latitude 3480](dell/latitude/3480) | `<nixos-hardware/dell/latitude/3480>` | `dell-latitude-3480` |
|
| [Dell Inspiron 5515](dell/inspiron/5515) | `<nixos-hardware/dell/inspiron/5515>` | `dell-inspiron-5515` |
|
||||||
| [Dell Latitude 5490](dell/latitude/5490) | `<nixos-hardware/dell/latitude/5490>` | `dell-latitude-5490` |
|
| [Dell Inspiron 7405](dell/inspiron/7405) | `<nixos-hardware/dell/inspiron/7405>` | `dell-inspiron-7405` |
|
||||||
| [Dell Latitude 5520](dell/latitude/5520) | `<nixos-hardware/dell/latitude/5520>` | `dell-latitude-5520` |
|
| [Dell Inspiron 7460](dell/inspiron/7460) | `<nixos-hardware/dell/inspiron/7460>` | `dell-inspiron-7460` |
|
||||||
| [Dell Latitude 7280](dell/latitude/7280) | `<nixos-hardware/dell/latitude/7280>` | `dell-latitude-7280` |
|
| [Dell Inspiron 7559](dell/inspiron/7559) | `<nixos-hardware/dell/inspiron/7559>` | `dell-inspiron-7559` |
|
||||||
| [Dell Latitude 7390](dell/latitude/7390) | `<nixos-hardware/dell/latitude/7390>` | `dell-latitude-7390` |
|
| [Dell Latitude 3340](dell/latitude/3340) | `<nixos-hardware/dell/latitude/3340>` | `dell-latitude-3340` |
|
||||||
| [Dell Latitude 7420](dell/latitude/7420) | `<nixos-hardware/dell/latitude/7420>` | `dell-latitude-7420` |
|
| [Dell Latitude 3480](dell/latitude/3480) | `<nixos-hardware/dell/latitude/3480>` | `dell-latitude-3480` |
|
||||||
| [Dell Latitude 7430](dell/latitude/7430) | `<nixos-hardware/dell/latitude/7430>` | `dell-latitude-7430` |
|
| [Dell Latitude 5490](dell/latitude/5490) | `<nixos-hardware/dell/latitude/5490>` | `dell-latitude-5490` |
|
||||||
| [Dell Latitude 7490](dell/latitude/7490) | `<nixos-hardware/dell/latitude/7490>` | `dell-latitude-7490` |
|
| [Dell Latitude 5520](dell/latitude/5520) | `<nixos-hardware/dell/latitude/5520>` | `dell-latitude-5520` |
|
||||||
| [Dell Latitude 9430](dell/latitude/9430) | `<nixos-hardware/dell/latitude/9430>` | `dell-latitude-9430` |
|
| [Dell Latitude 7280](dell/latitude/7280) | `<nixos-hardware/dell/latitude/7280>` | `dell-latitude-7280` |
|
||||||
| [Dell Latitude E7240](dell/latitude/e7240) | `<nixos-hardware/dell/latitude/e7240>` | `dell-latitude-e7240` |
|
| [Dell Latitude 7390](dell/latitude/7390) | `<nixos-hardware/dell/latitude/7390>` | `dell-latitude-7390` |
|
||||||
| [Dell Optiplex 3050](dell/optiplex/3050) | `<nixos-hardware/dell/optiplex/3050>` | `dell-optiplex-3050` |
|
| [Dell Latitude 7420](dell/latitude/7420) | `<nixos-hardware/dell/latitude/7420>` | `dell-latitude-7420` |
|
||||||
| [Dell Poweredge R7515](dell/poweredge/r7515) | `<nixos-hardware/dell/poweredge/r7515>` | `dell-poweredge-r7515` |
|
| [Dell Latitude 7430](dell/latitude/7430) | `<nixos-hardware/dell/latitude/7430>` | `dell-latitude-7430` |
|
||||||
| [Dell Precision 3490, nvidia](dell/precision/3490/nvidia) | `<nixos-hardware/dell/precision/3490/nvidia>` | `dell-precision-3490-nvidia` |
|
| [Dell Latitude 7490](dell/latitude/7490) | `<nixos-hardware/dell/latitude/7490>` | `dell-latitude-7490` |
|
||||||
| [Dell Precision 3490, intel](dell/precision/3490/intel) | `<nixos-hardware/dell/precision/3490/intel>` | `dell-precision-3490-intel` |
|
| [Dell Latitude 9430](dell/latitude/9430) | `<nixos-hardware/dell/latitude/9430>` | `dell-latitude-9430` |
|
||||||
| [Dell Precision 3541](dell/precision/3541) | `<nixos-hardware/dell/precision/3541>` | `dell-precision-3541` |
|
| [Dell Latitude E7240](dell/latitude/e7240) | `<nixos-hardware/dell/latitude/e7240>` | `dell-latitude-e7240` |
|
||||||
| [Dell Precision 5490](dell/precision/5490) | `<nixos-hardware/dell/precision/5490>` | `dell-precision-5490` |
|
| [Dell Optiplex 3050](dell/optiplex/3050) | `<nixos-hardware/dell/optiplex/3050>` | `dell-optiplex-3050` |
|
||||||
| [Dell Precision 5530](dell/precision/5530) | `<nixos-hardware/dell/precision/5530>` | `dell-precision-5530` |
|
| [Dell Poweredge R7515](dell/poweredge/r7515) | `<nixos-hardware/dell/poweredge/r7515>` | `dell-poweredge-r7515` |
|
||||||
| [Dell Precision 7520](dell/precision/7520) | `<nixos-hardware/dell/precision/7520>` | `dell-precision-7520` |
|
| [Dell Precision 3490, nvidia](dell/precision/3490/nvidia) | `<nixos-hardware/dell/precision/3490/nvidia>` | `dell-precision-3490-nvidia` |
|
||||||
| [Dell XPS 13 7390](dell/xps/13-7390) | `<nixos-hardware/dell/xps/13-7390>` | `dell-xps-13-7390` |
|
| [Dell Precision 3490, intel](dell/precision/3490/intel) | `<nixos-hardware/dell/precision/3490/intel>` | `dell-precision-3490-intel` |
|
||||||
| [Dell XPS 13 9300](dell/xps/13-9300) | `<nixos-hardware/dell/xps/13-9300>` | `dell-xps-13-9300` |
|
| [Dell Precision 3541](dell/precision/3541) | `<nixos-hardware/dell/precision/3541>` | `dell-precision-3541` |
|
||||||
| [Dell XPS 13 9310](dell/xps/13-9310) | `<nixos-hardware/dell/xps/13-9310>` | `dell-xps-13-9310` |
|
| [Dell Precision 5490](dell/precision/5490) | `<nixos-hardware/dell/precision/5490>` | `dell-precision-5490` |
|
||||||
| [Dell XPS 13 9315](dell/xps/13-9315) | `<nixos-hardware/dell/xps/13-9315>` | `dell-xps-13-9315` |
|
| [Dell Precision 5530](dell/precision/5530) | `<nixos-hardware/dell/precision/5530>` | `dell-precision-5530` |
|
||||||
| [Dell XPS 13 9333](dell/xps/13-9333) | `<nixos-hardware/dell/xps/13-9333>` | `dell-xps-13-9333` |
|
| [Dell Precision 5560](dell/precision/5560) | `<nixos-hardware/dell/precision/5560>` | `dell-precision-5560` |
|
||||||
| [Dell XPS 13 9343](dell/xps/13-9343) | `<nixos-hardware/dell/xps/13-9343>` | `dell-xps-13-9343` |
|
| [Dell Precision 5570](dell/precision/5570) | `<nixos-hardware/dell/precision/5570>` | `dell-precision-5570` |
|
||||||
| [Dell XPS 13 9350](dell/xps/13-9350) | `<nixos-hardware/dell/xps/13-9350>` | `dell-xps-13-9350` |
|
| [Dell Precision 7520](dell/precision/7520) | `<nixos-hardware/dell/precision/7520>` | `dell-precision-7520` |
|
||||||
| [Dell XPS 13 9360](dell/xps/13-9360) | `<nixos-hardware/dell/xps/13-9360>` | `dell-xps-13-9360` |
|
| [Dell XPS 13 7390](dell/xps/13-7390) | `<nixos-hardware/dell/xps/13-7390>` | `dell-xps-13-7390` |
|
||||||
| [Dell XPS 13 9370](dell/xps/13-9370) | `<nixos-hardware/dell/xps/13-9370>` | `dell-xps-13-9370` |
|
| [Dell XPS 13 9300](dell/xps/13-9300) | `<nixos-hardware/dell/xps/13-9300>` | `dell-xps-13-9300` |
|
||||||
| [Dell XPS 13 9380](dell/xps/13-9380) | `<nixos-hardware/dell/xps/13-9380>` | `dell-xps-13-9380` |
|
| [Dell XPS 13 9310](dell/xps/13-9310) | `<nixos-hardware/dell/xps/13-9310>` | `dell-xps-13-9310` |
|
||||||
| [Dell XPS 15 7590, nvidia](dell/xps/15-7590/nvidia) | `<nixos-hardware/dell/xps/15-7590/nvidia>` | `dell-xps-15-7590-nvidia` |
|
| [Dell XPS 13 9315](dell/xps/13-9315) | `<nixos-hardware/dell/xps/13-9315>` | `dell-xps-13-9315` |
|
||||||
| [Dell XPS 15 7590](dell/xps/15-7590) | `<nixos-hardware/dell/xps/15-7590>` | `dell-xps-15-7590` |
|
| [Dell XPS 13 9333](dell/xps/13-9333) | `<nixos-hardware/dell/xps/13-9333>` | `dell-xps-13-9333` |
|
||||||
| [Dell XPS 15 9500, nvidia](dell/xps/15-9500/nvidia) | `<nixos-hardware/dell/xps/15-9500/nvidia>` | `dell-xps-15-9500-nvidia` |
|
| [Dell XPS 13 9343](dell/xps/13-9343) | `<nixos-hardware/dell/xps/13-9343>` | `dell-xps-13-9343` |
|
||||||
| [Dell XPS 15 9500](dell/xps/15-9500) | `<nixos-hardware/dell/xps/15-9500>` | `dell-xps-15-9500` |
|
| [Dell XPS 13 9350](dell/xps/13-9350) | `<nixos-hardware/dell/xps/13-9350>` | `dell-xps-13-9350` |
|
||||||
| [Dell XPS 15 9510, nvidia](dell/xps/15-9510/nvidia) | `<nixos-hardware/dell/xps/15-9510/nvidia>` | `dell-xps-15-9510-nvidia` |
|
| [Dell XPS 13 9360](dell/xps/13-9360) | `<nixos-hardware/dell/xps/13-9360>` | `dell-xps-13-9360` |
|
||||||
| [Dell XPS 15 9510](dell/xps/15-9510) | `<nixos-hardware/dell/xps/15-9510>` | `dell-xps-15-9510` |
|
| [Dell XPS 13 9370](dell/xps/13-9370) | `<nixos-hardware/dell/xps/13-9370>` | `dell-xps-13-9370` |
|
||||||
| [Dell XPS 15 9520, nvidia](dell/xps/15-9520/nvidia) | `<nixos-hardware/dell/xps/15-9520/nvidia>` | `dell-xps-15-9520-nvidia` |
|
| [Dell XPS 13 9380](dell/xps/13-9380) | `<nixos-hardware/dell/xps/13-9380>` | `dell-xps-13-9380` |
|
||||||
| [Dell XPS 15 9520](dell/xps/15-9520) | `<nixos-hardware/dell/xps/15-9520>` | `dell-xps-15-9520` |
|
| [Dell XPS 15 7590, nvidia](dell/xps/15-7590/nvidia) | `<nixos-hardware/dell/xps/15-7590/nvidia>` | `dell-xps-15-7590-nvidia` |
|
||||||
| [Dell XPS 15 9530, nvidia](dell/xps/15-9530/nvidia) | `<nixos-hardware/dell/xps/15-9530/nvidia>` | `dell-xps-15-9530-nvidia` |
|
| [Dell XPS 15 7590](dell/xps/15-7590) | `<nixos-hardware/dell/xps/15-7590>` | `dell-xps-15-7590` |
|
||||||
| [Dell XPS 15 9530](dell/xps/15-9530) | `<nixos-hardware/dell/xps/15-9530>` | `dell-xps-15-9530` |
|
| [Dell XPS 15 9500, nvidia](dell/xps/15-9500/nvidia) | `<nixos-hardware/dell/xps/15-9500/nvidia>` | `dell-xps-15-9500-nvidia` |
|
||||||
| [Dell XPS 15 9550, nvidia](dell/xps/15-9550/nvidia) | `<nixos-hardware/dell/xps/15-9550/nvidia>` | `dell-xps-15-9550-nvidia` |
|
| [Dell XPS 15 9500](dell/xps/15-9500) | `<nixos-hardware/dell/xps/15-9500>` | `dell-xps-15-9500` |
|
||||||
| [Dell XPS 15 9550](dell/xps/15-9550) | `<nixos-hardware/dell/xps/15-9550>` | `dell-xps-15-9550` |
|
| [Dell XPS 15 9510, nvidia](dell/xps/15-9510/nvidia) | `<nixos-hardware/dell/xps/15-9510/nvidia>` | `dell-xps-15-9510-nvidia` |
|
||||||
| [Dell XPS 15 9560, intel only](dell/xps/15-9560/intel) | `<nixos-hardware/dell/xps/15-9560/intel>` | `dell-xps-15-9560-intel` |
|
| [Dell XPS 15 9510](dell/xps/15-9510) | `<nixos-hardware/dell/xps/15-9510>` | `dell-xps-15-9510` |
|
||||||
| [Dell XPS 15 9560, nvidia only](dell/xps/15-9560/nvidia) | `<nixos-hardware/dell/xps/15-9560/nvidia>` | `dell-xps-15-9560-nvidia` |
|
| [Dell XPS 15 9520, nvidia](dell/xps/15-9520/nvidia) | `<nixos-hardware/dell/xps/15-9520/nvidia>` | `dell-xps-15-9520-nvidia` |
|
||||||
| [Dell XPS 15 9560](dell/xps/15-9560) | `<nixos-hardware/dell/xps/15-9560>` | `dell-xps-15-9560` |
|
| [Dell XPS 15 9520](dell/xps/15-9520) | `<nixos-hardware/dell/xps/15-9520>` | `dell-xps-15-9520` |
|
||||||
| [Dell XPS 15 9570, intel only](dell/xps/15-9570/intel) | `<nixos-hardware/dell/xps/15-9570/intel>` | `dell-xps-15-9570-intel` |
|
| [Dell XPS 15 9530, nvidia](dell/xps/15-9530/nvidia) | `<nixos-hardware/dell/xps/15-9530/nvidia>` | `dell-xps-15-9530-nvidia` |
|
||||||
| [Dell XPS 15 9570, nvidia](dell/xps/15-9570/nvidia) | `<nixos-hardware/dell/xps/15-9570/nvidia>` | `dell-xps-15-9570-nvidia` |
|
| [Dell XPS 15 9530](dell/xps/15-9530) | `<nixos-hardware/dell/xps/15-9530>` | `dell-xps-15-9530` |
|
||||||
| [Dell XPS 15 9570](dell/xps/15-9570) | `<nixos-hardware/dell/xps/15-9570>` | `dell-xps-15-9570` |
|
| [Dell XPS 15 9550, nvidia](dell/xps/15-9550/nvidia) | `<nixos-hardware/dell/xps/15-9550/nvidia>` | `dell-xps-15-9550-nvidia` |
|
||||||
| [Dell XPS 17 9700, intel](dell/xps/17-9700/intel) | `<nixos-hardware/dell/xps/17-9700/intel` | `dell-xps-17-9700-intel` |
|
| [Dell XPS 15 9550](dell/xps/15-9550) | `<nixos-hardware/dell/xps/15-9550>` | `dell-xps-15-9550` |
|
||||||
| [Dell XPS 17 9700, nvidia](dell/xps/17-9700/nvidia) | `<nixos-hardware/dell/xps/17-9700/nvidia>` | `dell-xps-17-9700-nvidia` |
|
| [Dell XPS 15 9560, intel only](dell/xps/15-9560/intel) | `<nixos-hardware/dell/xps/15-9560/intel>` | `dell-xps-15-9560-intel` |
|
||||||
| [Dell XPS 17 9710, intel only](dell/xps/17-9710/intel) | `<nixos-hardware/dell/xps/17-9710/intel>` | `dell-xps-17-9710-intel` |
|
| [Dell XPS 15 9560, nvidia only](dell/xps/15-9560/nvidia) | `<nixos-hardware/dell/xps/15-9560/nvidia>` | `dell-xps-15-9560-nvidia` |
|
||||||
| [Framework 11th Gen Intel Core](framework/13-inch/11th-gen-intel) | `<nixos-hardware/framework/13-inch/11th-gen-intel>` | `framework-11th-gen-intel` |
|
| [Dell XPS 15 9560](dell/xps/15-9560) | `<nixos-hardware/dell/xps/15-9560>` | `dell-xps-15-9560` |
|
||||||
| [Framework 12th Gen Intel Core](framework/12-inch/13th-gen-intel) | `<nixos-hardware/framework/12-inch/13th-gen-intel>` | `framework-12th-gen-intel` |
|
| [Dell XPS 15 9570, intel only](dell/xps/15-9570/intel) | `<nixos-hardware/dell/xps/15-9570/intel>` | `dell-xps-15-9570-intel` |
|
||||||
| [Framework 13th Gen Intel Core](framework/13-inch/13th-gen-intel) | `<nixos-hardware/framework/13-inch/13th-gen-intel>` | `framework-13th-gen-intel` |
|
| [Dell XPS 15 9570, nvidia](dell/xps/15-9570/nvidia) | `<nixos-hardware/dell/xps/15-9570/nvidia>` | `dell-xps-15-9570-nvidia` |
|
||||||
|
| [Dell XPS 15 9570](dell/xps/15-9570) | `<nixos-hardware/dell/xps/15-9570>` | `dell-xps-15-9570` |
|
||||||
|
| [Dell XPS 17 9700, intel](dell/xps/17-9700/intel) | `<nixos-hardware/dell/xps/17-9700/intel` | `dell-xps-17-9700-intel` |
|
||||||
|
| [Dell XPS 17 9700, nvidia](dell/xps/17-9700/nvidia) | `<nixos-hardware/dell/xps/17-9700/nvidia>` | `dell-xps-17-9700-nvidia` |
|
||||||
|
| [Dell XPS 17 9710, intel only](dell/xps/17-9710/intel) | `<nixos-hardware/dell/xps/17-9710/intel>` | `dell-xps-17-9710-intel` |
|
||||||
|
| [Framework 11th Gen Intel Core](framework/13-inch/11th-gen-intel) | `<nixos-hardware/framework/13-inch/11th-gen-intel>` | `framework-11th-gen-intel` |
|
||||||
|
| [Framework 12th Gen Intel Core](framework/13-inch/12th-gen-intel) | `<nixos-hardware/framework/13-inch/12th-gen-intel>` | `framework-12th-gen-intel` |
|
||||||
|
| [Framework 13th Gen Intel Core](framework/13-inch/13th-gen-intel) | `<nixos-hardware/framework/13-inch/13th-gen-intel>` | `framework-13th-gen-intel` |
|
||||||
| [Framework Intel Core Ultra Series 1](framework/13-inch/intel-core-ultra-series1) | `<nixos-hardware/framework/13-inch/intel-core-ultra-series1>` | `framework-intel-core-ultra-series1` |
|
| [Framework Intel Core Ultra Series 1](framework/13-inch/intel-core-ultra-series1) | `<nixos-hardware/framework/13-inch/intel-core-ultra-series1>` | `framework-intel-core-ultra-series1` |
|
||||||
| [Framework 13 AMD Ryzen 7040 Series](framework/13-inch/7040-amd) | `<nixos-hardware/framework/13-inch/7040-amd>` | `framework-13-7040-amd` |
|
| [Framework 13 AMD Ryzen 7040 Series](framework/13-inch/7040-amd) | `<nixos-hardware/framework/13-inch/7040-amd>` | `framework-13-7040-amd` |
|
||||||
| [Framework 13 AMD AI 300 Series](framework/13-inch/amd-ai-300-series) | `<nixos-hardware/framework/13-inch/amd-ai-300-series>` | `framework-amd-ai-300-series` |
|
| [Framework 13 AMD AI 300 Series](framework/13-inch/amd-ai-300-series) | `<nixos-hardware/framework/13-inch/amd-ai-300-series>` | `framework-amd-ai-300-series` |
|
||||||
| [Framework 12 13th Gen Intel Core](framework/12-inch/13th-gen-intel) | `<nixos-hardware/framework/12-inch/13th-gen-intel>` | `framework-12-13th-gen-intel` |
|
| [Framework 12 13th Gen Intel Core](framework/12-inch/13th-gen-intel) | `<nixos-hardware/framework/12-inch/13th-gen-intel>` | `framework-12-13th-gen-intel` |
|
||||||
| [Framework 16 AMD Ryzen 7040 Series](framework/16-inch/7040-amd) | `<nixos-hardware/framework/16-inch/7040-amd>` | `framework-16-7040-amd` |
|
| [Framework 16 AMD Ryzen 7040 Series](framework/16-inch/7040-amd) | `<nixos-hardware/framework/16-inch/7040-amd>` | `framework-16-7040-amd` |
|
||||||
| [FriendlyARM NanoPC-T4](friendlyarm/nanopc-t4) | `<nixos-hardware/friendlyarm/nanopc-t4>` | `friendlyarm-nanopc-t4` |
|
| [Framework 16 AMD Ryzen AI 300 Series](framework/16-inch/amd-ai-300-series) | `<nixos-hardware/framework/16-inch/amd-ai-300-series>` | `framework-16-amd-ai-300-series` |
|
||||||
| [FriendlyARM NanoPi R5s](friendlyarm/nanopi-r5s) | `<nixos-hardware/friendlyarm/nanopi-r5s>` | `friendlyarm-nanopi-r5s` |
|
| [FriendlyARM NanoPC-T4](friendlyarm/nanopc-t4) | `<nixos-hardware/friendlyarm/nanopc-t4>` | `friendlyarm-nanopc-t4` |
|
||||||
| [Focus M2 Gen 1](focus/m2/gen1) | `<nixos-hardware/focus/m2/gen1>` | `focus-m2-gen1` |
|
| [FriendlyARM NanoPi R5s](friendlyarm/nanopi-r5s) | `<nixos-hardware/friendlyarm/nanopi-r5s>` | `friendlyarm-nanopi-r5s` |
|
||||||
| [Gigabyte B550](gigabyte/b550) | `<nixos-hardware/gigabyte/b550>` | `gigabyte-b550` |
|
| [Focus M2 Gen 1](focus/m2/gen1) | `<nixos-hardware/focus/m2/gen1>` | `focus-m2-gen1` |
|
||||||
| [Gigabyte B650](gigabyte/b650) | `<nixos-hardware/gigabyte/b650>` | `gigabyte-b650` |
|
| [Fydetab Duo](fydetab/duo) | `<nixos-hardware/fydetab/duo>` | `fydetab-duo` |
|
||||||
| [GMKtec NucBox G3 Plus](gmktec/nucbox/g3-plus) | `<nixos-hardware/gmktec/nucbox/g3-plus>` | `gmktec-nucbox-g3-plus` |
|
| [Gigabyte B550](gigabyte/b550) | `<nixos-hardware/gigabyte/b550>` | `gigabyte-b550` |
|
||||||
| [GPD MicroPC](gpd/micropc) | `<nixos-hardware/gpd/micropc>` | `gpd-micropc` |
|
| [Gigabyte B650](gigabyte/b650) | `<nixos-hardware/gigabyte/b650>` | `gigabyte-b650` |
|
||||||
| [GPD P2 Max](gpd/p2-max) | `<nixos-hardware/gpd/p2-max>` | `gpd-p2-max` |
|
| [GMKtec NucBox G3 Plus](gmktec/nucbox/g3-plus) | `<nixos-hardware/gmktec/nucbox/g3-plus>` | `gmktec-nucbox-g3-plus` |
|
||||||
| [GPD Pocket 3](gpd/pocket-3) | `<nixos-hardware/gpd/pocket-3>` | `gpd-pocket-3` |
|
| [GPD MicroPC](gpd/micropc) | `<nixos-hardware/gpd/micropc>` | `gpd-micropc` |
|
||||||
| [GPD Pocket 4](gpd/pocket-4) | `<nixos-hardware/gpd/pocket-4>` | `gpd-pocket-4` |
|
| [GPD P2 Max](gpd/p2-max) | `<nixos-hardware/gpd/p2-max>` | `gpd-p2-max` |
|
||||||
| [GPD WIN 2](gpd/win-2) | `<nixos-hardware/gpd/win-2>` | `gpd-win-2` |
|
| [GPD Pocket 3](gpd/pocket-3) | `<nixos-hardware/gpd/pocket-3>` | `gpd-pocket-3` |
|
||||||
| [GPD WIN Max 2 2023](gpd/win-max-2/2023) | `<nixos-hardware/gpd/win-max-2/2023>` | `gpd-win-max-2-2023` |
|
| [GPD Pocket 4](gpd/pocket-4) | `<nixos-hardware/gpd/pocket-4>` | `gpd-pocket-4` |
|
||||||
| [GPD WIN Mini 2024](gpd/win-mini/2024) | `<nixos-hardware/gpd/win-mini/2024>` | `gpd-win-mini-2024` |
|
| [GPD WIN 2](gpd/win-2) | `<nixos-hardware/gpd/win-2>` | `gpd-win-2` |
|
||||||
| [Google Pixelbook](google/pixelbook) | `<nixos-hardware/google/pixelbook>` | `google-pixelbook` |
|
| [GPD WIN Max 2 2023](gpd/win-max-2/2023) | `<nixos-hardware/gpd/win-max-2/2023>` | `gpd-win-max-2-2023` |
|
||||||
| [HP Elitebook 2560p](hp/elitebook/2560p) | `<nixos-hardware/hp/elitebook/2560p>` | `hp-elitebook-2560p` |
|
| [GPD WIN Mini 2024](gpd/win-mini/2024) | `<nixos-hardware/gpd/win-mini/2024>` | `gpd-win-mini-2024` |
|
||||||
| [HP Elitebook 830g6](hp/elitebook/830/g6) | `<nixos-hardware/hp/elitebook/830/g6>` | `hp-elitebook-830g6` |
|
| [Google Pixelbook](google/pixelbook) | `<nixos-hardware/google/pixelbook>` | `google-pixelbook` |
|
||||||
| [HP Elitebook 845g7](hp/elitebook/845/g7) | `<nixos-hardware/hp/elitebook/845/g7>` | `hp-elitebook-845g7` |
|
| [HP Elitebook 2560p](hp/elitebook/2560p) | `<nixos-hardware/hp/elitebook/2560p>` | `hp-elitebook-2560p` |
|
||||||
| [HP Elitebook 845g8](hp/elitebook/845/g8) | `<nixos-hardware/hp/elitebook/845/g8>` | `hp-elitebook-845g8` |
|
| [HP Elitebook 830g6](hp/elitebook/830/g6) | `<nixos-hardware/hp/elitebook/830/g6>` | `hp-elitebook-830g6` |
|
||||||
| [HP Elitebook 845g9](hp/elitebook/845/g9) | `<nixos-hardware/hp/elitebook/845/g9>` | `hp-elitebook-845g9` |
|
| [HP Elitebook 845g7](hp/elitebook/845/g7) | `<nixos-hardware/hp/elitebook/845/g7>` | `hp-elitebook-845g7` |
|
||||||
| [HP Laptop 14s-dq2024nf](hp/laptop/14s-dq2024nf) | `<nixos-hardware/hp/laptop/14s-dq2024nf>` | `hp-laptop-14s-dq2024nf` |
|
| [HP Elitebook 845g8](hp/elitebook/845/g8) | `<nixos-hardware/hp/elitebook/845/g8>` | `hp-elitebook-845g8` |
|
||||||
| [HP Notebook 14-df0023](hp/notebook/14-df0023) | `<nixos-hardware/hp/notebook/14-df0023>` | `hp-notebook-14-df0023` |
|
| [HP Elitebook 845g9](hp/elitebook/845/g9) | `<nixos-hardware/hp/elitebook/845/g9>` | `hp-elitebook-845g9` |
|
||||||
| [HP Probook 440G5](hp/probook/440g5) | `<nixos-hardware/hp/probook/440g5>` | `hp-probook-440G5` |
|
| [HP Laptop 14s-dq2024nf](hp/laptop/14s-dq2024nf) | `<nixos-hardware/hp/laptop/14s-dq2024nf>` | `hp-laptop-14s-dq2024nf` |
|
||||||
| [Huawei Matebook X Pro (2020)](huawei/machc-wa) | `<nixos-hardware/huawei/machc-wa>` | `huawei-machc-wa` |
|
| [HP Notebook 14-df0023](hp/notebook/14-df0023) | `<nixos-hardware/hp/notebook/14-df0023>` | `hp-notebook-14-df0023` |
|
||||||
| [i.MX8QuadMax Multisensory Enablement Kit](nxp/imx8qm-mek/) | `<nixos-hardware/nxp/imx8qm-mek>` | `nxp-imx8qm-mek` |
|
| [HP Probook 440G5](hp/probook/440G5) | `<nixos-hardware/hp/probook/440G5>` | `hp-probook-440G5` |
|
||||||
| [Intel NUC 8i7BEH](intel/nuc/8i7beh/) | `<nixos-hardware/intel/nuc/8i7beh>` | `intel-nuc-8i7beh` |
|
| [HP Laptop 14s-dq2024nf](hp/laptop/14s-dq2024nf) | `<nixos-hardware/hp/laptop/14s-dq2024nf>` | `hp-laptop-14s-dq2024nf` |
|
||||||
| [Lenovo IdeaCentre K330](lenovo/ideacentre/k330) | `<nixos-hardware/lenovo/ideacentre/k330>` | `lenovo-ideacentre-k330` |
|
| [HP Probook 460G11](hp/probook/460g11) | `<nixos-hardware/hp/probook/460g11>` | `hp-probook-46011` |
|
||||||
| [Lenovo IdeaPad 3 15alc6](lenovo/ideapad/15alc6) | `<nixos-hardware/lenovo/ideapad/15alc6>` | `lenovo-ideapad-15alc6` |
|
| [Huawei Matebook X Pro (2020)](huawei/machc-wa) | `<nixos-hardware/huawei/machc-wa>` | `huawei-machc-wa` |
|
||||||
| [Lenovo IdeaPad Gaming 3 15arh05](lenovo/ideapad/15arh05) | `<nixos-hardware/lenovo/ideapad/15arh05>` | `lenovo-ideapad-15arh05` |
|
| [i.MX8QuadMax Multisensory Enablement Kit](nxp/imx8qm-mek/) | `<nixos-hardware/nxp/imx8qm-mek>` | `nxp-imx8qm-mek` |
|
||||||
| [Lenovo IdeaPad Gaming 3 15ach6](lenovo/ideapad/15ach6) | `<nixos-hardware/lenovo/ideapad/15ach6>` | `lenovo-ideapad-15ach6` |
|
| [Intel NUC 5i5RYB](intel/nuc/5i5ryb/) | `<nixos-hardware/intel/nuc/5i5ryb>` | `intel-nuc-5i5ryb` |
|
||||||
| [Lenovo IdeaPad 5 Pro 14imh9](lenovo/ideapad/14imh9) | `<nixos-hardware/lenovo/ideapad/14imh9>` | `lenovo-ideapad-14imh9` |
|
| [Intel NUC 8i7BEH](intel/nuc/8i7beh/) | `<nixos-hardware/intel/nuc/8i7beh>` | `intel-nuc-8i7beh` |
|
||||||
| [Lenovo IdeaPad 5 Pro 16ach6](lenovo/ideapad/16ach6) | `<nixos-hardware/lenovo/ideapad/16ach6>` | `lenovo-ideapad-16ach6` |
|
| [Kobol Helios4](kobol/helios4) | `<nixos-hardware/kobol/helios4>` | `kobol-helios-4` |
|
||||||
| [Lenovo IdeaPad Z510](lenovo/ideapad/z510) | `<nixos-hardware/lenovo/ideapad/z510>` | `lenovo-ideapad-z510` |
|
| [Lenovo IdeaCentre K330](lenovo/ideacentre/k330) | `<nixos-hardware/lenovo/ideacentre/k330>` | `lenovo-ideacentre-k330` |
|
||||||
| [Lenovo IdeaPad Slim 5](lenovo/ideapad/slim-5) | `<nixos-hardware/lenovo/ideapad/slim-5>` | `lenovo-ideapad-slim-5` |
|
| [Lenovo IdeaPad 3 15alc6](lenovo/ideapad/15alc6) | `<nixos-hardware/lenovo/ideapad/15alc6>` | `lenovo-ideapad-15alc6` |
|
||||||
| [Lenovo IdeaPad Slim 5 16iah8](lenovo/ideapad/16iah8) | `<nixos-hardware/lenovo/ideapad/16iah8` | `lenovo-ideapad-s5-16iah8` |
|
| [Lenovo IdeaPad Gaming 3 15arh05](lenovo/ideapad/15arh05) | `<nixos-hardware/lenovo/ideapad/15arh05>` | `lenovo-ideapad-15arh05` |
|
||||||
| [Lenovo IdeaPad 2-in-1 16ahp9](lenovo/ideapad/16ahp9) | `<nixos-hardware/lenovo/ideapad/16ahp9>` | `lenovo-ideapad-16ahp9` |
|
| [Lenovo IdeaPad Gaming 3 15ach6](lenovo/ideapad/15ach6) | `<nixos-hardware/lenovo/ideapad/15ach6>` | `lenovo-ideapad-15ach6` |
|
||||||
| [Lenovo IdeaPad S145 15api](lenovo/ideapad/s145-15api) | `<nixos-hardware/lenovo/ideapad/s145-15api>` | `lenovo-ideapad-s145-15api` |
|
| [Lenovo IdeaPad 5 Pro 14imh9](lenovo/ideapad/14imh9) | `<nixos-hardware/lenovo/ideapad/14imh9>` | `lenovo-ideapad-14imh9` |
|
||||||
| [Lenovo Legion 5 15ach6h](lenovo/legion/15ach6h) | `<nixos-hardware/lenovo/legion/15ach6h>` | `lenovo-legion-15ach6h` |
|
| [Lenovo IdeaPad 5 Pro 16ach6](lenovo/ideapad/16ach6) | `<nixos-hardware/lenovo/ideapad/16ach6>` | `lenovo-ideapad-16ach6` |
|
||||||
| [Lenovo Legion 5 15arh05h](lenovo/legion/15arh05h) | `<nixos-hardware/lenovo/legion/15arh05h>` | `lenovo-legion-15arh05h` |
|
| [Lenovo IdeaPad Z510](lenovo/ideapad/z510) | `<nixos-hardware/lenovo/ideapad/z510>` | `lenovo-ideapad-z510` |
|
||||||
| [Lenovo Legion 7 Slim 15ach6](lenovo/legion/15ach6) | `<nixos-hardware/lenovo/legion/15ach6>` | `lenovo-legion-15ach6` |
|
| [Lenovo IdeaPad Slim 5](lenovo/ideapad/slim-5) | `<nixos-hardware/lenovo/ideapad/slim-5>` | `lenovo-ideapad-slim-5` |
|
||||||
| [Lenovo Legion 5 Pro 16ach6h](lenovo/legion/16ach6h) | `<nixos-hardware/lenovo/legion/16ach6h>` | `lenovo-legion-16ach6h` |
|
| [Lenovo IdeaPad Slim 5 16iah8](lenovo/ideapad/16iah8) | `<nixos-hardware/lenovo/ideapad/16iah8` | `lenovo-ideapad-s5-16iah8` |
|
||||||
| [Lenovo Legion 5 Pro 16ach6h (Hybrid)](lenovo/legion/16ach6h/hybrid) | `<nixos-hardware/lenovo/legion/16ach6h/hybrid>` | `lenovo-legion-16ach6h-hybrid` |
|
| [Lenovo IdeaPad 2-in-1 16ahp9](lenovo/ideapad/16ahp9) | `<nixos-hardware/lenovo/ideapad/16ahp9>` | `lenovo-ideapad-16ahp9` |
|
||||||
| [Lenovo Legion 5 Pro 16ach6h (Nvidia)](lenovo/legion/16ach6h/nvidia) | `<nixos-hardware/lenovo/legion/16ach6h/nvidia>` | `lenovo-legion-16ach6h-nvidia` |
|
| [Lenovo IdeaPad S145 15api](lenovo/ideapad/s145-15api) | `<nixos-hardware/lenovo/ideapad/s145-15api>` | `lenovo-ideapad-s145-15api` |
|
||||||
| [Lenovo Legion 5 Pro 16arh7h (IGPU Only)](lenovo/legion/16arh7h/igpu-only) | `<nixos-hardware/lenovo/legion/16arh7h/igpu-only>` | `lenovo-legion-16arh7h-igpu-only` |
|
| [Lenovo Legion 5 15ach6h](lenovo/legion/15ach6h) | `<nixos-hardware/lenovo/legion/15ach6h>` | `lenovo-legion-15ach6h` |
|
||||||
| [Lenovo Legion 5 Pro 16arh7h (Hybrid)](lenovo/legion/16arh7h/hybrid) | `<nixos-hardware/lenovo/legion/16arh7h/hybrid>` | `lenovo-legion-16arh7h-hybrid` |
|
| [Lenovo Legion 5 15ach6h (Hybrid)](lenovo/legion/15ach6h/hybrid) | `<nixos-hardware/lenovo/legion/15ach6h/hybrid>` | `lenovo-legion-15ach6h-hybrid` |
|
||||||
| [Lenovo Legion 5 Pro 16IAH7H (Intel)](lenovo/legion/16iah7h/) | `<nixos-hardware/lenovo/legion/16iah7h>` | `lenovo-legion-16iah7h` |
|
| [Lenovo Legion 5 15ach6h (Nvidia)](lenovo/legion/15ach6h/hybrid) | `<nixos-hardware/lenovo/legion/15ach6h/nvidia>` | `lenovo-legion-15ach6h-nvidia` |
|
||||||
| [Lenovo Legion 7 16achg6 (Hybrid)](lenovo/legion/16achg6/hybrid) | `<nixos-hardware/lenovo/legion/16achg6/hybrid>` | `lenovo-legion-16achg6-hybrid` |
|
| [Lenovo Legion 5 15arh05h](lenovo/legion/15arh05h) | `<nixos-hardware/lenovo/legion/15arh05h>` | `lenovo-legion-15arh05h` |
|
||||||
| [Lenovo Legion 7 16achg6 (Nvidia)](lenovo/legion/16achg6/nvidia) | `<nixos-hardware/lenovo/legion/16achg6/nvidia>` | `lenovo-legion-16achg6-nvidia` |
|
| [Lenovo Legion 7 Slim 15ach6](lenovo/legion/15ach6) | `<nixos-hardware/lenovo/legion/15ach6>` | `lenovo-legion-15ach6` |
|
||||||
| [Lenovo Legion 7i Pro 16irx8h (Intel)](lenovo/legion/16irx8h) | `<nixos-hardware/lenovo/legion/16irx8h>` | `lenovo-legion-16irx8h` |
|
| [Lenovo Legion 5 Pro 16ach6h](lenovo/legion/16ach6h) | `<nixos-hardware/lenovo/legion/16ach6h>` | `lenovo-legion-16ach6h` |
|
||||||
| [Lenovo Legion 7 Pro 16irx9h (Intel)](lenovo/legion/16irx9h) | `<nixos-hardware/lenovo/legion/16irx9h>` | `lenovo-legion-16irx9h` |
|
| [Lenovo Legion 5 Pro 16ach6h (Hybrid)](lenovo/legion/16ach6h/hybrid) | `<nixos-hardware/lenovo/legion/16ach6h/hybrid>` | `lenovo-legion-16ach6h-hybrid` |
|
||||||
| [Lenovo Legion Slim 7 Gen 7 (AMD)](lenovo/legion/16arha7/) | `<nixos-hardware/lenovo/legion/16arha7>` | `lenovo-legion-16arha7` |
|
| [Lenovo Legion 5 Pro 16ach6h (Nvidia)](lenovo/legion/16ach6h/nvidia) | `<nixos-hardware/lenovo/legion/16ach6h/nvidia>` | `lenovo-legion-16ach6h-nvidia` |
|
||||||
| [Lenovo Legion T5 AMR5](lenovo/legion/t526amr5) | `<nixos-hardware/lenovo/legion/t526amr5>` | `lenovo-legion-t526amr5` |
|
| [Lenovo Legion 5 Pro 16arh7h (IGPU Only)](lenovo/legion/16arh7h/igpu-only) | `<nixos-hardware/lenovo/legion/16arh7h/igpu-only>` | `lenovo-legion-16arh7h-igpu-only` |
|
||||||
| [Lenovo Legion Y530 15ICH](lenovo/legion/15ich) | `<nixos-hardware/lenovo/legion/15ich>` | `lenovo-legion-15ich` |
|
| [Lenovo Legion 5 Pro 16arh7h (Hybrid)](lenovo/legion/16arh7h/hybrid) | `<nixos-hardware/lenovo/legion/16arh7h/hybrid>` | `lenovo-legion-16arh7h-hybrid` |
|
||||||
| [Lenovo ThinkPad A475](lenovo/thinkpad/a475) | `<nixos-hardware/lenovo/thinkpad/a475>` | `lenovo-thinkpad-a475` |
|
| [Lenovo Legion 5 Pro 16IAH7H (Intel)](lenovo/legion/16iah7h/) | `<nixos-hardware/lenovo/legion/16iah7h>` | `lenovo-legion-16iah7h` |
|
||||||
| [Lenovo ThinkPad E14 (AMD)](lenovo/thinkpad/e14/amd) | `<nixos-hardware/lenovo/thinkpad/e14/amd>` | `lenovo-thinkpad-e14-amd` |
|
| [Lenovo Legion 7 16achg6 (Hybrid)](lenovo/legion/16achg6/hybrid) | `<nixos-hardware/lenovo/legion/16achg6/hybrid>` | `lenovo-legion-16achg6-hybrid` |
|
||||||
| [Lenovo ThinkPad E14 (Intel - Gen 1)](lenovo/thinkpad/e14/intel) | `<nixos-hardware/lenovo/thinkpad/e14/intel>` | `lenovo-thinkpad-e14-intel` |
|
| [Lenovo Legion 7 16achg6 (Nvidia)](lenovo/legion/16achg6/nvidia) | `<nixos-hardware/lenovo/legion/16achg6/nvidia>` | `lenovo-legion-16achg6-nvidia` |
|
||||||
| [Lenovo ThinkPad E14 (Intel - Gen 4)](lenovo/thinkpad/e14/intel/gen4) | `<nixos-hardware/lenovo/thinkpad/e14/intel/gen4>` | `lenovo-thinkpad-e14-intel-gen4` |
|
| [Lenovo Legion 7i Pro 16irx8h (Intel)](lenovo/legion/16irx8h) | `<nixos-hardware/lenovo/legion/16irx8h>` | `lenovo-legion-16irx8h` |
|
||||||
| [Lenovo ThinkPad E14 (Intel - Gen 6)](lenovo/thinkpad/e14/intel/gen6) | `<nixos-hardware/lenovo/thinkpad/e14/intel/gen6>` | `lenovo-thinkpad-e14-intel-gen6` |
|
| [Lenovo Legion 7 Pro 16irx9h (Intel)](lenovo/legion/16irx9h) | `<nixos-hardware/lenovo/legion/16irx9h>` | `lenovo-legion-16irx9h` |
|
||||||
| [Lenovo ThinkPad E15 (Intel)](lenovo/thinkpad/e15/intel) | `<nixos-hardware/lenovo/thinkpad/e15/intel>` | `lenovo-thinkpad-e15-intel` |
|
| [Lenovo Legion Slim 5](lenovo/legion/16aph8/) | `<nixos-hardware/lenovo/legion/16aph8>` | `lenovo-legion-16aph8` |
|
||||||
| [Lenovo ThinkPad E470](lenovo/thinkpad/e470) | `<nixos-hardware/lenovo/thinkpad/e470>` | `lenovo-thinkpad-e470` |
|
| [Lenovo Legion Slim 7 Gen 7 (AMD)](lenovo/legion/16arha7/) | `<nixos-hardware/lenovo/legion/16arha7>` | `lenovo-legion-16arha7` |
|
||||||
| [Lenovo ThinkPad E495](lenovo/thinkpad/e495) | `<nixos-hardware/lenovo/thinkpad/e495>` | `lenovo-thinkpad-e495` |
|
| [Lenovo Legion T5 AMR5](lenovo/legion/t526amr5) | `<nixos-hardware/lenovo/legion/t526amr5>` | `lenovo-legion-t526amr5` |
|
||||||
| [Lenovo ThinkPad L13 Yoga](lenovo/thinkpad/l13/yoga) | `<nixos-hardware/lenovo/thinkpad/l13/yoga>` | `lenovo-thinkpad-l13-yoga` |
|
| [Lenovo Legion Y530 15ICH](lenovo/legion/15ich) | `<nixos-hardware/lenovo/legion/15ich>` | `lenovo-legion-y530-15ich` |
|
||||||
| [Lenovo ThinkPad L13](lenovo/thinkpad/l13) | `<nixos-hardware/lenovo/thinkpad/l13>` | `lenovo-thinkpad-l13` |
|
| [Lenovo ThinkPad A475](lenovo/thinkpad/a475) | `<nixos-hardware/lenovo/thinkpad/a475>` | `lenovo-thinkpad-a475` |
|
||||||
| [Lenovo ThinkPad L14 (AMD)](lenovo/thinkpad/l14/amd) | `<nixos-hardware/lenovo/thinkpad/l14/amd>` | `lenovo-thinkpad-l14-amd` |
|
| [Lenovo ThinkPad E14 (AMD)](lenovo/thinkpad/e14/amd) | `<nixos-hardware/lenovo/thinkpad/e14/amd>` | `lenovo-thinkpad-e14-amd` |
|
||||||
| [Lenovo ThinkPad L14 (Intel)](lenovo/thinkpad/l14/intel) | `<nixos-hardware/lenovo/thinkpad/l14/intel>` | `lenovo-thinkpad-l14-intel` |
|
| [Lenovo ThinkPad E14 (Intel - Gen 1)](lenovo/thinkpad/e14/intel) | `<nixos-hardware/lenovo/thinkpad/e14/intel>` | `lenovo-thinkpad-e14-intel` |
|
||||||
| [Lenovo ThinkPad L480](lenovo/thinkpad/l480) | `<nixos-hardware/lenovo/thinkpad/l480>` | `lenovo-thinkpad-l480` |
|
| [Lenovo ThinkPad E14 (Intel - Gen 4)](lenovo/thinkpad/e14/intel/gen4) | `<nixos-hardware/lenovo/thinkpad/e14/intel/gen4>` | `lenovo-thinkpad-e14-intel-gen4` |
|
||||||
| [Lenovo ThinkPad P1 Gen 3](lenovo/thinkpad/p1/3th-gen) | `<nixos-hardware/lenovo/thinkpad/p1/3th-gen>` | `lenovo-thinkpad-p1-gen3` |
|
| [Lenovo ThinkPad E14 (Intel - Gen 6)](lenovo/thinkpad/e14/intel/gen6) | `<nixos-hardware/lenovo/thinkpad/e14/intel/gen6>` | `lenovo-thinkpad-e14-intel-gen6` |
|
||||||
| [Lenovo ThinkPad P14s AMD Gen 1](lenovo/thinkpad/p14s/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen1>` | `lenovo-thinkpad-p14s-amd-gen1` |
|
| [Lenovo ThinkPad E15 (Intel)](lenovo/thinkpad/e15/intel) | `<nixos-hardware/lenovo/thinkpad/e15/intel>` | `lenovo-thinkpad-e15-intel` |
|
||||||
| [Lenovo ThinkPad P14s AMD Gen 2](lenovo/thinkpad/p14s/amd/gen2) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen2>` | `lenovo-thinkpad-p14s-amd-gen2` |
|
| [Lenovo ThinkPad E470](lenovo/thinkpad/e470) | `<nixos-hardware/lenovo/thinkpad/e470>` | `lenovo-thinkpad-e470` |
|
||||||
| [Lenovo ThinkPad P14s AMD Gen 3](lenovo/thinkpad/p14s/amd/gen3) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen3>` | `lenovo-thinkpad-p14s-amd-gen3` |
|
| [Lenovo ThinkPad E495](lenovo/thinkpad/e495) | `<nixos-hardware/lenovo/thinkpad/e495>` | `lenovo-thinkpad-e495` |
|
||||||
| [Lenovo ThinkPad P14s AMD Gen 4](lenovo/thinkpad/p14s/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen4>` | `lenovo-thinkpad-p14s-amd-gen4` |
|
| [Lenovo ThinkPad L13 Yoga](lenovo/thinkpad/l13/yoga) | `<nixos-hardware/lenovo/thinkpad/l13/yoga>` | `lenovo-thinkpad-l13-yoga` |
|
||||||
| [Lenovo ThinkPad P14s AMD Gen 5](lenovo/thinkpad/p14s/amd/gen5) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen5>` | `lenovo-thinkpad-p14s-amd-gen5` |
|
| [Lenovo ThinkPad L13](lenovo/thinkpad/l13) | `<nixos-hardware/lenovo/thinkpad/l13>` | `lenovo-thinkpad-l13` |
|
||||||
| [Lenovo ThinkPad P14s Intel Gen 3](lenovo/thinkpad/p14s/intel/gen3) | `<nixos-hardware/lenovo/thinkpad/p14s/intel/gen3>` | `lenovo-thinkpad-p14s-intel-gen3`|
|
| [Lenovo ThinkPad L14 (AMD)](lenovo/thinkpad/l14/amd) | `<nixos-hardware/lenovo/thinkpad/l14/amd>` | `lenovo-thinkpad-l14-amd` |
|
||||||
| [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 L14 (Intel)](lenovo/thinkpad/l14/intel) | `<nixos-hardware/lenovo/thinkpad/l14/intel>` | `lenovo-thinkpad-l14-intel` |
|
||||||
| [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 L480](lenovo/thinkpad/l480) | `<nixos-hardware/lenovo/thinkpad/l480>` | `lenovo-thinkpad-l480` |
|
||||||
| [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 P1 Gen 3](lenovo/thinkpad/p1/3th-gen) | `<nixos-hardware/lenovo/thinkpad/p1/3th-gen>` | `lenovo-thinkpad-p1-gen3` |
|
||||||
| [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 P14s AMD Gen 1](lenovo/thinkpad/p14s/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen1>` | `lenovo-thinkpad-p14s-amd-gen1` |
|
||||||
| [Lenovo ThinkPad P1](lenovo/thinkpad/p1) | `<nixos-hardware/lenovo/thinkpad/p1>` | `lenovo-thinkpad-p1` |
|
| [Lenovo ThinkPad P14s AMD Gen 2](lenovo/thinkpad/p14s/amd/gen2) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen2>` | `lenovo-thinkpad-p14s-amd-gen2` |
|
||||||
| [Lenovo ThinkPad P43s](lenovo/thinkpad/p43s) | `<nixos-hardware/lenovo/thinkpad/p43s>` | `lenovo-thinkpad-p43s` |
|
| [Lenovo ThinkPad P14s AMD Gen 3](lenovo/thinkpad/p14s/amd/gen3) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen3>` | `lenovo-thinkpad-p14s-amd-gen3` |
|
||||||
| [Lenovo ThinkPad P50](lenovo/thinkpad/p50) | `<nixos-hardware/lenovo/thinkpad/p50>` | `lenovo-thinkpad-p50` |
|
| [Lenovo ThinkPad P14s AMD Gen 4](lenovo/thinkpad/p14s/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen4>` | `lenovo-thinkpad-p14s-amd-gen4` |
|
||||||
| [Lenovo ThinkPad P51](lenovo/thinkpad/p51) | `<nixos-hardware/lenovo/thinkpad/p51>` | `lenovo-thinkpad-p51` |
|
| [Lenovo ThinkPad P14s AMD Gen 5](lenovo/thinkpad/p14s/amd/gen5) | `<nixos-hardware/lenovo/thinkpad/p14s/amd/gen5>` | `lenovo-thinkpad-p14s-amd-gen5` |
|
||||||
| [Lenovo ThinkPad P52](lenovo/thinkpad/p52) | `<nixos-hardware/lenovo/thinkpad/p52>` | `lenovo-thinkpad-p52` |
|
| [Lenovo ThinkPad P14s Intel Gen 2](lenovo/thinkpad/p14s/intel/gen2) | `<nixos-hardware/lenovo/thinkpad/p14s/intel/gen2>` | `lenovo-thinkpad-p14s-intel-gen2` |
|
||||||
| [Lenovo ThinkPad P53](lenovo/thinkpad/p53) | `<nixos-hardware/lenovo/thinkpad/p53>` | `lenovo-thinkpad-p53` |
|
| [Lenovo ThinkPad P14s Intel Gen 3](lenovo/thinkpad/p14s/intel/gen3) | `<nixos-hardware/lenovo/thinkpad/p14s/intel/gen3>` | `lenovo-thinkpad-p14s-intel-gen3` |
|
||||||
| [Lenovo ThinkPad T14 AMD Gen 1](lenovo/thinkpad/t14/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen1>` | `lenovo-thinkpad-t14-amd-gen1` |
|
| [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 T14 AMD Gen 2](lenovo/thinkpad/t14/amd/gen2) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen2>` | `lenovo-thinkpad-t14-amd-gen2` |
|
| [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 T14 AMD Gen 3](lenovo/thinkpad/t14/amd/gen3) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen3>` | `lenovo-thinkpad-t14-amd-gen3` |
|
| [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 T14 AMD Gen 4](lenovo/thinkpad/t14/amd/gen4) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen4>` | `lenovo-thinkpad-t14-amd-gen4` |
|
| [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 T14 AMD Gen 5](lenovo/thinkpad/t14/amd/gen5) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen5>` | `lenovo-thinkpad-t14-amd-gen5` |
|
| [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 T14](lenovo/thinkpad/t14) | `<nixos-hardware/lenovo/thinkpad/t14>` | `lenovo-thinkpad-t14` |
|
| [Lenovo ThinkPad P1](lenovo/thinkpad/p1) | `<nixos-hardware/lenovo/thinkpad/p1>` | `lenovo-thinkpad-p1` |
|
||||||
| [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 P43s](lenovo/thinkpad/p43s) | `<nixos-hardware/lenovo/thinkpad/p43s>` | `lenovo-thinkpad-p43s` |
|
||||||
| [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 P50](lenovo/thinkpad/p50) | `<nixos-hardware/lenovo/thinkpad/p50>` | `lenovo-thinkpad-p50` |
|
||||||
| [Lenovo ThinkPad T14s](lenovo/thinkpad/t14s) | `<nixos-hardware/lenovo/thinkpad/t14s>` | `lenovo-thinkpad-t14s` |
|
| [Lenovo ThinkPad P51](lenovo/thinkpad/p51) | `<nixos-hardware/lenovo/thinkpad/p51>` | `lenovo-thinkpad-p51` |
|
||||||
| [Lenovo ThinkPad T410](lenovo/thinkpad/t410) | `<nixos-hardware/lenovo/thinkpad/t410>` | `lenovo-thinkpad-t410` |
|
| [Lenovo ThinkPad P52](lenovo/thinkpad/p52) | `<nixos-hardware/lenovo/thinkpad/p52>` | `lenovo-thinkpad-p52` |
|
||||||
| [Lenovo ThinkPad T420](lenovo/thinkpad/t420) | `<nixos-hardware/lenovo/thinkpad/t420>` | `lenovo-thinkpad-t420` |
|
| [Lenovo ThinkPad P53](lenovo/thinkpad/p53) | `<nixos-hardware/lenovo/thinkpad/p53>` | `lenovo-thinkpad-p53` |
|
||||||
| [Lenovo ThinkPad T430](lenovo/thinkpad/t430) | `<nixos-hardware/lenovo/thinkpad/t430>` | `lenovo-thinkpad-t430` |
|
| [Lenovo ThinkPad T14 AMD Gen 1](lenovo/thinkpad/t14/amd/gen1) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen1>` | `lenovo-thinkpad-t14-amd-gen1` |
|
||||||
| [Lenovo ThinkPad T440p](lenovo/thinkpad/t440p) | `<nixos-hardware/lenovo/thinkpad/t440p>` | `lenovo-thinkpad-t440p` |
|
| [Lenovo ThinkPad T14 AMD Gen 2](lenovo/thinkpad/t14/amd/gen2) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen2>` | `lenovo-thinkpad-t14-amd-gen2` |
|
||||||
| [Lenovo ThinkPad T440s](lenovo/thinkpad/t440s) | `<nixos-hardware/lenovo/thinkpad/t440s>` | `lenovo-thinkpad-t440s` |
|
| [Lenovo ThinkPad T14 AMD Gen 3](lenovo/thinkpad/t14/amd/gen3) | `<nixos-hardware/lenovo/thinkpad/t14/amd/gen3>` | `lenovo-thinkpad-t14-amd-gen3` |
|
||||||
| [Lenovo ThinkPad T450s](lenovo/thinkpad/t450s) | `<nixos-hardware/lenovo/thinkpad/t450s>` | `lenovo-thinkpad-t450s` |
|
| [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 T460](lenovo/thinkpad/t460) | `<nixos-hardware/lenovo/thinkpad/t460>` | `lenovo-thinkpad-t460` |
|
| [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 T460p](lenovo/thinkpad/t460p) | `<nixos-hardware/lenovo/thinkpad/t460p>` | `lenovo-thinkpad-t460p` |
|
| [Lenovo ThinkPad T14](lenovo/thinkpad/t14) | `<nixos-hardware/lenovo/thinkpad/t14>` | `lenovo-thinkpad-t14` |
|
||||||
| [Lenovo ThinkPad T460s](lenovo/thinkpad/t460s) | `<nixos-hardware/lenovo/thinkpad/t460s>` | `lenovo-thinkpad-t460s` |
|
| [Lenovo ThinkPad T14 Intel Gen 1](lenovo/thinkpad/t14/intel/gen1) | `<nixos-hardware/lenovo/thinkpad/t14/intel/gen1>` | `lenovo-thinkpad-t14-intel-gen1` |
|
||||||
| [Lenovo ThinkPad T470s](lenovo/thinkpad/t470s) | `<nixos-hardware/lenovo/thinkpad/t470s>` | `lenovo-thinkpad-t470s` |
|
| [Lenovo ThinkPad T14 Intel Gen 1 (Nvidia)](lenovo/thinkpad/t14/intel/gen1/nvidia) | `<nixos-hardware/lenovo/thinkpad/t14/intel/gen1/nvidia>`| `lenovo-thinkpad-t14-intel-gen1-nvidia`|
|
||||||
| [Lenovo ThinkPad T480](lenovo/thinkpad/t480) | `<nixos-hardware/lenovo/thinkpad/t480>` | `lenovo-thinkpad-t480` |
|
| [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 T480s](lenovo/thinkpad/t480s) | `<nixos-hardware/lenovo/thinkpad/t480s>` | `lenovo-thinkpad-t480s` |
|
| [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 T490](lenovo/thinkpad/t490) | `<nixos-hardware/lenovo/thinkpad/t490>` | `lenovo-thinkpad-t490` |
|
| [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 T490s](lenovo/thinkpad/t490s) | `<nixos-hardware/lenovo/thinkpad/t490s>` | `lenovo-thinkpad-t490s` |
|
| [Lenovo ThinkPad T14s](lenovo/thinkpad/t14s) | `<nixos-hardware/lenovo/thinkpad/t14s>` | `lenovo-thinkpad-t14s` |
|
||||||
| [Lenovo ThinkPad T495](lenovo/thinkpad/t495) | `<nixos-hardware/lenovo/thinkpad/t495>` | `lenovo-thinkpad-t495` |
|
| [Lenovo ThinkPad T410](lenovo/thinkpad/t410) | `<nixos-hardware/lenovo/thinkpad/t410>` | `lenovo-thinkpad-t410` |
|
||||||
| [Lenovo ThinkPad T520](lenovo/thinkpad/t520) | `<nixos-hardware/lenovo/thinkpad/t520>` | `lenovo-thinkpad-t520` |
|
| [Lenovo ThinkPad T420](lenovo/thinkpad/t420) | `<nixos-hardware/lenovo/thinkpad/t420>` | `lenovo-thinkpad-t420` |
|
||||||
| [Lenovo ThinkPad T550](lenovo/thinkpad/t550) | `<nixos-hardware/lenovo/thinkpad/t550>` | `lenovo-thinkpad-t550` |
|
| [Lenovo ThinkPad T430](lenovo/thinkpad/t430) | `<nixos-hardware/lenovo/thinkpad/t430>` | `lenovo-thinkpad-t430` |
|
||||||
| [Lenovo ThinkPad T590](lenovo/thinkpad/t590) | `<nixos-hardware/lenovo/thinkpad/t590>` | `lenovo-thinkpad-t590` |
|
| [Lenovo ThinkPad T440p](lenovo/thinkpad/t440p) | `<nixos-hardware/lenovo/thinkpad/t440p>` | `lenovo-thinkpad-t440p` |
|
||||||
| [Lenovo ThinkPad W520](lenovo/thinkpad/w520) | `<nixos-hardware/lenovo/thinkpad/w520>` | `lenovo-thinkpad-w520` |
|
| [Lenovo ThinkPad T440s](lenovo/thinkpad/t440s) | `<nixos-hardware/lenovo/thinkpad/t440s>` | `lenovo-thinkpad-t440s` |
|
||||||
| [Lenovo ThinkPad X1 Yoga](lenovo/thinkpad/x1/yoga) | `<nixos-hardware/lenovo/thinkpad/x1/yoga>` | `lenovo-thinkpad-x1-yoga` |
|
| [Lenovo ThinkPad T450s](lenovo/thinkpad/t450s) | `<nixos-hardware/lenovo/thinkpad/t450s>` | `lenovo-thinkpad-t450s` |
|
||||||
| [Lenovo ThinkPad X1 Yoga Gen 7](lenovo/thinkpad/x1/yoga/7th-gen/) | `<nixos-hardware/lenovo/thinkpad/x1/yoga/7th-gen>` | `lenovo-thinkpad-x1-yoga-7th-gen` |
|
| [Lenovo ThinkPad T460](lenovo/thinkpad/t460) | `<nixos-hardware/lenovo/thinkpad/t460>` | `lenovo-thinkpad-t460` |
|
||||||
| [Lenovo ThinkPad X1 Yoga Gen 8](lenovo/thinkpad/x1/yoga/8th-gen/) | `<nixos-hardware/lenovo/thinkpad/x1/yoga/8th-gen>` | `lenovo-thinkpad-x1-yoga-8th-gen` |
|
| [Lenovo ThinkPad T460p](lenovo/thinkpad/t460p) | `<nixos-hardware/lenovo/thinkpad/t460p>` | `lenovo-thinkpad-t460p` |
|
||||||
| [Lenovo ThinkPad X1 (2nd Gen)](lenovo/thinkpad/x1/2nd-gen) | `<nixos-hardware/lenovo/thinkpad/x1/2nd-gen>` | `lenovo-thinkpad-x1-2nd-gen` |
|
| [Lenovo ThinkPad T460s](lenovo/thinkpad/t460s) | `<nixos-hardware/lenovo/thinkpad/t460s>` | `lenovo-thinkpad-t460s` |
|
||||||
| [Lenovo ThinkPad X1 (6th Gen)](lenovo/thinkpad/x1/6th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/6th-gen>` | `lenovo-thinkpad-x1-6th-gen` |
|
| [Lenovo ThinkPad T470s](lenovo/thinkpad/t470s) | `<nixos-hardware/lenovo/thinkpad/t470s>` | `lenovo-thinkpad-t470s` |
|
||||||
| [Lenovo ThinkPad X1 (7th Gen)](lenovo/thinkpad/x1/7th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/7th-gen>` | `lenovo-thinkpad-x1-7th-gen` |
|
| [Lenovo ThinkPad T480](lenovo/thinkpad/t480) | `<nixos-hardware/lenovo/thinkpad/t480>` | `lenovo-thinkpad-t480` |
|
||||||
| [Lenovo ThinkPad X1 (9th Gen)](lenovo/thinkpad/x1/9th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/9th-gen>` | `lenovo-thinkpad-x1-9th-gen` |
|
| [Lenovo ThinkPad T480s](lenovo/thinkpad/t480s) | `<nixos-hardware/lenovo/thinkpad/t480s>` | `lenovo-thinkpad-t480s` |
|
||||||
| [Lenovo ThinkPad X1 (10th Gen)](lenovo/thinkpad/x1/10th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/10th-gen>` | `lenovo-thinkpad-x1-10th-gen` |
|
| [Lenovo ThinkPad T490](lenovo/thinkpad/t490) | `<nixos-hardware/lenovo/thinkpad/t490>` | `lenovo-thinkpad-t490` |
|
||||||
| [Lenovo ThinkPad X1 (11th Gen)](lenovo/thinkpad/x1/11th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/11th-gen>` | `lenovo-thinkpad-x1-11th-gen` |
|
| [Lenovo ThinkPad T490s](lenovo/thinkpad/t490s) | `<nixos-hardware/lenovo/thinkpad/t490s>` | `lenovo-thinkpad-t490s` |
|
||||||
| [Lenovo ThinkPad X1 (12th Gen)](lenovo/thinkpad/x1/12th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/12th-gen>` | `lenovo-thinkpad-x1-12th-gen` |
|
| [Lenovo ThinkPad T495](lenovo/thinkpad/t495) | `<nixos-hardware/lenovo/thinkpad/t495>` | `lenovo-thinkpad-t495` |
|
||||||
| [Lenovo ThinkPad X1 (13th Gen)](lenovo/thinkpad/x1/13th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/13th-gen>` | `lenovo-thinkpad-x1-13th-gen` |
|
| [Lenovo ThinkPad T520](lenovo/thinkpad/t520) | `<nixos-hardware/lenovo/thinkpad/t520>` | `lenovo-thinkpad-t520` |
|
||||||
| [Lenovo ThinkPad X1 Extreme Gen 2](lenovo/thinkpad/x1-extreme/gen2) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen2>` | `lenovo-thinkpad-x1-extreme-gen2` |
|
| [Lenovo ThinkPad T550](lenovo/thinkpad/t550) | `<nixos-hardware/lenovo/thinkpad/t550>` | `lenovo-thinkpad-t550` |
|
||||||
| [Lenovo ThinkPad X1 Extreme Gen 3](lenovo/thinkpad/x1-extreme/gen3) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen3>` | `lenovo-thinkpad-x1-extreme-gen3` |
|
| [Lenovo ThinkPad T590](lenovo/thinkpad/t590) | `<nixos-hardware/lenovo/thinkpad/t590>` | `lenovo-thinkpad-t590` |
|
||||||
| [Lenovo ThinkPad X1 Extreme Gen 4](lenovo/thinkpad/x1-extreme/gen4) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen4>` | `lenovo-thinkpad-x1-extreme-gen4` |
|
| [Lenovo ThinkPad W520](lenovo/thinkpad/w520) | `<nixos-hardware/lenovo/thinkpad/w520>` | `lenovo-thinkpad-w520` |
|
||||||
| [Lenovo ThinkPad X1 Nano Gen 1](lenovo/thinkpad/x1-nano/gen1) | `<nixos-hardware/lenovo/thinkpad/x1-nano/gen1>` | `lenovo-thinkpad-x1-nano-gen1` |
|
| [Lenovo ThinkPad X1 Yoga](lenovo/thinkpad/x1/yoga) | `<nixos-hardware/lenovo/thinkpad/x1/yoga>` | `lenovo-thinkpad-x1-yoga` |
|
||||||
| [Lenovo ThinkPad X13s](lenovo/thinkpad/x13s) | `<nixos-hardware/lenovo/thinkpad/x13s>` | `lenovo-thinkpad-x13s` |
|
| [Lenovo ThinkPad X1 Yoga Gen 7](lenovo/thinkpad/x1/yoga/7th-gen/) | `<nixos-hardware/lenovo/thinkpad/x1/yoga/7th-gen>` | `lenovo-thinkpad-x1-yoga-7th-gen` |
|
||||||
| [Lenovo ThinkPad X13 Yoga](lenovo/thinkpad/x13/yoga) | `<nixos-hardware/lenovo/thinkpad/x13/yoga>` | `lenovo-thinkpad-x13-yoga` |
|
| [Lenovo ThinkPad X1 Yoga Gen 8](lenovo/thinkpad/x1/yoga/8th-gen/) | `<nixos-hardware/lenovo/thinkpad/x1/yoga/8th-gen>` | `lenovo-thinkpad-x1-yoga-8th-gen` |
|
||||||
| [Lenovo ThinkPad X13 Yoga (3th Gen)](lenovo/thinkpad/x13/yoga/3th-gen) | `<nixos-hardware/lenovo/thinkpad/x13/yoga/3th-gen>` | `lenovo-thinkpad-x13-yoga-3th-gen` |
|
| [Lenovo ThinkPad X1 (2nd Gen)](lenovo/thinkpad/x1/2nd-gen) | `<nixos-hardware/lenovo/thinkpad/x1/2nd-gen>` | `lenovo-thinkpad-x1-2nd-gen` |
|
||||||
| [Lenovo ThinkPad X13 (Intel)](lenovo/thinkpad/x13/intel) | `<nixos-hardware/lenovo/thinkpad/x13/intel>` | `lenovo-thinkpad-x13-intel` |
|
| [Lenovo ThinkPad X1 (6th Gen)](lenovo/thinkpad/x1/6th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/6th-gen>` | `lenovo-thinkpad-x1-6th-gen` |
|
||||||
| [Lenovo ThinkPad X13 (AMD)](lenovo/thinkpad/x13/amd) | `<nixos-hardware/lenovo/thinkpad/x13/amd>` | `lenovo-thinkpad-x13-amd` |
|
| [Lenovo ThinkPad X1 (7th Gen)](lenovo/thinkpad/x1/7th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/7th-gen>` | `lenovo-thinkpad-x1-7th-gen` |
|
||||||
| [Lenovo ThinkPad X140e](lenovo/thinkpad/x140e) | `<nixos-hardware/lenovo/thinkpad/x140e>` | `lenovo-thinkpad-x140e` |
|
| [Lenovo ThinkPad X1 (9th Gen)](lenovo/thinkpad/x1/9th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/9th-gen>` | `lenovo-thinkpad-x1-9th-gen` |
|
||||||
| [Lenovo ThinkPad X200s](lenovo/thinkpad/x200s) | `<nixos-hardware/lenovo/thinkpad/x200s>` | `lenovo-thinkpad-x200s` |
|
| [Lenovo ThinkPad X1 (10th Gen)](lenovo/thinkpad/x1/10th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/10th-gen>` | `lenovo-thinkpad-x1-10th-gen` |
|
||||||
| [Lenovo ThinkPad X220](lenovo/thinkpad/x220) | `<nixos-hardware/lenovo/thinkpad/x220>` | `lenovo-thinkpad-x220` |
|
| [Lenovo ThinkPad X1 (11th Gen)](lenovo/thinkpad/x1/11th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/11th-gen>` | `lenovo-thinkpad-x1-11th-gen` |
|
||||||
| [Lenovo ThinkPad X230](lenovo/thinkpad/x230) | `<nixos-hardware/lenovo/thinkpad/x230>` | `lenovo-thinkpad-x230` |
|
| [Lenovo ThinkPad X1 (12th Gen)](lenovo/thinkpad/x1/12th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/12th-gen>` | `lenovo-thinkpad-x1-12th-gen` |
|
||||||
| [Lenovo ThinkPad X250](lenovo/thinkpad/x250) | `<nixos-hardware/lenovo/thinkpad/x250>` | `lenovo-thinkpad-x250` |
|
| [Lenovo ThinkPad X1 (13th Gen)](lenovo/thinkpad/x1/13th-gen) | `<nixos-hardware/lenovo/thinkpad/x1/13th-gen>` | `lenovo-thinkpad-x1-13th-gen` |
|
||||||
| [Lenovo ThinkPad X260](lenovo/thinkpad/x260) | `<nixos-hardware/lenovo/thinkpad/x260>` | `lenovo-thinkpad-x260` |
|
| [Lenovo ThinkPad X1 Extreme Gen 2](lenovo/thinkpad/x1-extreme/gen2) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen2>` | `lenovo-thinkpad-x1-extreme-gen2` |
|
||||||
| [Lenovo ThinkPad X270](lenovo/thinkpad/x270) | `<nixos-hardware/lenovo/thinkpad/x270>` | `lenovo-thinkpad-x270` |
|
| [Lenovo ThinkPad X1 Extreme Gen 3](lenovo/thinkpad/x1-extreme/gen3) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen3>` | `lenovo-thinkpad-x1-extreme-gen3` |
|
||||||
| [Lenovo ThinkPad X280](lenovo/thinkpad/x280) | `<nixos-hardware/lenovo/thinkpad/x280>` | `lenovo-thinkpad-x280` |
|
| [Lenovo ThinkPad X1 Extreme Gen 4](lenovo/thinkpad/x1-extreme/gen4) | `<nixos-hardware/lenovo/thinkpad/x1-extreme/gen4>` | `lenovo-thinkpad-x1-extreme-gen4` |
|
||||||
| [Lenovo ThinkPad X390](lenovo/thinkpad/x390) | `<nixos-hardware/lenovo/thinkpad/x390>` | `lenovo-thinkpad-x390` |
|
| [Lenovo ThinkPad X1 Nano Gen 1](lenovo/thinkpad/x1-nano/gen1) | `<nixos-hardware/lenovo/thinkpad/x1-nano/gen1>` | `lenovo-thinkpad-x1-nano-gen1` |
|
||||||
| [Lenovo ThinkPad Z Series](lenovo/thinkpad/z) | `<nixos-hardware/lenovo/thinkpad/z>` | `lenovo-thinkpad-z` |
|
| [Lenovo ThinkPad X13s](lenovo/thinkpad/x13s) | `<nixos-hardware/lenovo/thinkpad/x13s>` | `lenovo-thinkpad-x13s` |
|
||||||
| [Lenovo ThinkPad Z13 Gen 1](lenovo/thinkpad/z/gen1/z13) | `<nixos-hardware/lenovo/thinkpad/z/gen1/z13>` | `lenovo-thinkpad-z-gen1-z13` |
|
| [Lenovo ThinkPad X13 Yoga](lenovo/thinkpad/x13/yoga) | `<nixos-hardware/lenovo/thinkpad/x13/yoga>` | `lenovo-thinkpad-x13-yoga` |
|
||||||
| [Lenovo ThinkPad Z13 Gen 2](lenovo/thinkpad/z/gen2/z13) | `<nixos-hardware/lenovo/thinkpad/z/gen2/z13>` | `lenovo-thinkpad-z-gen2-z13` |
|
| [Lenovo ThinkPad X13 Yoga (3th Gen)](lenovo/thinkpad/x13/yoga/3th-gen) | `<nixos-hardware/lenovo/thinkpad/x13/yoga/3th-gen>` | `lenovo-thinkpad-x13-yoga-3th-gen` |
|
||||||
| [Lenovo XiaoXin Pro 14imh9 2024](lenovo/ideapad/14imh9) | `<nixos-hardware/lenovo/ideapad/14imh9>` | `lenovo-ideapad-14imh9` |
|
| [Lenovo ThinkPad X13 (Intel)](lenovo/thinkpad/x13/intel) | `<nixos-hardware/lenovo/thinkpad/x13/intel>` | `lenovo-thinkpad-x13-intel` |
|
||||||
| [LENOVO Yoga 6 13ALC6 82ND](lenovo/yoga/6/13ALC6) | `<nixos-hardware/lenovo/yoga/6/13ALC6>` | `lenovo-yoga-6-13ALC6` |
|
| [Lenovo ThinkPad X13 (AMD)](lenovo/thinkpad/x13/amd) | `<nixos-hardware/lenovo/thinkpad/x13/amd>` | `lenovo-thinkpad-x13-amd` |
|
||||||
| [LENOVO Yoga Slim 7 Pro-X 14ARH7 82ND](lenovo/yoga/7/14ARH7/amdgpu) | `<nixos-hardware/lenovo/yoga/7/14ARH7/amdgpu>` | `lenovo-yoga-7-14ARH7-amdgpu` |
|
| [Lenovo ThinkPad X140e](lenovo/thinkpad/x140e) | `<nixos-hardware/lenovo/thinkpad/x140e>` | `lenovo-thinkpad-x140e` |
|
||||||
| [LENOVO Yoga Slim 7 Pro-X 14ARH7 82ND](lenovo/yoga/7/14ARH7/nvidia) | `<nixos-hardware/lenovo/yoga/7/14ARH7/nvidia>` | `lenovo-yoga-7-14ARH7-nvidia` |
|
| [Lenovo ThinkPad X200s](lenovo/thinkpad/x200s) | `<nixos-hardware/lenovo/thinkpad/x200s>` | `lenovo-thinkpad-x200s` |
|
||||||
| [Lenovo Yoga Slim 7i Pro X 14IAH7 (Integrated)](lenovo/yoga/7/14IAH7/integrated) | `<nixos-hardware/lenovo/yoga/7/14IAH7/integrated>` | `lenovo-yoga-7-14IAH7-integrated` |
|
| [Lenovo ThinkPad X220](lenovo/thinkpad/x220) | `<nixos-hardware/lenovo/thinkpad/x220>` | `lenovo-thinkpad-x220` |
|
||||||
| [Lenovo Yoga Slim 7i Pro X 14IAH7 (Hybrid)](lenovo/yoga/7/14IAH7/hybrid) | `<nixos-hardware/lenovo/yoga/7/14IAH7/hybrid>` | `lenovo-yoga-7-14IAH7-hybrid` |
|
| [Lenovo ThinkPad X230](lenovo/thinkpad/x230) | `<nixos-hardware/lenovo/thinkpad/x230>` | `lenovo-thinkpad-x230` |
|
||||||
| [Lenovo Yoga Slim 7 14ILL10](lenovo/yoga/7/14ILL10) | `<nixos-hardware/lenovo/yoga/7/14ILL10>` | `lenovo-yoga-7-14ILL10` |
|
| [Lenovo ThinkPad X250](lenovo/thinkpad/x250) | `<nixos-hardware/lenovo/thinkpad/x250>` | `lenovo-thinkpad-x250` |
|
||||||
| [LENOVO Yoga 7 Slim Gen8](lenovo/yoga/7/slim/gen8) | `<nixos-hardware/lenovo/yoga/7/slim/gen8>` | `lenovo-yoga-7-slim-gen8` |
|
| [Lenovo ThinkPad X260](lenovo/thinkpad/x260) | `<nixos-hardware/lenovo/thinkpad/x260>` | `lenovo-thinkpad-x260` |
|
||||||
| [MSI B550-A PRO](msi/b550-a-pro) | `<nixos-hardware/msi/b550-a-pro>` | `msi-b550-a-pro` |
|
| [Lenovo ThinkPad X270](lenovo/thinkpad/x270) | `<nixos-hardware/lenovo/thinkpad/x270>` | `lenovo-thinkpad-x270` |
|
||||||
| [MSI B350 TOMAHAWK](msi/b350-tomahawk) | `<nixos-hardware/msi/b350-tomahawk>` | `msi-b350-tomahawk` |
|
| [Lenovo ThinkPad X280](lenovo/thinkpad/x280) | `<nixos-hardware/lenovo/thinkpad/x280>` | `lenovo-thinkpad-x280` |
|
||||||
| [MSI GS60 2QE](msi/gs60) | `<nixos-hardware/msi/gs60>` | `msi-gs60` |
|
| [Lenovo ThinkPad X390](lenovo/thinkpad/x390) | `<nixos-hardware/lenovo/thinkpad/x390>` | `lenovo-thinkpad-x390` |
|
||||||
| [MSI GL62/CX62](msi/gl62) | `<nixos-hardware/msi/gl62>` | `msi-gl62` |
|
| [Lenovo ThinkPad Z Series](lenovo/thinkpad/z) | `<nixos-hardware/lenovo/thinkpad/z>` | `lenovo-thinkpad-z` |
|
||||||
| [MSI GL65 10SDR-492](msi/gl65/10SDR-492) | `<nixos-hardware/msi/gl65/10SDR-492>` | `msi-gl65-10SDR-492` |
|
| [Lenovo ThinkPad Z13 Gen 1](lenovo/thinkpad/z/gen1/z13) | `<nixos-hardware/lenovo/thinkpad/z/gen1/z13>` | `lenovo-thinkpad-z13-gen1` |
|
||||||
| [Microchip Icicle Kit](microchip/icicle-kit) | `<nixos-hardware/microchip/icicle-kit>` | `microchip-icicle-kit` |
|
| [Lenovo ThinkPad Z13 Gen 2](lenovo/thinkpad/z/gen2/z13) | `<nixos-hardware/lenovo/thinkpad/z/gen2/z13>` | `lenovo-thinkpad-z13-gen2` |
|
||||||
| [Microsoft Surface Go](microsoft/surface/surface-go) | `<nixos-hardware/microsoft/surface/surface-go>` | `microsoft-surface-surface-go` |
|
| [Lenovo XiaoXin Pro 14imh9 2024](lenovo/ideapad/14imh9) | `<nixos-hardware/lenovo/ideapad/14imh9>` | `lenovo-ideapad-14imh9` |
|
||||||
| [Microsoft Surface Pro (Intel)](microsoft/surface/surface-pro-intel) | `<nixos-hardware/microsoft/surface/surface-pro-intel>` | `microsoft-surface-surface-pro-intel` |
|
| [LENOVO Yoga 6 13ALC6 82ND](lenovo/yoga/6/13ALC6) | `<nixos-hardware/lenovo/yoga/6/13ALC6>` | `lenovo-yoga-6-13ALC6` |
|
||||||
| [Microsoft Surface Laptop (AMD)](microsoft/surface/surface-laptop-amd) | `<nixos-hardware/microsoft/surface/surface-laptop-amd>` | `microsoft-surface-surface-laptop-amd` |
|
| [LENOVO Yoga Slim 7 Pro-X 14ARH7 82ND](lenovo/yoga/7/14ARH7/amdgpu) | `<nixos-hardware/lenovo/yoga/7/14ARH7/amdgpu>` | `lenovo-yoga-7-14ARH7-amdgpu` |
|
||||||
| [Microsoft Surface Range (Common Modules)](microsoft/surface/common) | `<nixos-hardware/microsoft/surface/common>` | `microsoft-surface-common` |
|
| [LENOVO Yoga Slim 7 Pro-X 14ARH7 82ND](lenovo/yoga/7/14ARH7/nvidia) | `<nixos-hardware/lenovo/yoga/7/14ARH7/nvidia>` | `lenovo-yoga-7-14ARH7-nvidia` |
|
||||||
| [Microsoft Surface Pro 3](microsoft/surface-pro/3) | `<nixos-hardware/microsoft/surface-pro/3>` | `microsoft-surface-pro-3` |
|
| [Lenovo Yoga Slim 7i Pro X 14IAH7 (Integrated)](lenovo/yoga/7/14IAH7/integrated) | `<nixos-hardware/lenovo/yoga/7/14IAH7/integrated>` | `lenovo-yoga-7-14IAH7-integrated` |
|
||||||
| [Microsoft Surface Pro 9](microsoft/surface-pro/9) | `<nixos-hardware/microsoft/surface-pro/9>` | `microsoft-surface-pro-9` |
|
| [Lenovo Yoga Slim 7i Pro X 14IAH7 (Hybrid)](lenovo/yoga/7/14IAH7/hybrid) | `<nixos-hardware/lenovo/yoga/7/14IAH7/hybrid>` | `lenovo-yoga-7-14IAH7-hybrid` |
|
||||||
| [Morefine M600](morefine/m600) | `<nixos-hardware/morefine/m600>` | `morefine-m600` |
|
| [Lenovo Yoga Slim 7 14ILL10](lenovo/yoga/7/14ILL10) | `<nixos-hardware/lenovo/yoga/7/14ILL10>` | `lenovo-yoga-7-14ILL10` |
|
||||||
| [Minisforum V3](minisforum/v3) | `<nixos-hardware/minisforum/v3>` | `minisforum-v3` |
|
| [LENOVO Yoga 7 Slim Gen8](lenovo/yoga/7/slim/gen8) | `<nixos-hardware/lenovo/yoga/7/slim/gen8>` | `lenovo-yoga-7-slim-gen8` |
|
||||||
| [NXP iMX8 MPlus Evaluation Kit](nxp/imx8mp-evk) | `<nixos-hardware/nxp/imx8mp-evk>` | `nxp-imx8mp-evk` |
|
| [Linglong Nova Studio](linglong/nova-studio) | `<nixos-hardware/linglong/nova-studio>` | `linglong-nova-studio` |
|
||||||
| [NXP iMX8 MQuad Evaluation Kit](nxp/imx8mq-evk) | `<nixos-hardware/nxp/imx8mq-evk>` | `nxp-imx8mq-evk` |
|
| [MSI B550-A PRO](msi/b550-a-pro) | `<nixos-hardware/msi/b550-a-pro>` | `msi-b550-a-pro` |
|
||||||
| [Hardkernel Odroid HC4](hardkernel/odroid-hc4/default.nix) | `<nixos-hardware/hardkernel/odroid-hc4>` | `hardkernel-odroid-hc4` |
|
| [MSI B350 TOMAHAWK](msi/b350-tomahawk) | `<nixos-hardware/msi/b350-tomahawk>` | `msi-b350-tomahawk` |
|
||||||
| [Hardkernel Odroid H3](hardkernel/odroid-h3/default.nix) | `<nixos-hardware/hardkernel/odroid-h3>` | `hardkernel-odroid-h3` |
|
| [MSI B550 TOMAHAWK](msi/b550-tomahawk) | `<nixos-hardware/msi/b550-tomahawk>` | `msi-b550-tomahawk` |
|
||||||
| [Hardkernel Odroid H4](hardkernel/odroid-h4/default.nix) | `<nixos-hardware/hardkernel/odroid-h4>` | `hardkernel-odroid-h4` |
|
| [MSI GS60 2QE](msi/gs60) | `<nixos-hardware/msi/gs60>` | `msi-gs60` |
|
||||||
| [Omen 14-fb0798ng](omen/14-fb0798ng) | `<nixos-hardware/omen/14-fb0798ng>` | `omen-14-fb0798ng` |
|
| [MSI GL62/CX62](msi/gl62) | `<nixos-hardware/msi/gl62>` | `msi-gl62` |
|
||||||
| [Omen 15-ce002ns](omen/15-ce002ns) | `<nixos-hardware/omen/15-ce002ns>` | `omen-15-ce002ns` |
|
| [MSI GL65 10SDR-492](msi/gl65/10SDR-492) | `<nixos-hardware/msi/gl65/10SDR-492>` | `msi-gl65-10SDR-492` |
|
||||||
| [Omen 15-en0010ca](omen/15-en0010ca) | `<nixos-hardware/omen/15-en0010ca>` | `omen-15-en0010ca` |
|
| [Malibal Aon S1](malibal/aon/s1) | | `<nixos-hardware/malibal/aon/s1>` | `malibal-aon-s1` |
|
||||||
| [Omen 16-n0005ne](omen/16-n0005ne) | `<nixos-hardware/omen/16-n0005ne>` | `omen-16-n0005ne` |
|
| [Microchip Icicle Kit](microchip/icicle-kit) | `<nixos-hardware/microchip/icicle-kit>` | `microchip-icicle-kit` |
|
||||||
| [Omen 16-n0280nd](/omen/16-n0280nd) | `<nixos-hardware/omen/16-n0280nd>` | `omen-16-n0280nd` |
|
| [Microsoft Surface Go](microsoft/surface/surface-go) | `<nixos-hardware/microsoft/surface/surface-go>` | `microsoft-surface-go` |
|
||||||
| [Omen 15-en1007sa](omen/15-en1007sa) | `<nixos-hardware/omen/15-en1007sa>` | `omen-15-en1007sa` |
|
| [Microsoft Surface Pro (Intel)](microsoft/surface/surface-pro-intel) | `<nixos-hardware/microsoft/surface/surface-pro-intel>` | `microsoft-surface-pro-intel` |
|
||||||
| [Omen 15-en0002np](omen/15-en0002np) | `<nixos-hardware/omen/15-en0002np>` | `omen-15-en0002np` |
|
| [Microsoft Surface Laptop (AMD)](microsoft/surface/surface-laptop-amd) | `<nixos-hardware/microsoft/surface/surface-laptop-amd>` | `microsoft-surface-laptop-amd` |
|
||||||
| [One-Netbook OneNetbook 4](onenetbook/4) | `<nixos-hardware/onenetbook/4>` | `onenetbook-4` |
|
| [Microsoft Surface Range (Common Modules)](microsoft/surface/common) | `<nixos-hardware/microsoft/surface/common>` | `microsoft-surface-common` |
|
||||||
| [Panasonic Let's Note CF-LX4](panasonic/letsnote/cf-lx4) | `<nixos-hardware/panasonic/letsnote/cf-lx4>` | `panasonic-letsnote-cf-lx4` |
|
| [Microsoft Surface Pro 3](microsoft/surface-pro/3) | `<nixos-hardware/microsoft/surface-pro/3>` | `microsoft-surface-pro-3` |
|
||||||
| [PC Engines APU](pcengines/apu) | `<nixos-hardware/pcengines/apu>` | `pcengines-apu` |
|
| [Microsoft Surface Pro 9](microsoft/surface-pro/9) | `<nixos-hardware/microsoft/surface-pro/9>` | `microsoft-surface-pro-9` |
|
||||||
| [PINE64 Pinebook Pro](pine64/pinebook-pro/) | `<nixos-hardware/pine64/pinebook-pro>` | `pine64-pinebook-pro` |
|
| [Milk-V Pioneer](milkv/pioneer) | `<nixos-hardware/milkv/pioneer>` | `milkv-pioneer` |
|
||||||
| [PINE64 RockPro64](pine64/rockpro64/) | `<nixos-hardware/pine64/rockpro64>` | `pine64-rockpro64` |
|
| [Morefine M600](morefine/m600) | `<nixos-hardware/morefine/m600>` | `morefine-m600` |
|
||||||
| [PINE64 STAR64](pine64/star64/) | `<nixos-hardware/pine64/star64>` | `pine64-star64` |
|
| [Minisforum V3](minisforum/v3) | `<nixos-hardware/minisforum/v3>` | `minisforum-v3` |
|
||||||
| [Protectli VP4670](protectli/vp4670/) | `<nixos-hardware/protectli/vp4670>` | `protectli-vp4670` |
|
| [MNT Reform with RK3588 module](mnt/reform/rk3588) | `<nixos-hardware/mnt/reform/rk3588` | `mnt-reform-rk3588` |
|
||||||
| [Purism Librem 13v3](purism/librem/13v3) | `<nixos-hardware/purism/librem/13v3>` | `purism-librem-13v3` |
|
| [MECHREVO Yilong15Pro](mechrevo/GM5HG0A) | `<nixos-hardware/mechrevo/GM5HG0A>` | `mechrevo-gm5hg0a` |
|
||||||
| [Purism Librem 15v3](purism/librem/15v3) | `<nixos-hardware/purism/librem/15v3>` | `purism-librem-15v3` |
|
| [NXP iMX8 MPlus Evaluation Kit](nxp/imx8mp-evk) | `<nixos-hardware/nxp/imx8mp-evk>` | `nxp-imx8mp-evk` |
|
||||||
| [Purism Librem 5r4](purism/librem/5r4) | `<nixos-hardware/purism/librem/5r4>` | `purism-librem-5r4` |
|
| [NXP iMX8 MQuad Evaluation Kit](nxp/imx8mq-evk) | `<nixos-hardware/nxp/imx8mq-evk>` | `nxp-imx8mq-evk` |
|
||||||
| [Radxa ROCK 4C+](radxa/rock-4c-plus) | `<nixos-hardware/radxa/rock-4c-plus>` | `rock-4c-plus` |
|
| [Hardkernel Odroid HC4](hardkernel/odroid-hc4/default.nix) | `<nixos-hardware/hardkernel/odroid-hc4>` | `hardkernel-odroid-hc4` |
|
||||||
| [Radxa ROCK 5 Model B](radxa/rock-5b) | `<nixos-hardware/radxa/rock-5b>` | `rock-5b` |
|
| [Hardkernel Odroid H3](hardkernel/odroid-h3/default.nix) | `<nixos-hardware/hardkernel/odroid-h3>` | `hardkernel-odroid-h3` |
|
||||||
| [Radxa ROCK Pi 4](radxa/rock-pi-4) | `<nixos-hardware/radxa/rock-pi-4>` | `rock-pi-4` |
|
| [Hardkernel Odroid H4](hardkernel/odroid-h4/default.nix) | `<nixos-hardware/hardkernel/odroid-h4>` | `hardkernel-odroid-h4` |
|
||||||
| [Radxa ROCK Pi E](radxa/rock-pi-e) | `<nixos-hardware/radxa/rock-pi-e>` | `rock-pi-e`|
|
| [Olimex TERES-I](olimex/teres_i) | `<nixos-hardware/olimex/teres_i>` | `olimex-teres_i` |
|
||||||
| [Raspberry Pi 2](raspberry-pi/2) | `<nixos-hardware/raspberry-pi/2>` | `raspberry-pi-2`|
|
| [Omen 14-fb0798ng](omen/14-fb0798ng) | `<nixos-hardware/omen/14-fb0798ng>` | `omen-14-fb0798ng` |
|
||||||
| [Raspberry Pi 3](raspberry-pi/3) | `<nixos-hardware/raspberry-pi/3>` | `raspberry-pi-3`|
|
| [Omen 15-ce002ns](omen/15-ce002ns) | `<nixos-hardware/omen/15-ce002ns>` | `omen-15-ce002ns` |
|
||||||
| [Raspberry Pi 4](raspberry-pi/4) | `<nixos-hardware/raspberry-pi/4>` | `raspberry-pi-4`|
|
| [Omen 15-en0010ca](omen/15-en0010ca) | `<nixos-hardware/omen/15-en0010ca>` | `omen-15-en0010ca` |
|
||||||
| [Raspberry Pi 5](raspberry-pi/5) | `<nixos-hardware/raspberry-pi/5>` | `raspberry-pi-5`|
|
| [Omen 16-n0005ne](omen/16-n0005ne) | `<nixos-hardware/omen/16-n0005ne>` | `omen-16-n0005ne` |
|
||||||
| [Samsung Series 9 NP900X3C](samsung/np900x3c) | `<nixos-hardware/samsung/np900x3c>` | `samsung-np900x3c`|
|
| [Omen 16-n0280nd](/omen/16-n0280nd) | `<nixos-hardware/omen/16-n0280nd>` | `omen-16-n0280nd` |
|
||||||
| [Slimbook Hero RPL-RTX](slimbook/hero/rpl-rtx) | `<nixos-hardware/slimbook/hero/rpl-rtx>` | `slimbook-hero-rpl-rtx`|
|
| [Omen 15-en1007sa](omen/15-en1007sa) | `<nixos-hardware/omen/15-en1007sa>` | `omen-15-en1007sa` |
|
||||||
| [StarFive VisionFive v1](starfive/visionfive/v1) | `<nixos-hardware/starfive/visionfive/v1>` | `starfive-visionfive-v1`|
|
| [Omen 15-en0002np](omen/15-en0002np) | `<nixos-hardware/omen/15-en0002np>` | `omen-15-en0002np` |
|
||||||
| [StarFive VisionFive 2](starfive/visionfive/v2) | `<nixos-hardware/starfive/visionfive/v2>` | `starfive-visionfive-2`|
|
| [One-Netbook OneNetbook 4](onenetbook/4) | `<nixos-hardware/onenetbook/4>` | `onenetbook-4` |
|
||||||
| [StarLabs StarLite 5 (I5)](starlabs/starlite/i5) | `<nixos-hardware/starlabs/starlite/i5>` | `starlabs-starlite-i5`|
|
| [Panasonic Let's Note CF-LX3](panasonic/letsnote/cf-lx3) | `<nixos-hardware/panasonic/letsnote/cf-lx3>` | `panasonic-letsnote-cf-lx3` |
|
||||||
| [Supermicro A1SRi-2758F](supermicro/a1sri-2758f) | `<nixos-hardware/supermicro/a1sri-2758f>` | `supermicro-a1sri-2758f`|
|
| [Panasonic Let's Note CF-LX4](panasonic/letsnote/cf-lx4) | `<nixos-hardware/panasonic/letsnote/cf-lx4>` | `letsnote-cf-lx4` |
|
||||||
| [Supermicro M11SDV-8C-LN4F](supermicro/m11sdv-8c-ln4f) | `<nixos-hardware/supermicro/m11sdv-8c-ln4f>` | `supermicro-m11sdv-8c-ln4f`|
|
| [PC Engines APU](pcengines/apu) | `<nixos-hardware/pcengines/apu>` | `pcengines-apu` |
|
||||||
| [Supermicro X10SLL-F](supermicro/x10sll-f) | `<nixos-hardware/supermicro/x10sll-f>` | `supermicro-x10sll-f`|
|
| [PINE64 Pinebook Pro](pine64/pinebook-pro/) | `<nixos-hardware/pine64/pinebook-pro>` | `pine64-pinebook-pro` |
|
||||||
| [Supermicro X12SCZ-TLN4F](supermicro/x12scz-tln4f) | `<nixos-hardware/supermicro/x12scz-tln4f>` | `supermicro-x12scz-tln4f`|
|
| [PINE64 RockPro64](pine64/rockpro64/) | `<nixos-hardware/pine64/rockpro64>` | `pine64-rockpro64` |
|
||||||
| [System76 (generic)](system76) | `<nixos-hardware/system76>` | `system76`|
|
| [PINE64 STAR64](pine64/star64/) | `<nixos-hardware/pine64/star64>` | `pine64-star64` |
|
||||||
| [System76 Darter Pro 6](system76/darp6) | `<nixos-hardware/system76/darp6>` | `system76-darp6`|
|
| [Protectli VP4670](protectli/vp4670/) | `<nixos-hardware/protectli/vp4670>` | `protectli-vp4670` |
|
||||||
| [System76 Gazelle 18](system76/gaze18) | `<nixos-hardware/system76/gaze18>` | `system76-gaze18`|
|
| [Purism Librem 13v3](purism/librem/13v3) | `<nixos-hardware/purism/librem/13v3>` | `purism-librem-13v3` |
|
||||||
| [System76 Galago Pro 5](system76/galp5-1650) | `<nixos-hardware/system76/galp5-1650>` | `system76-galp5-1650`|
|
| [Purism Librem 15v3](purism/librem/15v3) | `<nixos-hardware/purism/librem/15v3>` | `purism-librem-15v3` |
|
||||||
| [Toshiba Chromebook 2 `swanky`](toshiba/swanky) | `<nixos-hardware/toshiba/swanky>` | `toshiba-swanky`|
|
| [Purism Librem 5r4](purism/librem/5r4) | `<nixos-hardware/purism/librem/5r4>` | `purism-librem-5r4` |
|
||||||
| [Tuxedo InfinityBook v4](tuxedo/infinitybook/v4) | `<nixos-hardware/tuxedo/infinitybook/v4>` | `tuxedo-infinitybook-v4`|
|
| [Radxa ROCK 4C+](radxa/rock-4c-plus) | `<nixos-hardware/radxa/rock-4c-plus>` | `rock-4c-plus` |
|
||||||
| [TUXEDO Aura 15 - Gen1](tuxedo/aura/15/gen1) | `<nixos-hardware/tuxedo/aura/15/gen1>` | `tuxedo-aura-15-gen1`|
|
| [Radxa ROCK 5 Model B](radxa/rock-5b) | `<nixos-hardware/radxa/rock-5b>` | `rock-5b` |
|
||||||
| [TUXEDO InfinityBook Pro 14 - Gen7](tuxedo/infinitybook/pro14/gen7) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen7>` | `tuxedo-infinitybook-pro14-gen7`|
|
| [Radxa ROCK Pi 4](radxa/rock-pi-4) | `<nixos-hardware/radxa/rock-pi-4>` | `rock-pi-4` |
|
||||||
| [TUXEDO InfinityBook Pro 14 - Gen9 - AMD](tuxedo/infinitybook/pro14/gen9/amd) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen9/amd>` | `tuxedo-infinitybook-pro14-gen9-amd`|
|
| [Radxa ROCK Pi E](radxa/rock-pi-e) | `<nixos-hardware/radxa/rock-pi-e>` | `rock-pi-e` |
|
||||||
| [TUXEDO InfinityBook Pro 14 - Gen9 - INTEL](tuxedo/infinitybook/pro14/gen9/intel) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen9/intel>` | `tuxedo-infinitybook-pro14-gen9-intel`|
|
| [Raspberry Pi 2](raspberry-pi/2) | `<nixos-hardware/raspberry-pi/2>` | `raspberry-pi-2` |
|
||||||
| [TUXEDO Pulse 14 - Gen3](tuxedo/pulse/14/gen3) | `<nixos-hardware/tuxedo/pulse/14/gen3>` | `tuxedo-pulse-14-gen3`|
|
| [Raspberry Pi 3](raspberry-pi/3) | `<nixos-hardware/raspberry-pi/3>` | `raspberry-pi-3` |
|
||||||
| [TUXEDO Pulse 15 - Gen2](tuxedo/pulse/15/gen2) | `<nixos-hardware/tuxedo/pulse/15/gen2>` | `tuxedo-pulse-15-gen2`|
|
| [Raspberry Pi 4](raspberry-pi/4) | `<nixos-hardware/raspberry-pi/4>` | `raspberry-pi-4` |
|
||||||
| [Xiaomi Redmibook 15 Pro 2021](xiaomi/redmibook/15-pro-2021) | `<nixos-hardware/xiaomi/redmibook/15-pro-2021>` | `xiaomi-redmibook-15-pro-2021`|
|
| [Raspberry Pi 5](raspberry-pi/5) | `<nixos-hardware/raspberry-pi/5>` | `raspberry-pi-5` |
|
||||||
| [Xiaomi Redmibook 16 Pro 2024](xiaomi/redmibook/16-pro-2024) | `<nixos-hardware/xiaomi/redmibook/16-pro-2024>` | `xiaomi-redmibook-16-pro-2024`|
|
| [Samsung Series 9 NP900X3C](samsung/np900x3c) | `<nixos-hardware/samsung/np900x3c>` | `samsung-np900x3c` |
|
||||||
|
| [Slimbook Hero RPL-RTX](slimbook/hero/rpl-rtx) | `<nixos-hardware/slimbook/hero/rpl-rtx>` | `slimbook-hero-rpl-rtx` |
|
||||||
|
| [StarFive VisionFive v1](starfive/visionfive/v1) | `<nixos-hardware/starfive/visionfive/v1>` | `starfive-visionfive-v1` |
|
||||||
|
| [StarFive VisionFive 2](starfive/visionfive/v2) | `<nixos-hardware/starfive/visionfive/v2>` | `starfive-visionfive-2` |
|
||||||
|
| [StarLabs StarLite 5 (I5)](starlabs/starlite/i5) | `<nixos-hardware/starlabs/starlite/i5>` | `starlabs-starlite-i5` |
|
||||||
|
| [Supermicro A1SRi-2758F](supermicro/a1sri-2758f) | `<nixos-hardware/supermicro/a1sri-2758f>` | `supermicro-a1sri-2758f` |
|
||||||
|
| [Supermicro M11SDV-8C-LN4F](supermicro/m11sdv-8c-ln4f) | `<nixos-hardware/supermicro/m11sdv-8c-ln4f>` | `supermicro-m11sdv-8c-ln4f` |
|
||||||
|
| [Supermicro X10SLL-F](supermicro/x10sll-f) | `<nixos-hardware/supermicro/x10sll-f>` | `supermicro-x10sll-f` |
|
||||||
|
| [Supermicro X12SCZ-TLN4F](supermicro/x12scz-tln4f) | `<nixos-hardware/supermicro/x12scz-tln4f>` | `supermicro-x12scz-tln4f` |
|
||||||
|
| [System76 (generic)](system76) | `<nixos-hardware/system76>` | `system76` |
|
||||||
|
| [System76 Darter Pro 6](system76/darp6) | `<nixos-hardware/system76/darp6>` | `system76-darp6` |
|
||||||
|
| [System76 Gazelle 18](system76/gaze18) | `<nixos-hardware/system76/gaze18>` | `system76-gaze18` |
|
||||||
|
| [System76 Galago Pro 5](system76/galp5-1650) | `<nixos-hardware/system76/galp5-1650>` | `system76-galp5-1650` |
|
||||||
|
| [System76 Thelio Mega](system76/thelio-mega) | `<nixos-hardware/system76/thelio-mega>` | `system76-thelio-mega` |
|
||||||
|
| [Toshiba Chromebook 2 `swanky`](toshiba/swanky) | `<nixos-hardware/toshiba/swanky>` | `toshiba-swanky` |
|
||||||
|
| [Tuxedo InfinityBook v4](tuxedo/infinitybook/v4) | `<nixos-hardware/tuxedo/infinitybook/v4>` | `tuxedo-infinitybook-v4` |
|
||||||
|
| [TUXEDO Aura 15 - Gen1](tuxedo/aura/15/gen1) | `<nixos-hardware/tuxedo/aura/15/gen1>` | `tuxedo-aura-15-gen1` |
|
||||||
|
| [TUXEDO InfinityBook Pro 14 - Gen7](tuxedo/infinitybook/pro14/gen7) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen7>` | `tuxedo-infinitybook-pro14-gen7` |
|
||||||
|
| [TUXEDO InfinityBook Pro 14 - Gen9 - AMD](tuxedo/infinitybook/pro14/gen9/amd) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen9/amd>` | `tuxedo-infinitybook-pro14-gen9-amd` |
|
||||||
|
| [TUXEDO InfinityBook Pro 14 - Gen9 - INTEL](tuxedo/infinitybook/pro14/gen9/intel) | `<nixos-hardware/tuxedo/infinitybook/pro14/gen9/intel>` | `tuxedo-infinitybook-pro14-gen9-intel` |
|
||||||
|
| [TUXEDO Pulse 14 - Gen3](tuxedo/pulse/14/gen3) | `<nixos-hardware/tuxedo/pulse/14/gen3>` | `tuxedo-pulse-14-gen3` |
|
||||||
|
| [TUXEDO Pulse 15 - Gen2](tuxedo/pulse/15/gen2) | `<nixos-hardware/tuxedo/pulse/15/gen2>` | `tuxedo-pulse-15-gen2` |
|
||||||
|
| [Xiaomi Redmibook 15 Pro 2021](xiaomi/redmibook/15-pro-2021) | `<nixos-hardware/xiaomi/redmibook/15-pro-2021>` | `xiaomi-redmibook-15-pro-2021` |
|
||||||
|
| [Xiaomi Redmibook 16 Pro 2024](xiaomi/redmibook/16-pro-2024) | `<nixos-hardware/xiaomi/redmibook/16-pro-2024>` | `xiaomi-redmibook-16-pro-2024` |
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,6 @@
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
boot.kernelParams = [
|
|
||||||
"hid_apple.iso_layout=0"
|
|
||||||
];
|
|
||||||
|
|
||||||
hardware.facetimehd.enable = lib.mkDefault (config.nixpkgs.config.allowUnfree or false);
|
hardware.facetimehd.enable = lib.mkDefault (config.nixpkgs.config.allowUnfree or false);
|
||||||
|
|
||||||
services.mbpfan.enable = lib.mkDefault true;
|
services.mbpfan.enable = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,6 @@
|
||||||
"bcma"
|
"bcma"
|
||||||
];
|
];
|
||||||
kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.0") pkgs.linuxPackages_latest;
|
kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.0") pkgs.linuxPackages_latest;
|
||||||
extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
|
|
|
||||||
9
apple/macbook-air/5/default.nix
Normal file
9
apple/macbook-air/5/default.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../.
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
{ lib, ... }:
|
{ config, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ../. ];
|
imports = [ ../. ];
|
||||||
|
|
||||||
|
boot.blacklistedKernelModules = [ "bcma" ];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
# Divides power consumption by two.
|
# Divides power consumption by two.
|
||||||
kernelParams = [ "acpi_osi=" ];
|
kernelParams = [ "acpi_osi=" ];
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,5 @@
|
||||||
../../../common/cpu/intel/haswell
|
../../../common/cpu/intel/haswell
|
||||||
];
|
];
|
||||||
|
|
||||||
# broadcom-wl
|
|
||||||
hardware.enableRedistributableFirmware = lib.mkDefault true;
|
hardware.enableRedistributableFirmware = lib.mkDefault true;
|
||||||
# nixos-generate-config doesn't detect this automatically.
|
|
||||||
boot.extraModulePackages = with config.boot.kernelPackages; [ broadcom_sta ];
|
|
||||||
boot.kernelModules = [ "wl" ];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
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 = ''
|
powerManagement.powerUpCommands = ''
|
||||||
${pkgs.systemd}/bin/systemctl restart wpa_supplicant.service
|
${pkgs.systemd}/bin/systemctl restart wpa_supplicant.service
|
||||||
'';
|
'';
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
You can apply this to your network management software of choice.
|
You can apply this to your network management software of choice.
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,6 @@
|
||||||
"b43-firmware"
|
"b43-firmware"
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### For all packages
|
### 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": [
|
"patches": [
|
||||||
{
|
{
|
||||||
"name": "1001-Add-apple-bce-driver.patch",
|
"name": "1001-Add-apple-bce-driver.patch",
|
||||||
|
|
@ -37,29 +37,9 @@
|
||||||
"name": "1011-HID-multitouch-add-device-ID-for-Apple-Touch-Bar.patch",
|
"name": "1011-HID-multitouch-add-device-ID-for-Apple-Touch-Bar.patch",
|
||||||
"hash": "sha256-dIzEOj89D2rIEc2/mjq3TkIfI3ZHzu0VRDQQOzp+Snc="
|
"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",
|
"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",
|
"name": "2009-apple-gmux-allow-switching-to-igpu-at-probe.patch",
|
||||||
|
|
@ -103,7 +83,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "4001-asahi-trackpad.patch",
|
"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",
|
"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",
|
"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",
|
"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",
|
"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",
|
"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",
|
"name": "8001-Add-APFS-driver.patch",
|
||||||
"hash": "sha256-io17Kk6FDscDoDshddK9TqSPuXVFTzjvRUwOGTl5cjM="
|
"hash": "sha256-uR5hg75SFFWzfrKyU5UnzPL4U7LkjqGs44rkxM7ur8o="
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "8002-Necessary-modifications-to-build-APFS-with-the-kerne.patch",
|
"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 {
|
callPackage ./generic.nix args {
|
||||||
kernel = linux_6_15;
|
kernel = linux_6_16;
|
||||||
patchesFile = ./latest.json;
|
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": [
|
"patches": [
|
||||||
{
|
{
|
||||||
"name": "1001-Add-apple-bce-driver.patch",
|
"name": "1001-Add-apple-bce-driver.patch",
|
||||||
|
|
@ -49,10 +49,6 @@
|
||||||
"name": "1013-lib-vsprintf-Add-support-for-generic-FourCCs-by-exte.patch",
|
"name": "1013-lib-vsprintf-Add-support-for-generic-FourCCs-by-exte.patch",
|
||||||
"hash": "sha256-h3gxaKtvdm/GSd+AP1sPC9avWHOsceUxTmoua/3rIf4="
|
"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",
|
"name": "1015-drm-tiny-add-driver-for-Apple-Touch-Bars-in-x86-Macs.patch",
|
||||||
"hash": "sha256-tDjK/VipVQbuNOURW38gssqeRLy3s8I+DVq0+4zGnHs="
|
"hash": "sha256-tDjK/VipVQbuNOURW38gssqeRLy3s8I+DVq0+4zGnHs="
|
||||||
|
|
@ -103,7 +99,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "4001-asahi-trackpad.patch",
|
"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",
|
"name": "4002-HID-quirks-remove-T2-devices-from-hid_mouse_ignore_l.patch",
|
||||||
|
|
@ -131,7 +127,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "8001-Add-APFS-driver.patch",
|
"name": "8001-Add-APFS-driver.patch",
|
||||||
"hash": "sha256-O3RNtpeZQENPEfyYi/0ZTLhAWBAw6pmxMS30NUxOTdk="
|
"hash": "sha256-QpIPsMjWNPOkw6rSKn7rW0Fmx9HUwJaiGy3pZeT5Fd0="
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "8002-Necessary-modifications-to-build-APFS-with-the-kerne.patch",
|
"name": "8002-Necessary-modifications-to-build-APFS-with-the-kerne.patch",
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,8 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
p = pkgs.writeScriptBin "charge-upto" ''
|
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;
|
cfg = config.hardware.asus.battery;
|
||||||
in
|
in
|
||||||
|
|
@ -30,10 +31,14 @@ in
|
||||||
wantedBy = [
|
wantedBy = [
|
||||||
"local-fs.target"
|
"local-fs.target"
|
||||||
"suspend.target"
|
"suspend.target"
|
||||||
|
"suspend-then-hibernate.target"
|
||||||
|
"hibernate.target"
|
||||||
];
|
];
|
||||||
after = [
|
after = [
|
||||||
"local-fs.target"
|
"local-fs.target"
|
||||||
"suspend.target"
|
"suspend.target"
|
||||||
|
"suspend-then-hibernate.target"
|
||||||
|
"hibernate.target"
|
||||||
];
|
];
|
||||||
description = "Set the battery charge threshold to ${toString cfg.chargeUpto}%";
|
description = "Set the battery charge threshold to ${toString cfg.chargeUpto}%";
|
||||||
startLimitBurst = 5;
|
startLimitBurst = 5;
|
||||||
|
|
|
||||||
|
|
@ -25,10 +25,6 @@
|
||||||
lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8")
|
lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8")
|
||||||
[ "rtc_cmos.use_acpi_alarm=1" ];
|
[ "rtc_cmos.use_acpi_alarm=1" ];
|
||||||
|
|
||||||
# AMD has better battery life with PPD over TLP:
|
|
||||||
# https://community.frame.work/t/responded-amd-7040-sleep-states/38101/13
|
|
||||||
services.power-profiles-daemon.enable = lib.mkDefault true;
|
|
||||||
|
|
||||||
# Adds the missing asus functionality to Linux.
|
# Adds the missing asus functionality to Linux.
|
||||||
# https://asus-linux.org/manual/asusctl-manual/
|
# https://asus-linux.org/manual/asusctl-manual/
|
||||||
services = {
|
services = {
|
||||||
|
|
@ -39,6 +35,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
|
powerManagement.enable = lib.mkDefault true;
|
||||||
modesetting.enable = lib.mkDefault true;
|
modesetting.enable = lib.mkDefault true;
|
||||||
open = lib.mkDefault false;
|
open = lib.mkDefault false;
|
||||||
nvidiaSettings = lib.mkDefault true;
|
nvidiaSettings = lib.mkDefault true;
|
||||||
|
|
|
||||||
16
asus/rog-gl552vw/default.nix
Normal file
16
asus/rog-gl552vw/default.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../common/cpu/intel/skylake
|
||||||
|
../../common/gpu/nvidia/maxwell
|
||||||
|
../../common/gpu/nvidia/prime.nix
|
||||||
|
../../common/pc/laptop
|
||||||
|
../../common/pc/ssd
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware.nvidia.prime = {
|
||||||
|
intelBusId = "PCI:0:2:0";
|
||||||
|
nvidiaBusId = "PCI:1:0:0";
|
||||||
|
};
|
||||||
|
}
|
||||||
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";
|
||||||
|
};
|
||||||
|
}
|
||||||
36
asus/zenbook/um6702/default.nix
Normal file
36
asus/zenbook/um6702/default.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{ lib, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkDefault;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../common/cpu/amd
|
||||||
|
../../../common/cpu/amd/pstate.nix
|
||||||
|
|
||||||
|
# iGPU
|
||||||
|
../../../common/gpu/amd
|
||||||
|
|
||||||
|
# dGPU
|
||||||
|
../../../common/gpu/nvidia/prime.nix
|
||||||
|
../../../common/gpu/nvidia/ampere
|
||||||
|
|
||||||
|
../../../common/pc/laptop
|
||||||
|
../../../common/pc/ssd
|
||||||
|
|
||||||
|
../../battery.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware.nvidia = {
|
||||||
|
dynamicBoost.enable = mkDefault true;
|
||||||
|
|
||||||
|
powerManagement = {
|
||||||
|
enable = mkDefault true;
|
||||||
|
finegrained = mkDefault true;
|
||||||
|
};
|
||||||
|
|
||||||
|
prime = {
|
||||||
|
amdgpuBusId = "PCI:1:0:0";
|
||||||
|
nvidiaBusId = "PCI:101:0:0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -3,6 +3,4 @@
|
||||||
./cpu-only.nix
|
./cpu-only.nix
|
||||||
../../../gpu/intel/comet-lake
|
../../../gpu/intel/comet-lake
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.intelgpu.vaapiDriver = "intel-media-driver";
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
{ lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ../. ];
|
imports = [ ../. ];
|
||||||
|
|
||||||
hardware.intelgpu = {
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
vaapiDriver = "intel-vaapi-driver";
|
vaapiDriver = "intel-vaapi-driver";
|
||||||
enableHybridCodec = true;
|
enableHybridCodec = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,8 @@
|
||||||
"i915.enable_guc=2"
|
"i915.enable_guc=2"
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.intelgpu.vaapiDriver = "intel-media-driver";
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
|
vaapiDriver = "intel-media-driver";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,5 +3,8 @@
|
||||||
|
|
||||||
boot.kernelParams = [ "i915.enable_guc=2" ];
|
boot.kernelParams = [ "i915.enable_guc=2" ];
|
||||||
|
|
||||||
hardware.intelgpu.vaapiDriver = "intel-media-driver";
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
|
vaapiDriver = "intel-media-driver";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,15 @@
|
||||||
default = true;
|
default = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
computeRuntime = lib.mkOption {
|
||||||
|
description = "intel-compute-runtime variant to use";
|
||||||
|
type = lib.types.enum [
|
||||||
|
"default"
|
||||||
|
"legacy"
|
||||||
|
];
|
||||||
|
default = "default";
|
||||||
|
};
|
||||||
|
|
||||||
vaapiDriver = lib.mkOption {
|
vaapiDriver = lib.mkOption {
|
||||||
description = "Intel VAAPI driver to use (use null to use both)";
|
description = "Intel VAAPI driver to use (use null to use both)";
|
||||||
type = lib.types.nullOr (
|
type = lib.types.nullOr (
|
||||||
|
|
@ -59,7 +68,11 @@
|
||||||
useIntelMediaDriver = cfg.vaapiDriver == "intel-media-driver" || cfg.vaapiDriver == null;
|
useIntelMediaDriver = cfg.vaapiDriver == "intel-media-driver" || cfg.vaapiDriver == null;
|
||||||
intel-media-driver = pkgs.intel-media-driver;
|
intel-media-driver = pkgs.intel-media-driver;
|
||||||
intel-media-driver-32 = pkgs.driversi686Linux.intel-media-driver;
|
intel-media-driver-32 = pkgs.driversi686Linux.intel-media-driver;
|
||||||
intel-compute-runtime = pkgs.intel-compute-runtime;
|
intel-compute-runtime =
|
||||||
|
if cfg.computeRuntime == "legacy" then
|
||||||
|
pkgs.intel-compute-runtime-legacy1
|
||||||
|
else
|
||||||
|
pkgs.intel-compute-runtime;
|
||||||
vpl-gpu-rt = pkgs.vpl-gpu-rt or pkgs.onevpl-intel-gpu;
|
vpl-gpu-rt = pkgs.vpl-gpu-rt or pkgs.onevpl-intel-gpu;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -3,5 +3,8 @@
|
||||||
|
|
||||||
boot.kernelParams = [ "i915.enable_guc=2" ];
|
boot.kernelParams = [ "i915.enable_guc=2" ];
|
||||||
|
|
||||||
hardware.intelgpu.vaapiDriver = "intel-media-driver";
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
|
vaapiDriver = "intel-media-driver";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,8 @@
|
||||||
"i915.enable_psr=2"
|
"i915.enable_psr=2"
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.intelgpu.vaapiDriver = "intel-media-driver";
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
|
vaapiDriver = "intel-media-driver";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ../. ];
|
imports = [ ../. ];
|
||||||
|
|
||||||
|
|
@ -12,6 +10,7 @@
|
||||||
# NixOS Wiki recommends using the legacy intel-vaapi-driver with the hybrid codec over that one for Skylake.
|
# NixOS Wiki recommends using the legacy intel-vaapi-driver with the hybrid codec over that one for Skylake.
|
||||||
# https://wiki.nixos.org/wiki/Accelerated_Video_Playback
|
# https://wiki.nixos.org/wiki/Accelerated_Video_Playback
|
||||||
hardware.intelgpu = {
|
hardware.intelgpu = {
|
||||||
|
computeRuntime = "legacy";
|
||||||
vaapiDriver = "intel-vaapi-driver";
|
vaapiDriver = "intel-vaapi-driver";
|
||||||
enableHybridCodec = true;
|
enableHybridCodec = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,6 @@
|
||||||
{ config, lib, ... }:
|
{ lib, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ../. ];
|
imports = [ ../. ];
|
||||||
|
|
||||||
# Gnome 40 introduced a new way of managing power, without tlp.
|
config.services.power-profiles-daemon.enable = lib.mkDefault (!config.services.tlp.enable);
|
||||||
# However, these 2 services clash when enabled simultaneously.
|
|
||||||
# https://github.com/NixOS/nixos-hardware/issues/260
|
|
||||||
services.tlp.enable = lib.mkDefault (
|
|
||||||
(lib.versionOlder (lib.versions.majorMinor lib.version) "21.05")
|
|
||||||
|| !config.services.power-profiles-daemon.enable
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
57
compulab/README.md
Normal file
57
compulab/README.md
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
# UCM-iMX95 SOM support
|
||||||
|
|
||||||
|
## Supported devices
|
||||||
|
- [UCM-iMX95 System-on-Module](https://www.compulab.com/products/som-evaluation-kits/ucm-imx95-evaluation-kit/) (**ucm-imx95**) – based on the NXP i.MX95 SoC (A0 silicon), with device-specific boot components(OEI, SM, ATF), U-Boot, and Linux kernel support, including a NixOS configuration example.
|
||||||
|
|
||||||
|
## How to use
|
||||||
|
This overlay provides configuration and hardware support for the **CompuLab UCM-iMX95** platform, based on the **NXP i.MX95 A0 silicon**. It enables generating NixOS images suitable for booting via U-Boot, using the CompuLab UCM-iMX95 Evaluation Kit carrier board.
|
||||||
|
|
||||||
|
### Boot flow
|
||||||
|
The boot flow for the UCM-iMX95 platform follows the standard NXP i.MX95 sequence:
|
||||||
|
|
||||||
|
Boot ROM → OEI (initially in TCM, then DDR) → System Manager (SM) → ARM Trusted Firmware (ATF) → U-Boot → Linux kernel → NixOS userspace
|
||||||
|
|
||||||
|
Boot ROM initializes the SoC and loads OEI, which runs in TCM to perform early setup, then configures DDR and loads the System Manager (SM). SM completes SoC initialization and passes control to ATF, which handles secure world setup and then transfers execution to U-Boot, eventually booting the Linux kernel and NixOS root filesystem.
|
||||||
|
|
||||||
|
### Example NixOS configuration
|
||||||
|
```nix
|
||||||
|
{ nixos-hardware, }: {
|
||||||
|
system = "aarch64-linux";
|
||||||
|
modules = [
|
||||||
|
nixos-hardware.nixosModules.ucm-imx95
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Building Boot Images
|
||||||
|
|
||||||
|
The boot image for flashing to SD cards can be built directly from the flake:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Build boot image for UCM-iMX95
|
||||||
|
nix build github:NixOS/nixos-hardware#packages.aarch64-linux.ucm-imx95-boot
|
||||||
|
```
|
||||||
|
|
||||||
|
The boot image will be available at `./result/image/flash.bin`.
|
||||||
|
|
||||||
|
**Note:** These packages target `aarch64-linux`. If you're on a different architecture (e.g., x86_64-linux), you'll need remote builders configured for aarch64-linux.
|
||||||
|
|
||||||
|
### Flashing to SD Card
|
||||||
|
|
||||||
|
Once built, you can flash the boot image to an SD card:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Write boot image to SD card at 32KB offset (adjust /dev/sdX to your SD card device)
|
||||||
|
sudo dd if=./result/image/flash.bin of=/dev/sdX bs=1k seek=32 conv=fsync
|
||||||
|
```
|
||||||
|
|
||||||
|
**Warning:** Double-check the device path to avoid overwriting the wrong disk!
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
- The configuration, including device-tree, kernel, and bootloader components, is optimized for the UCM-iMX95 SoM and EVK.
|
||||||
|
- The generated NixOS image supports booting from SD card or eMMC, depending on the hardware configuration.
|
||||||
|
- The boot components (OEI in TCM/DDR, SM, ATF, U-Boot) follow the standard NXP release layout for i.MX95 platforms.
|
||||||
|
|
||||||
|
### Upstream Documentation
|
||||||
|
- [NXP i.MX95 EVK U-Boot Documentation](https://docs.u-boot.org/en/latest/board/nxp/imx95_evk.html)
|
||||||
|
- [CompuLab UCM-iMX95 Product Page](https://www.compulab.com/products/computer-on-modules/ucm-imx95-nxp-i-mx-95-som-system-on-module/)
|
||||||
64
compulab/ucm-imx95/bsp/ucm-imx95-atf.nix
Normal file
64
compulab/ucm-imx95/bsp/ucm-imx95-atf.nix
Normal file
|
|
@ -0,0 +1,64 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
fetchFromGitHub,
|
||||||
|
stdenv,
|
||||||
|
buildPackages,
|
||||||
|
pkgsCross,
|
||||||
|
openssl,
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
target-board = "imx95";
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "imx95-atf";
|
||||||
|
version = "2.13.0";
|
||||||
|
platform = target-board;
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-atf";
|
||||||
|
rev = "28affcae957cb8194917b5246276630f9e6343e1";
|
||||||
|
sha256 = "sha256-a8F+Lf8pwML+tCwawS0N/mrSXWPmFhlUeOg0MCRK3VE=";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Compiler dependencies
|
||||||
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkgsCross.aarch64-embedded.stdenv.cc
|
||||||
|
openssl
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"HOSTCC=$(CC_FOR_BUILD)"
|
||||||
|
"CROSS_COMPILE=${pkgsCross.aarch64-embedded.stdenv.cc.targetPrefix}"
|
||||||
|
"PLAT=${platform}"
|
||||||
|
"SPD=opteed"
|
||||||
|
"bl31"
|
||||||
|
"LDFLAGS=-no-warn-rwx-segments"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out
|
||||||
|
cp build/${target-board}/release/bl31.bin $out
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
hardeningDisable = [ "all" ];
|
||||||
|
dontStrip = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/nxp-imx/imx-atf";
|
||||||
|
description = "Reference implementation of secure world software for ARMv8-A";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
94
compulab/ucm-imx95/bsp/ucm-imx95-boot.nix
Normal file
94
compulab/ucm-imx95/bsp/ucm-imx95-boot.nix
Normal file
|
|
@ -0,0 +1,94 @@
|
||||||
|
{
|
||||||
|
callPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
|
stdenv,
|
||||||
|
clang,
|
||||||
|
git,
|
||||||
|
dtc,
|
||||||
|
glibc,
|
||||||
|
zlib,
|
||||||
|
vim,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
|
||||||
|
imx95-atf = callPackage ./ucm-imx95-atf.nix { };
|
||||||
|
imx95-firmware = callPackage ./ucm-imx95-firmware.nix { };
|
||||||
|
imx95-uboot = callPackage ./ucm-imx95-uboot.nix { };
|
||||||
|
imx95-optee-os = callPackage ./ucm-imx95-optee-os.nix { };
|
||||||
|
imx95-sm-fw = callPackage ./ucm-imx95-sm-fw.nix { };
|
||||||
|
imx95-oei-ddr = callPackage ./ucm-imx95-oei-ddr.nix { };
|
||||||
|
imx95-oei-tcm = callPackage ./ucm-imx95-oei-tcm.nix { };
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-mkimage";
|
||||||
|
#tag: lf-6.6.52-2.2.1
|
||||||
|
rev = "f620fb8ef7a04c8dbed8119880f5eeffe3e69746";
|
||||||
|
sha256 = "sha256-JZlX122uZntCIISI1H3Hw+tnk+N/gBJpFFDaZoY8W3c=";
|
||||||
|
};
|
||||||
|
shortRev = builtins.substring 0 8 src.rev;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imx95-boot = stdenv.mkDerivation rec {
|
||||||
|
inherit src;
|
||||||
|
name = "imx95-mkimage";
|
||||||
|
version = "lf-6.6.52-2.2.1";
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace-fail 'git rev-parse --short=8 HEAD' 'echo ${shortRev}'
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace-fail 'CC = gcc' 'CC = clang'
|
||||||
|
substituteInPlace iMX95/soc.mak \
|
||||||
|
--replace-fail 'xxd' "${vim.xxd}/bin/xxd"
|
||||||
|
substituteInPlace scripts/fspi_fcb_gen.sh \
|
||||||
|
--replace-fail 'xxd' "${vim.xxd}/bin/xxd"
|
||||||
|
substituteInPlace scripts/fspi_packer.sh \
|
||||||
|
--replace-fail 'xxd' "${vim.xxd}/bin/xxd"
|
||||||
|
patchShebangs scripts
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
clang
|
||||||
|
git
|
||||||
|
dtc
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
glibc.static
|
||||||
|
zlib
|
||||||
|
zlib.static
|
||||||
|
];
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
if [ -f ${imx95-uboot}/u-boot.bin ]; then
|
||||||
|
install -m 0644 ${imx95-uboot}/u-boot.bin ./iMX95/u-boot.bin
|
||||||
|
else
|
||||||
|
cat ${imx95-uboot}/u-boot-nodtb.bin ${imx95-uboot}/ucm-imx95.dtb > ./iMX95/u-boot.bin
|
||||||
|
fi
|
||||||
|
install -m 0644 ${imx95-uboot}/u-boot-spl.bin ./iMX95/u-boot-spl.bin
|
||||||
|
install -m 0644 ${imx95-uboot}/u-boot-nodtb.bin ./iMX95/u-boot-nodtb.bin
|
||||||
|
install -m 0644 ${imx95-uboot}/ucm-imx95.dtb ./iMX95/ucm-imx95.dtb
|
||||||
|
install -m 0644 ${imx95-optee-os}/tee.bin ./iMX95/tee.bin
|
||||||
|
install -m 0644 ${imx95-atf}/bl31.bin ./iMX95/bl31.bin
|
||||||
|
install -m 0644 ${imx95-sm-fw}/m33_image.bin ./iMX95/m33_image.bin
|
||||||
|
install -m 0644 ${imx95-oei-ddr}/oei-m33-ddr.bin ./iMX95/oei-m33-ddr.bin
|
||||||
|
install -m 0644 ${imx95-oei-tcm}/oei-m33-tcm.bin ./iMX95/oei-m33-tcm.bin
|
||||||
|
install -m 0644 ${imx95-firmware}/ddr/lpddr5* ./iMX95/
|
||||||
|
install -m 0644 ${imx95-firmware}/ahab/mx95a0-ahab-container.img ./iMX95/
|
||||||
|
install -m 0644 ${imx95-firmware}/m7_image.bin ./iMX95/
|
||||||
|
|
||||||
|
make SOC=iMX95 REV=A0 OEI=YES LPDDR_TYPE=lpddr5 flash_all
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out/image
|
||||||
|
install -m 0644 ./iMX95/flash.bin $out/image
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
74
compulab/ucm-imx95/bsp/ucm-imx95-firmware.nix
Normal file
74
compulab/ucm-imx95/bsp/ucm-imx95-firmware.nix
Normal file
|
|
@ -0,0 +1,74 @@
|
||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
fetchurl,
|
||||||
|
coreutils,
|
||||||
|
bash,
|
||||||
|
siliconRev ? "A0",
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "nxp-firmware-imx95";
|
||||||
|
version = "nxp-firmware-8.28-994fa14";
|
||||||
|
|
||||||
|
m7Firmware = fetchurl {
|
||||||
|
url = "https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/imx95-m7-demo-25.09.00.bin";
|
||||||
|
sha256 = "sha256-3nA6uka6WPtXH5aZhaaKHKRM0tJ0pxHQdPEupNic1Ks=";
|
||||||
|
};
|
||||||
|
|
||||||
|
ddrFirmware = fetchurl {
|
||||||
|
url = "https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.28-994fa14.bin";
|
||||||
|
sha256 = "sha256-VZlvNA6HglaFoAzTCZARiQZuyVRe5gdzT5QsPN5Nadw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
ahabFirmware = fetchurl {
|
||||||
|
url = "https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-ele-imx-2.0.2-89161a8.bin";
|
||||||
|
sha256 = "sha256-LSnwpN42YroV9qfZBpcC1OrtQV2WoX8p1bEn8sb91jQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
coreutils
|
||||||
|
bash
|
||||||
|
];
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
dontStrip = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
export SILICON=${siliconRev}
|
||||||
|
|
||||||
|
# M7 firmware
|
||||||
|
echo "Copying M7 firmware..."
|
||||||
|
cp ${m7Firmware} $out/m7_image.bin
|
||||||
|
|
||||||
|
# DDR firmware
|
||||||
|
cp ${ddrFirmware} ./firmware-imx-8.28-994fa14.bin
|
||||||
|
chmod +x firmware-imx-8.28-994fa14.bin
|
||||||
|
./firmware-imx-8.28-994fa14.bin --auto-accept
|
||||||
|
|
||||||
|
mkdir -p $out/ddr
|
||||||
|
# Resolve wildcard and verify at least one file matches
|
||||||
|
lpddr5_files=(firmware-imx-8.28-994fa14/firmware/ddr/synopsys/lpddr5*v202409.bin)
|
||||||
|
if [ ''${#lpddr5_files[@]} -eq 0 ]; then
|
||||||
|
echo "ERROR: No lpddr5*v202409.bin file found in firmware/ddr/synopsys/" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
cp "''${lpddr5_files[@]}" $out/ddr/
|
||||||
|
|
||||||
|
# AHAB container
|
||||||
|
cp ${ahabFirmware} ./firmware-ele-imx-2.0.2-89161a8.bin
|
||||||
|
chmod +x firmware-ele-imx-2.0.2-89161a8.bin
|
||||||
|
./firmware-ele-imx-2.0.2-89161a8.bin --auto-accept
|
||||||
|
|
||||||
|
mkdir -p $out/ahab
|
||||||
|
if [ "$SILICON" = "A0" ]; then
|
||||||
|
cp firmware-ele-imx-2.0.2-89161a8/mx95a0-ahab-container.img $out/ahab/
|
||||||
|
elif [ "$SILICON" = "B0" ]; then
|
||||||
|
cp firmware-ele-imx-2.0.2-89161a8/mx95b0-ahab-container.img $out/ahab/
|
||||||
|
else
|
||||||
|
echo "ERROR: Invalid SILICON value '$SILICON'. Must be 'A0' or 'B0'." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
}
|
||||||
71
compulab/ucm-imx95/bsp/ucm-imx95-linux.nix
Normal file
71
compulab/ucm-imx95/bsp/ucm-imx95-linux.nix
Normal file
|
|
@ -0,0 +1,71 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildLinux,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}@args:
|
||||||
|
buildLinux (
|
||||||
|
args
|
||||||
|
// rec {
|
||||||
|
version = "6.6.36";
|
||||||
|
name = "imx95-linux";
|
||||||
|
|
||||||
|
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||||
|
modDirVersion = version;
|
||||||
|
|
||||||
|
defconfig = "compulab-mx95_defconfig";
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/366004
|
||||||
|
# introduced a breaking change that if a module is declared but it is not being used it will fail.
|
||||||
|
ignoreConfigErrors = true;
|
||||||
|
|
||||||
|
kernelPatches = [
|
||||||
|
];
|
||||||
|
|
||||||
|
autoModules = false;
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
CRYPTO_TLS m
|
||||||
|
TLS y
|
||||||
|
MD_RAID0 m
|
||||||
|
MD_RAID1 m
|
||||||
|
MD_RAID10 m
|
||||||
|
MD_RAID456 m
|
||||||
|
DM_VERITY m
|
||||||
|
LOGO y
|
||||||
|
FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER n
|
||||||
|
FB_EFI n
|
||||||
|
EFI_STUB y
|
||||||
|
EFI y
|
||||||
|
VIRTIO y
|
||||||
|
VIRTIO_PCI y
|
||||||
|
VIRTIO_BLK y
|
||||||
|
DRM_VIRTIO_GPU y
|
||||||
|
EXT4_FS y
|
||||||
|
USBIP_CORE m
|
||||||
|
USBIP_VHCI_HCD m
|
||||||
|
USBIP_HOST m
|
||||||
|
USBIP_VUDC m
|
||||||
|
'';
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "compulab-yokneam";
|
||||||
|
repo = "linux-compulab";
|
||||||
|
# tag: linux-compulab_6.6.36
|
||||||
|
rev = "b93daaad0807fb15d4f3f1a6e5be843ac7532ef7";
|
||||||
|
sha256 = "sha256-wCeuGXBTz3H6OFWBA1M1/t/9WgxBVjQ8FU/wvAUVW2w=";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/compulab-yokneam/linux-compulab";
|
||||||
|
license = licenses.gpl2Only;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
// (args.argsOverride or { })
|
||||||
|
)
|
||||||
76
compulab/ucm-imx95/bsp/ucm-imx95-oei-ddr.nix
Normal file
76
compulab/ucm-imx95/bsp/ucm-imx95-oei-ddr.nix
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
buildPackages,
|
||||||
|
gcc-arm-embedded,
|
||||||
|
fetchFromGitHub,
|
||||||
|
fetchpatch,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
metaBspImx95Rev = "5f4c7b5db846fa3a75055054e32215089d15a7b7"; # scarthgap
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "imx95-imx-oei";
|
||||||
|
version = "lf-6.6.36-2.1.0";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
buildPackages.python3
|
||||||
|
gcc-arm-embedded
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-oei";
|
||||||
|
rev = "5fca9f47544d03c52ca371eadfffbfd2454e6925";
|
||||||
|
sha256 = "sha256-Sb6u1NlhJpDCOKBu3HqUb4BLEy0F8LYVnJE0tRSvzWc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0001-Add-CompuLab-lpddr5_timing.c.patch";
|
||||||
|
sha256 = "sha256-6ZpBOXw2aIhD2i9Wx368xfHq6NvdZghWHU9u8+gRTj8=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0002-board-mx95lp5-Fix-default-DDR_CONFIG-timing-name.patch";
|
||||||
|
sha256 = "sha256-WZ/vYaTC2iKIC+jnHtnPriCxK9gjRsOv2Uy13Ye4698=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0003-Add-CompuLab-lpddr5_timing_4g.c.patch";
|
||||||
|
sha256 = "sha256-yyierv2USZlM8Cuxf4FDj4+UtILvJQH9BJSj+fmayL8=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace oei/makefiles/build_info.mak \
|
||||||
|
--replace-fail "/bin/echo" "echo"
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace-fail "/bin/echo" "echo"
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"board=mx95lp5"
|
||||||
|
"CROSS_COMPILE=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"OEI_CROSS_COMPILE=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"ARCH=arm"
|
||||||
|
"DDR_CONFIG=lpddr5_timing"
|
||||||
|
"oei=ddr"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp build/mx95lp5/ddr/oei-m33-ddr.bin $out/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/nxp-imx/imx-oei";
|
||||||
|
description = "Optional Executable Image assembler for i.MX95 processors";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
76
compulab/ucm-imx95/bsp/ucm-imx95-oei-tcm.nix
Normal file
76
compulab/ucm-imx95/bsp/ucm-imx95-oei-tcm.nix
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
buildPackages,
|
||||||
|
gcc-arm-embedded,
|
||||||
|
fetchFromGitHub,
|
||||||
|
fetchpatch,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
metaBspImx95Rev = "5f4c7b5db846fa3a75055054e32215089d15a7b7"; # scarthgap
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "imx95-imx-oei-tcm";
|
||||||
|
version = "lf-6.6.36-2.1.0";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
buildPackages.python3
|
||||||
|
gcc-arm-embedded
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-oei";
|
||||||
|
rev = "5fca9f47544d03c52ca371eadfffbfd2454e6925";
|
||||||
|
sha256 = "sha256-Sb6u1NlhJpDCOKBu3HqUb4BLEy0F8LYVnJE0tRSvzWc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0001-Add-CompuLab-lpddr5_timing.c.patch";
|
||||||
|
sha256 = "sha256-6ZpBOXw2aIhD2i9Wx368xfHq6NvdZghWHU9u8+gRTj8=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0002-board-mx95lp5-Fix-default-DDR_CONFIG-timing-name.patch";
|
||||||
|
sha256 = "sha256-WZ/vYaTC2iKIC+jnHtnPriCxK9gjRsOv2Uy13Ye4698=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-oei/imx-oei/0003-Add-CompuLab-lpddr5_timing_4g.c.patch";
|
||||||
|
sha256 = "sha256-yyierv2USZlM8Cuxf4FDj4+UtILvJQH9BJSj+fmayL8=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace oei/makefiles/build_info.mak \
|
||||||
|
--replace-fail "/bin/echo" "echo"
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace-fail "/bin/echo" "echo"
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"board=mx95lp5"
|
||||||
|
"CROSS_COMPILE=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"OEI_CROSS_COMPILE=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"ARCH=arm"
|
||||||
|
"DDR_CONFIG=lpddr5_timing"
|
||||||
|
"oei=tcm"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp build/mx95lp5/tcm/oei-m33-tcm.bin $out/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/nxp-imx/imx-oei";
|
||||||
|
description = "Optional Executable Image assembler for i.MX95 processors";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
84
compulab/ucm-imx95/bsp/ucm-imx95-optee-os.nix
Normal file
84
compulab/ucm-imx95/bsp/ucm-imx95-optee-os.nix
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
buildPackages,
|
||||||
|
bash,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (buildPackages) python3;
|
||||||
|
toolchain = stdenv.cc;
|
||||||
|
binutils = stdenv.cc.bintools.bintools_bin;
|
||||||
|
cpp = stdenv.cc;
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "imx95-optee-os";
|
||||||
|
version = "lf-6.6.36_2.1.0";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
python3
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
propagatedBuildInputs = with python3.pkgs; [
|
||||||
|
pycryptodomex
|
||||||
|
pyelftools
|
||||||
|
cryptography
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-optee-os";
|
||||||
|
rev = "612bc5a642a4608d282abeee2349d86de996d7ee";
|
||||||
|
sha256 = "sha256-l8GKkrlBs5kgw6jrzGLT9WAeTSDqo8XWZDFT2+Fisv4=";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/nxp-imx/imx-optee-os";
|
||||||
|
license = licenses.bsd2;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace scripts/arm32_sysreg.py \
|
||||||
|
--replace-fail '/usr/bin/env python3' '${python3}/bin/python'
|
||||||
|
substituteInPlace scripts/gen_tee_bin.py \
|
||||||
|
--replace-fail '/usr/bin/env python3' '${python3}/bin/python'
|
||||||
|
substituteInPlace scripts/pem_to_pub_c.py \
|
||||||
|
--replace-fail '/usr/bin/env python3' '${python3}/bin/python'
|
||||||
|
substituteInPlace ta/pkcs11/scripts/verify-helpers.sh \
|
||||||
|
--replace-fail '/bin/bash' '${bash}/bin/bash'
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))objcopy" ${binutils}/bin/${toolchain.targetPrefix}objcopy
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))objdump" ${binutils}/bin/${toolchain.targetPrefix}objdump
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))nm" ${binutils}/bin/${toolchain.targetPrefix}nm
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))readelf" ${binutils}/bin/${toolchain.targetPrefix}readelf
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))ar" ${binutils}/bin/${toolchain.targetPrefix}ar
|
||||||
|
substituteInPlace mk/gcc.mk \
|
||||||
|
--replace-fail "\$(CROSS_COMPILE_\$(sm))cpp" ${cpp}/bin/${toolchain.targetPrefix}cpp
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"PLATFORM=imx-mx95evk"
|
||||||
|
"CFG_ARM64_core=y"
|
||||||
|
"CFG_TEE_TA_LOG_LEVEL=0"
|
||||||
|
"CFG_TEE_CORE_LOG_LEVEL=0"
|
||||||
|
"CROSS_COMPILE=${toolchain}/bin/${toolchain.targetPrefix}"
|
||||||
|
"CROSS_COMPILE64=${toolchain}/bin/${toolchain.targetPrefix}"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp ./out/arm-plat-imx/core/tee-raw.bin $out/tee.bin
|
||||||
|
'';
|
||||||
|
}
|
||||||
92
compulab/ucm-imx95/bsp/ucm-imx95-sm-fw.nix
Normal file
92
compulab/ucm-imx95/bsp/ucm-imx95-sm-fw.nix
Normal file
|
|
@ -0,0 +1,92 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
buildPackages,
|
||||||
|
gcc-arm-embedded,
|
||||||
|
fetchFromGitHub,
|
||||||
|
fetchpatch,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
metaBspImx95Rev = "224eed17cddc573061150e9d2ce6f9acb39ea50e"; # scarthgap-6.6.36-EVAL-UCM-iMX95-1.0
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "imx95-sm-fw";
|
||||||
|
version = "lf-6.6.36-2.1.0";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
buildPackages.python3
|
||||||
|
gcc-arm-embedded
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = with buildPackages.python3.pkgs; [
|
||||||
|
pycryptodomex
|
||||||
|
pyelftools
|
||||||
|
cryptography
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nxp-imx";
|
||||||
|
repo = "imx-sm";
|
||||||
|
rev = "709deccd9338399eb39b5cf99a60eab4fa60d539";
|
||||||
|
sha256 = "sha256-02Cl+XhWGSFswspdBJ/4B/mBm4XTs/qKotx0BXMQpJk=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-system-manager/imx-system-manager/0001-Add-mcimx95cust-board.patch";
|
||||||
|
sha256 = "sha256-zvZ4bNew+yRPmaZQMrAH087KpCLRqz6zdElfe72Dtuc=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-system-manager/imx-system-manager/0002-Fix-null-pionter-except.patch";
|
||||||
|
sha256 = "sha256-q72VEvJqm2CmOxdWMqGibgXS5lY08mC4srEcy00QdrE=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-system-manager/imx-system-manager/0001-update-for-yocto-6.6.36-compatibility.patch";
|
||||||
|
sha256 = "sha256-JzHqDiD/ZOu6VQQI0JxY17RQ3bA2t1aP3O1sjLPguWs=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-system-manager/imx-system-manager/0003-sm-Disable-GPIO1-10-interrupt.patch";
|
||||||
|
sha256 = "sha256-dhcDv7Uq856+MBonczMPznk+tuqUFxTcHiKLX+myCVA=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://raw.githubusercontent.com/compulab-yokneam/meta-bsp-imx95/${metaBspImx95Rev}/recipes-bsp/imx-system-manager/imx-system-manager/0004-configs-mx95cust-change-LPTPM1-ownership.patch";
|
||||||
|
sha256 = "sha256-NcLu6+zXpiSz1bHKW14Zuf6F/4pzKsekb+zaRtKjSTY=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace sm/makefiles/gcc_cross.mak \
|
||||||
|
--replace-fail "\$(SM_CROSS_COMPILE)objcopy" ${gcc-arm-embedded}/bin/arm-none-eabi-objcopy
|
||||||
|
substituteInPlace sm/makefiles/build_info.mak \
|
||||||
|
--replace-fail "/bin/echo" "echo"
|
||||||
|
substituteInPlace sm/makefiles/gcc_cross.mak \
|
||||||
|
--replace-fail 'SM_CROSS_COMPILE ?= $(TOOLS)/arm-gnu-toolchain-*-none-eabi/bin/arm-none-eabi-' \
|
||||||
|
'SM_CROSS_COMPILE ?= $(CROSS_COMPILE)'
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"config=mx95cust"
|
||||||
|
"M=2"
|
||||||
|
"CROSS_COMPILE=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"CROSS_COMPILE64=${gcc-arm-embedded}/bin/arm-none-eabi-"
|
||||||
|
"ARCH=arm"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp build/mx95cust/m33_image.bin $out/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/nxp-imx/imx-sm";
|
||||||
|
description = "System Manager firmware for i.MX processors";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
maintainers = [
|
||||||
|
{
|
||||||
|
name = "Govind Singh";
|
||||||
|
email = "govind.singh@tii.ae";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
platforms = [ "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
95
compulab/ucm-imx95/bsp/ucm-imx95-uboot.nix
Normal file
95
compulab/ucm-imx95/bsp/ucm-imx95-uboot.nix
Normal file
|
|
@ -0,0 +1,95 @@
|
||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
lib,
|
||||||
|
bison,
|
||||||
|
dtc,
|
||||||
|
fetchFromGitHub,
|
||||||
|
flex,
|
||||||
|
gnutls,
|
||||||
|
libuuid,
|
||||||
|
ncurses,
|
||||||
|
openssl,
|
||||||
|
which,
|
||||||
|
perl,
|
||||||
|
buildPackages,
|
||||||
|
efitools,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
ubsrc = fetchFromGitHub {
|
||||||
|
owner = "compulab-yokneam";
|
||||||
|
repo = "u-boot-compulab";
|
||||||
|
# tag: lf_v2024.04
|
||||||
|
rev = "824401fe487d7d3cbcf251bd60270bd7fe8d21d0";
|
||||||
|
sha256 = "sha256-m+YW7+XF/jcNKfyb5533LXGyOWvStqY+MCczAdcNGZI=";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "imx95-uboot";
|
||||||
|
version = "2024.04";
|
||||||
|
src = ubsrc;
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
patchShebangs tools
|
||||||
|
patchShebangs scripts
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
bison
|
||||||
|
flex
|
||||||
|
openssl
|
||||||
|
which
|
||||||
|
ncurses
|
||||||
|
libuuid
|
||||||
|
gnutls
|
||||||
|
openssl
|
||||||
|
perl
|
||||||
|
efitools
|
||||||
|
];
|
||||||
|
|
||||||
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||||
|
hardeningDisable = [ "all" ];
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"DTC=${lib.getExe buildPackages.dtc}"
|
||||||
|
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
|
||||||
|
];
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
CONFIG_USE_BOOTCOMMAND=y
|
||||||
|
CONFIG_BOOTCOMMAND="setenv ramdisk_addr_r 0x97000000; setenv fdt_addr_r 0x96000000; run distro_bootcmd; "
|
||||||
|
CONFIG_CMD_BOOTEFI_SELFTEST=y
|
||||||
|
CONFIG_CMD_BOOTEFI=y
|
||||||
|
CONFIG_EFI_LOADER=y
|
||||||
|
CONFIG_BLK=y
|
||||||
|
CONFIG_PARTITIONS=y
|
||||||
|
CONFIG_DM_DEVICE_REMOVE=n
|
||||||
|
CONFIG_CMD_CACHE=y
|
||||||
|
'';
|
||||||
|
|
||||||
|
passAsFile = [ "extraConfig" ];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
runHook preConfigure
|
||||||
|
|
||||||
|
make ucm-imx95_defconfig
|
||||||
|
cat $extraConfigPath >> .config
|
||||||
|
make olddefconfig
|
||||||
|
|
||||||
|
runHook postConfigure
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out
|
||||||
|
cp ./u-boot-nodtb.bin $out
|
||||||
|
cp ./spl/u-boot-spl.bin $out
|
||||||
|
cp ./arch/arm/dts/ucm-imx95.dtb $out
|
||||||
|
cp .config $out
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
dontStrip = true;
|
||||||
|
}
|
||||||
19
compulab/ucm-imx95/default.nix
Normal file
19
compulab/ucm-imx95/default.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(import ./overlay.nix)
|
||||||
|
];
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
./modules.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.loader.grub.extraFiles = {
|
||||||
|
"ucm-imx95.dtb" = "${pkgs.callPackage ./bsp/ucm-imx95-linux.nix { }}/dtbs/compulab/ucm-imx95.dtb";
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.deviceTree = {
|
||||||
|
filter = "ucm-imx95.dtb";
|
||||||
|
name = "ucm-imx95.dtb";
|
||||||
|
};
|
||||||
|
}
|
||||||
17
compulab/ucm-imx95/modules.nix
Normal file
17
compulab/ucm-imx95/modules.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
nixpkgs.hostPlatform.system = "aarch64-linux";
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
kernelPackages = pkgs.linuxPackagesFor (pkgs.callPackage ./bsp/ucm-imx95-linux.nix { });
|
||||||
|
initrd.includeDefaultModules = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
disabledModules = [ "profiles/all-hardware.nix" ];
|
||||||
|
|
||||||
|
hardware.deviceTree.enable = true;
|
||||||
|
}
|
||||||
3
compulab/ucm-imx95/overlay.nix
Normal file
3
compulab/ucm-imx95/overlay.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
final: _prev: {
|
||||||
|
inherit (final.callPackage ./bsp/ucm-imx95-boot.nix { }) imx95-boot;
|
||||||
|
}
|
||||||
|
|
@ -8,6 +8,3 @@
|
||||||
`fwupd` is used to receive firmware updates from vendors. This device is in its [supported devices list](https://fwupd.org/lvfs/devices/)
|
`fwupd` is used to receive firmware updates from vendors. This device is in its [supported devices list](https://fwupd.org/lvfs/devices/)
|
||||||
|
|
||||||
`thermald` is used to achieve better thermal behaviour
|
`thermald` is used to achieve better thermal behaviour
|
||||||
|
|
||||||
##### TLP
|
|
||||||
TLP is a battery power optimizer for laptops. It is enabled by default, however, since it conflicts with power-profiles-daemon which is GNOME's power management system, TLP will not be installed with if power-profiles-daemon or a recent version of GNOME is present.
|
|
||||||
|
|
|
||||||
|
|
@ -6,16 +6,8 @@
|
||||||
../../../common/pc/laptop
|
../../../common/pc/laptop
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.enableAllFirmware = lib.mkDefault true;
|
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
fwupd.enable = lib.mkDefault true;
|
fwupd.enable = lib.mkDefault true;
|
||||||
thermald.enable = lib.mkDefault true;
|
thermald.enable = lib.mkDefault true;
|
||||||
};
|
};
|
||||||
|
|
||||||
boot = {
|
|
||||||
# needs to be explicitly loaded or else bluetooth/wifi won't work.
|
|
||||||
kernelModules = [ "wl" ];
|
|
||||||
extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
32
dell/precision/5570/README.md
Normal file
32
dell/precision/5570/README.md
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
# Dell Precision 5570
|
||||||
|
|
||||||
|
## Tested Hardware
|
||||||
|
|
||||||
|
```bash
|
||||||
|
lspci -nn
|
||||||
|
00:00.0 Host bridge [0600]: Intel Corporation 12th Gen Core Processor Host Bridge/DRAM Registers [8086:4641] (rev 02)
|
||||||
|
00:01.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 [8086:460d] (rev 02)
|
||||||
|
00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] [8086:46a6] (rev 0c)
|
||||||
|
00:04.0 Signal processing controller [1180]: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant [8086:461d] (rev 02)
|
||||||
|
00:06.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 [8086:464d] (rev 02)
|
||||||
|
00:07.0 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 [8086:466e] (rev 02)
|
||||||
|
00:07.1 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #1 [8086:463f] (rev 02)
|
||||||
|
00:08.0 System peripheral [0880]: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator [8086:464f] (rev 02)
|
||||||
|
00:0d.0 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller [8086:461e] (rev 02)
|
||||||
|
00:0d.2 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 [8086:463e] (rev 02)
|
||||||
|
00:12.0 Serial controller [0700]: Intel Corporation Alder Lake-P Integrated Sensor Hub [8086:51fc] (rev 01)
|
||||||
|
00:14.0 USB controller [0c03]: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller [8086:51ed] (rev 01)
|
||||||
|
00:14.2 RAM memory [0500]: Intel Corporation Alder Lake PCH Shared SRAM [8086:51ef] (rev 01)
|
||||||
|
00:14.3 Network controller [0280]: Intel Corporation Alder Lake-P PCH CNVi WiFi [8086:51f0] (rev 01)
|
||||||
|
00:15.0 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 [8086:51e8] (rev 01)
|
||||||
|
00:15.1 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 [8086:51e9] (rev 01)
|
||||||
|
00:16.0 Communication controller [0780]: Intel Corporation Alder Lake PCH HECI Controller [8086:51e0] (rev 01)
|
||||||
|
00:1c.0 PCI bridge [0604]: Intel Corporation Alder Lake-P PCH PCIe Root Port #4 [8086:51bb] (rev 01)
|
||||||
|
00:1f.0 ISA bridge [0601]: Intel Corporation Alder Lake PCH eSPI Controller [8086:5182] (rev 01)
|
||||||
|
00:1f.3 Audio device [0403]: Intel Corporation Alder Lake PCH-P High Definition Audio Controller [8086:51c8] (rev 01)
|
||||||
|
00:1f.4 SMBus [0c05]: Intel Corporation Alder Lake PCH-P SMBus Host Controller [8086:51a3] (rev 01)
|
||||||
|
00:1f.5 Serial bus controller [0c80]: Intel Corporation Alder Lake-P PCH SPI Controller [8086:51a4] (rev 01)
|
||||||
|
01:00.0 3D controller [0302]: NVIDIA Corporation GA107GLM [RTX A1000 Laptop GPU] [10de:25b9] (rev a1)
|
||||||
|
02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO [144d:a80a]
|
||||||
|
a5:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5260 PCI Express Card Reader [10ec:5260] (rev 01)
|
||||||
|
```
|
||||||
37
dell/precision/5570/default.nix
Normal file
37
dell/precision/5570/default.nix
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../common/cpu/intel/alder-lake
|
||||||
|
../../../common/pc/laptop
|
||||||
|
../../../common/pc/ssd
|
||||||
|
../../../common/gpu/nvidia/prime.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware.intelgpu.driver = lib.mkIf (lib.versionAtLeast config.boot.kernelPackages.kernel.version "6.8") "xe";
|
||||||
|
|
||||||
|
boot.kernelParams = lib.mkIf (config.hardware.intelgpu.driver == "xe") [
|
||||||
|
"i915.force_probe=!46a6"
|
||||||
|
"xe.force_probe=46a6"
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware.nvidia = {
|
||||||
|
nvidiaSettings = lib.mkDefault true;
|
||||||
|
modesetting.enable = lib.mkDefault true;
|
||||||
|
open = lib.mkDefault false;
|
||||||
|
prime = {
|
||||||
|
intelBusId = "PCI:0:2:0";
|
||||||
|
nvidiaBusId = "PCI:1:0:0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Override the Intel gpu driver setting imported above
|
||||||
|
environment.variables = {
|
||||||
|
VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkOverride 990 "nvidia");
|
||||||
|
};
|
||||||
|
|
||||||
|
services.thermald.enable = lib.mkDefault true;
|
||||||
|
}
|
||||||
|
|
@ -61,7 +61,10 @@ Then use `fwupdmgr` to perform updates
|
||||||
|
|
||||||
## Nvidia Driver
|
## 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
|
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:
|
||||||
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
|
```bash
|
||||||
newest nvidia drivers don't support legacy devices, the closest version newer than 375.82 was chosen.
|
$ 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;
|
enable32Bit = lib.mkDefault true;
|
||||||
};
|
};
|
||||||
nvidia = {
|
nvidia = {
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.legacy_390;
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
nvidiaSettings = lib.mkDefault true;
|
nvidiaSettings = lib.mkDefault true;
|
||||||
modesetting.enable = lib.mkDefault true;
|
modesetting.enable = lib.mkDefault true;
|
||||||
open = lib.mkDefault false;
|
open = lib.mkDefault false;
|
||||||
|
|
|
||||||
|
|
@ -13,11 +13,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
# needs to be explicitly loaded or else bluetooth/wifi won't work
|
|
||||||
kernelModules = [
|
kernelModules = [
|
||||||
"kvm-intel"
|
"kvm-intel"
|
||||||
"wl"
|
|
||||||
];
|
];
|
||||||
extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
22
flake.lock
generated
22
flake.lock
generated
|
|
@ -1,26 +1,6 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"nixpkgs": {
|
"root": {}
|
||||||
"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": "root",
|
||||||
"version": 7
|
"version": 7
|
||||||
|
|
|
||||||
110
flake.nix
110
flake.nix
|
|
@ -2,7 +2,39 @@
|
||||||
description = "nixos-hardware";
|
description = "nixos-hardware";
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
{ ... }:
|
{ self, ... }:
|
||||||
|
let
|
||||||
|
# Import private inputs (for development)
|
||||||
|
privateInputs =
|
||||||
|
(import ./tests/flake-compat.nix {
|
||||||
|
src = ./tests;
|
||||||
|
}).defaultNix;
|
||||||
|
|
||||||
|
systems = [
|
||||||
|
"aarch64-linux"
|
||||||
|
"riscv64-linux"
|
||||||
|
"x86_64-linux"
|
||||||
|
];
|
||||||
|
|
||||||
|
formatSystems = [
|
||||||
|
"aarch64-linux"
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
|
||||||
|
# Helper to iterate over systems
|
||||||
|
eachSystem =
|
||||||
|
f:
|
||||||
|
privateInputs.nixos-unstable-small.lib.genAttrs systems (
|
||||||
|
system: f privateInputs.nixos-unstable-small.legacyPackages.${system} system
|
||||||
|
);
|
||||||
|
|
||||||
|
eachSystemFormat =
|
||||||
|
f:
|
||||||
|
privateInputs.nixos-unstable-small.lib.genAttrs formatSystems (
|
||||||
|
system: f privateInputs.nixos-unstable-small.legacyPackages.${system} system
|
||||||
|
);
|
||||||
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
nixosModules =
|
nixosModules =
|
||||||
|
|
@ -20,12 +52,14 @@
|
||||||
apple-imac-18-2 = import ./apple/imac/18-2;
|
apple-imac-18-2 = import ./apple/imac/18-2;
|
||||||
apple-macbook-air-3 = import ./apple/macbook-air/3;
|
apple-macbook-air-3 = import ./apple/macbook-air/3;
|
||||||
apple-macbook-air-4 = import ./apple/macbook-air/4;
|
apple-macbook-air-4 = import ./apple/macbook-air/4;
|
||||||
|
apple-macbook-air-5 = import ./apple/macbook-air/5;
|
||||||
apple-macbook-air-6 = import ./apple/macbook-air/6;
|
apple-macbook-air-6 = import ./apple/macbook-air/6;
|
||||||
apple-macbook-air-7 = import ./apple/macbook-air/7;
|
apple-macbook-air-7 = import ./apple/macbook-air/7;
|
||||||
apple-macbook-pro = import ./apple/macbook-pro;
|
apple-macbook-pro = import ./apple/macbook-pro;
|
||||||
apple-macbook-pro-8-1 = import ./apple/macbook-pro/8-1;
|
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-10-1 = import ./apple/macbook-pro/10-1;
|
||||||
apple-macbook-pro-11-1 = import ./apple/macbook-pro/11-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-11-5 = import ./apple/macbook-pro/11-5;
|
||||||
apple-macbook-pro-12-1 = import ./apple/macbook-pro/12-1;
|
apple-macbook-pro-12-1 = import ./apple/macbook-pro/12-1;
|
||||||
apple-macbook-pro-14-1 = import ./apple/macbook-pro/14-1;
|
apple-macbook-pro-14-1 = import ./apple/macbook-pro/14-1;
|
||||||
|
|
@ -41,11 +75,14 @@
|
||||||
asus-flow-gv302x-amdgpu = import ./asus/flow/gv302x/amdgpu;
|
asus-flow-gv302x-amdgpu = import ./asus/flow/gv302x/amdgpu;
|
||||||
asus-flow-gv302x-nvidia = import ./asus/flow/gv302x/nvidia;
|
asus-flow-gv302x-nvidia = import ./asus/flow/gv302x/nvidia;
|
||||||
asus-pro-ws-x570-ace = import ./asus/pro-ws-x570-ace;
|
asus-pro-ws-x570-ace = import ./asus/pro-ws-x570-ace;
|
||||||
|
asus-rog-gl552vw = import ./asus/rog-gl552vw;
|
||||||
asus-rog-strix-g513im = import ./asus/rog-strix/g513im;
|
asus-rog-strix-g513im = import ./asus/rog-strix/g513im;
|
||||||
asus-rog-strix-g533zw = import ./asus/rog-strix/g533zw;
|
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-g713ie = import ./asus/rog-strix/g713ie;
|
||||||
asus-rog-strix-g733qs = import ./asus/rog-strix/g733qs;
|
asus-rog-strix-g733qs = import ./asus/rog-strix/g733qs;
|
||||||
asus-rog-strix-x570e = import ./asus/rog-strix/x570e;
|
asus-rog-strix-x570e = import ./asus/rog-strix/x570e;
|
||||||
|
asus-zenbook-um6702 = import ./asus/zenbook/um6702;
|
||||||
asus-zenbook-ux371 = import ./asus/zenbook/ux371;
|
asus-zenbook-ux371 = import ./asus/zenbook/ux371;
|
||||||
asus-zenbook-ux535 = import ./asus/zenbook/ux535;
|
asus-zenbook-ux535 = import ./asus/zenbook/ux535;
|
||||||
asus-zenbook-ux481-intelgpu = import ./asus/zenbook/ux481/intelgpu;
|
asus-zenbook-ux481-intelgpu = import ./asus/zenbook/ux481/intelgpu;
|
||||||
|
|
@ -65,6 +102,7 @@
|
||||||
dell-e7240 = deprecated "1326" "dell-e7240" (import ./dell/e7240);
|
dell-e7240 = deprecated "1326" "dell-e7240" (import ./dell/e7240);
|
||||||
dell-g3-3779 = import ./dell/g3/3779;
|
dell-g3-3779 = import ./dell/g3/3779;
|
||||||
dell-g3-3579 = import ./dell/g3/3579;
|
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-14-5420 = import ./dell/inspiron/14-5420;
|
||||||
dell-inspiron-5509 = import ./dell/inspiron/5509;
|
dell-inspiron-5509 = import ./dell/inspiron/5509;
|
||||||
dell-inspiron-5515 = import ./dell/inspiron/5515;
|
dell-inspiron-5515 = import ./dell/inspiron/5515;
|
||||||
|
|
@ -91,6 +129,7 @@
|
||||||
dell-precision-5490 = import ./dell/precision/5490;
|
dell-precision-5490 = import ./dell/precision/5490;
|
||||||
dell-precision-5530 = import ./dell/precision/5530;
|
dell-precision-5530 = import ./dell/precision/5530;
|
||||||
dell-precision-5560 = import ./dell/precision/5560;
|
dell-precision-5560 = import ./dell/precision/5560;
|
||||||
|
dell-precision-5570 = import ./dell/precision/5570;
|
||||||
dell-precision-7520 = import ./dell/precision/7520;
|
dell-precision-7520 = import ./dell/precision/7520;
|
||||||
dell-xps-13-7390 = import ./dell/xps/13-7390;
|
dell-xps-13-7390 = import ./dell/xps/13-7390;
|
||||||
dell-xps-13-9300 = import ./dell/xps/13-9300;
|
dell-xps-13-9300 = import ./dell/xps/13-9300;
|
||||||
|
|
@ -132,9 +171,12 @@
|
||||||
framework-13-7040-amd = import ./framework/13-inch/7040-amd;
|
framework-13-7040-amd = import ./framework/13-inch/7040-amd;
|
||||||
framework-amd-ai-300-series = import ./framework/13-inch/amd-ai-300-series;
|
framework-amd-ai-300-series = import ./framework/13-inch/amd-ai-300-series;
|
||||||
framework-16-7040-amd = import ./framework/16-inch/7040-amd;
|
framework-16-7040-amd = import ./framework/16-inch/7040-amd;
|
||||||
|
framework-16-amd-ai-300-series = import ./framework/16-inch/amd-ai-300-series;
|
||||||
|
framework-desktop-amd-ai-max-300-series = import ./framework/desktop/amd-ai-max-300-series;
|
||||||
friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4;
|
friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4;
|
||||||
friendlyarm-nanopi-r5s = import ./friendlyarm/nanopi-r5s;
|
friendlyarm-nanopi-r5s = import ./friendlyarm/nanopi-r5s;
|
||||||
focus-m2-gen1 = import ./focus/m2/gen1;
|
focus-m2-gen1 = import ./focus/m2/gen1;
|
||||||
|
fydetab-duo = import ./fydetab/duo;
|
||||||
gigabyte-b550 = import ./gigabyte/b550;
|
gigabyte-b550 = import ./gigabyte/b550;
|
||||||
gigabyte-b650 = import ./gigabyte/b650;
|
gigabyte-b650 = import ./gigabyte/b650;
|
||||||
gmktec-nucbox-g3-plus = import ./gmktec/nucbox/g3-plus;
|
gmktec-nucbox-g3-plus = import ./gmktec/nucbox/g3-plus;
|
||||||
|
|
@ -152,9 +194,11 @@
|
||||||
hp-elitebook-845g8 = import ./hp/elitebook/845/g8;
|
hp-elitebook-845g8 = import ./hp/elitebook/845/g8;
|
||||||
hp-elitebook-845g9 = import ./hp/elitebook/845/g9;
|
hp-elitebook-845g9 = import ./hp/elitebook/845/g9;
|
||||||
hp-probook-440G5 = import ./hp/probook/440G5;
|
hp-probook-440G5 = import ./hp/probook/440G5;
|
||||||
|
hp-probook-460G11 = import ./hp/probook/460G11;
|
||||||
hp-laptop-14s-dq2024nf = import ./hp/laptop/14s-dq2024nf;
|
hp-laptop-14s-dq2024nf = import ./hp/laptop/14s-dq2024nf;
|
||||||
huawei-machc-wa = import ./huawei/machc-wa;
|
huawei-machc-wa = import ./huawei/machc-wa;
|
||||||
hp-notebook-14-df0023 = import ./hp/notebook/14-df0023;
|
hp-notebook-14-df0023 = import ./hp/notebook/14-df0023;
|
||||||
|
intel-nuc-5i5ryb = import ./intel/nuc/5i5ryb;
|
||||||
intel-nuc-8i7beh = import ./intel/nuc/8i7beh;
|
intel-nuc-8i7beh = import ./intel/nuc/8i7beh;
|
||||||
lenovo-ideacentre-k330 = import ./lenovo/ideacentre/k330;
|
lenovo-ideacentre-k330 = import ./lenovo/ideacentre/k330;
|
||||||
lenovo-ideapad-14imh9 = import ./lenovo/ideapad/14imh9;
|
lenovo-ideapad-14imh9 = import ./lenovo/ideapad/14imh9;
|
||||||
|
|
@ -163,11 +207,14 @@
|
||||||
lenovo-ideapad-15ach6 = import ./lenovo/ideapad/15ach6;
|
lenovo-ideapad-15ach6 = import ./lenovo/ideapad/15ach6;
|
||||||
lenovo-ideapad-16ach6 = import ./lenovo/ideapad/16ach6;
|
lenovo-ideapad-16ach6 = import ./lenovo/ideapad/16ach6;
|
||||||
lenovo-ideapad-16ahp9 = import ./lenovo/ideapad/16ahp9;
|
lenovo-ideapad-16ahp9 = import ./lenovo/ideapad/16ahp9;
|
||||||
|
lenovo-ideapad-s5-16iah8 = import ./lenovo/ideapad/16iah8;
|
||||||
lenovo-ideapad-z510 = import ./lenovo/ideapad/z510;
|
lenovo-ideapad-z510 = import ./lenovo/ideapad/z510;
|
||||||
lenovo-ideapad-slim-5 = import ./lenovo/ideapad/slim-5;
|
lenovo-ideapad-slim-5 = import ./lenovo/ideapad/slim-5;
|
||||||
lenovo-ideapad-s145-15api = import ./lenovo/ideapad/s145-15api;
|
lenovo-ideapad-s145-15api = import ./lenovo/ideapad/s145-15api;
|
||||||
lenovo-legion-15ach6 = import ./lenovo/legion/15ach6;
|
lenovo-legion-15ach6 = import ./lenovo/legion/15ach6;
|
||||||
lenovo-legion-15ach6h = import ./lenovo/legion/15ach6h;
|
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-15arh05h = import ./lenovo/legion/15arh05h;
|
||||||
lenovo-legion-16ach6h = import ./lenovo/legion/16ach6h;
|
lenovo-legion-16ach6h = import ./lenovo/legion/16ach6h;
|
||||||
lenovo-legion-16ach6h-hybrid = import ./lenovo/legion/16ach6h/hybrid;
|
lenovo-legion-16ach6h-hybrid = import ./lenovo/legion/16ach6h/hybrid;
|
||||||
|
|
@ -178,6 +225,7 @@
|
||||||
lenovo-legion-16achg6-nvidia = import ./lenovo/legion/16achg6/nvidia;
|
lenovo-legion-16achg6-nvidia = import ./lenovo/legion/16achg6/nvidia;
|
||||||
lenovo-legion-16aph8 = import ./lenovo/legion/16aph8;
|
lenovo-legion-16aph8 = import ./lenovo/legion/16aph8;
|
||||||
lenovo-legion-16arha7 = import ./lenovo/legion/16arha7;
|
lenovo-legion-16arha7 = import ./lenovo/legion/16arha7;
|
||||||
|
lenovo-legion-16iah7h = import ./lenovo/legion/16iah7h;
|
||||||
lenovo-legion-16ithg6 = import ./lenovo/legion/16ithg6;
|
lenovo-legion-16ithg6 = import ./lenovo/legion/16ithg6;
|
||||||
lenovo-legion-16irx8h = import ./lenovo/legion/16irx8h;
|
lenovo-legion-16irx8h = import ./lenovo/legion/16irx8h;
|
||||||
lenovo-legion-16irx9h = import ./lenovo/legion/16irx9h;
|
lenovo-legion-16irx9h = import ./lenovo/legion/16irx9h;
|
||||||
|
|
@ -204,10 +252,12 @@
|
||||||
lenovo-thinkpad-p14s-amd-gen3 = import ./lenovo/thinkpad/p14s/amd/gen3;
|
lenovo-thinkpad-p14s-amd-gen3 = import ./lenovo/thinkpad/p14s/amd/gen3;
|
||||||
lenovo-thinkpad-p14s-amd-gen4 = import ./lenovo/thinkpad/p14s/amd/gen4;
|
lenovo-thinkpad-p14s-amd-gen4 = import ./lenovo/thinkpad/p14s/amd/gen4;
|
||||||
lenovo-thinkpad-p14s-amd-gen5 = import ./lenovo/thinkpad/p14s/amd/gen5;
|
lenovo-thinkpad-p14s-amd-gen5 = import ./lenovo/thinkpad/p14s/amd/gen5;
|
||||||
|
lenovo-thinkpad-p14s-intel-gen2 = import ./lenovo/thinkpad/p14s/intel/gen2;
|
||||||
lenovo-thinkpad-p14s-intel-gen3 = import ./lenovo/thinkpad/p14s/intel/gen3;
|
lenovo-thinkpad-p14s-intel-gen3 = import ./lenovo/thinkpad/p14s/intel/gen3;
|
||||||
lenovo-thinkpad-p14s-intel-gen5 = import ./lenovo/thinkpad/p14s/intel/gen5;
|
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-gen1 = import ./lenovo/thinkpad/p16s/amd/gen1;
|
||||||
lenovo-thinkpad-p16s-amd-gen2 = import ./lenovo/thinkpad/p16s/amd/gen2;
|
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-p16s-intel-gen2 = import ./lenovo/thinkpad/p16s/intel/gen2;
|
||||||
lenovo-thinkpad-p43s = import ./lenovo/thinkpad/p43s;
|
lenovo-thinkpad-p43s = import ./lenovo/thinkpad/p43s;
|
||||||
lenovo-thinkpad-p50 = import ./lenovo/thinkpad/p50;
|
lenovo-thinkpad-p50 = import ./lenovo/thinkpad/p50;
|
||||||
|
|
@ -220,6 +270,9 @@
|
||||||
lenovo-thinkpad-t14-amd-gen3 = import ./lenovo/thinkpad/t14/amd/gen3;
|
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-gen4 = import ./lenovo/thinkpad/t14/amd/gen4;
|
||||||
lenovo-thinkpad-t14-amd-gen5 = import ./lenovo/thinkpad/t14/amd/gen5;
|
lenovo-thinkpad-t14-amd-gen5 = import ./lenovo/thinkpad/t14/amd/gen5;
|
||||||
|
lenovo-thinkpad-t14-intel-gen1 = import ./lenovo/thinkpad/t14/intel/gen1;
|
||||||
|
lenovo-thinkpad-t14-intel-gen1-nvidia = import ./lenovo/thinkpad/t14/intel/gen1/nvidia;
|
||||||
|
lenovo-thinkpad-t14-intel-gen6 = import ./lenovo/thinkpad/t14/intel/gen6;
|
||||||
lenovo-thinkpad-t14s = import ./lenovo/thinkpad/t14s;
|
lenovo-thinkpad-t14s = import ./lenovo/thinkpad/t14s;
|
||||||
lenovo-thinkpad-t14s-amd-gen1 = import ./lenovo/thinkpad/t14s/amd/gen1;
|
lenovo-thinkpad-t14s-amd-gen1 = import ./lenovo/thinkpad/t14s/amd/gen1;
|
||||||
lenovo-thinkpad-t14s-amd-gen4 = import ./lenovo/thinkpad/t14s/amd/gen4;
|
lenovo-thinkpad-t14s-amd-gen4 = import ./lenovo/thinkpad/t14s/amd/gen4;
|
||||||
|
|
@ -260,8 +313,8 @@
|
||||||
lenovo-thinkpad-x1-extreme-gen4 = import ./lenovo/thinkpad/x1-extreme/gen4;
|
lenovo-thinkpad-x1-extreme-gen4 = import ./lenovo/thinkpad/x1-extreme/gen4;
|
||||||
lenovo-thinkpad-x1-nano = import ./lenovo/thinkpad/x1-nano;
|
lenovo-thinkpad-x1-nano = import ./lenovo/thinkpad/x1-nano;
|
||||||
lenovo-thinkpad-x1-nano-gen1 = import ./lenovo/thinkpad/x1-nano/gen1;
|
lenovo-thinkpad-x1-nano-gen1 = import ./lenovo/thinkpad/x1-nano/gen1;
|
||||||
lenovo-thinkpad-x13 = import ./lenovo/thinkpad/x13/intel;
|
|
||||||
lenovo-thinkpad-x13-amd = import ./lenovo/thinkpad/x13/amd;
|
lenovo-thinkpad-x13-amd = import ./lenovo/thinkpad/x13/amd;
|
||||||
|
lenovo-thinkpad-x13-intel = import ./lenovo/thinkpad/x13/intel;
|
||||||
lenovo-thinkpad-x13-yoga = import ./lenovo/thinkpad/x13/yoga;
|
lenovo-thinkpad-x13-yoga = import ./lenovo/thinkpad/x13/yoga;
|
||||||
lenovo-thinkpad-x13-yoga-3th-gen = import ./lenovo/thinkpad/x13/yoga/3th-gen;
|
lenovo-thinkpad-x13-yoga-3th-gen = import ./lenovo/thinkpad/x13/yoga/3th-gen;
|
||||||
lenovo-thinkpad-x13s = import ./lenovo/thinkpad/x13s;
|
lenovo-thinkpad-x13s = import ./lenovo/thinkpad/x13s;
|
||||||
|
|
@ -285,8 +338,11 @@
|
||||||
lenovo-yoga-7-14IAH7-hybrid = import ./lenovo/yoga/7/14IAH7/hybrid;
|
lenovo-yoga-7-14IAH7-hybrid = import ./lenovo/yoga/7/14IAH7/hybrid;
|
||||||
lenovo-yoga-7-14ILL10 = import ./lenovo/yoga/7/14ILL10;
|
lenovo-yoga-7-14ILL10 = import ./lenovo/yoga/7/14ILL10;
|
||||||
lenovo-yoga-7-slim-gen8 = import ./lenovo/yoga/7/slim/gen8;
|
lenovo-yoga-7-slim-gen8 = import ./lenovo/yoga/7/slim/gen8;
|
||||||
|
letsnote-cf-lx3 = import ./panasonic/letsnote/cf-lx3;
|
||||||
letsnote-cf-lx4 = import ./panasonic/letsnote/cf-lx4;
|
letsnote-cf-lx4 = import ./panasonic/letsnote/cf-lx4;
|
||||||
|
linglong-nova-studio = import ./linglong/nova-studio;
|
||||||
malibal-aon-s1-intel = import ./malibal/aon/s1;
|
malibal-aon-s1-intel = import ./malibal/aon/s1;
|
||||||
|
mechrevo-gm5hg0a = import ./mechrevo/GM5HG0A;
|
||||||
microchip-icicle-kit = import ./microchip/icicle-kit;
|
microchip-icicle-kit = import ./microchip/icicle-kit;
|
||||||
microsoft-surface-go = import ./microsoft/surface/surface-go;
|
microsoft-surface-go = import ./microsoft/surface/surface-go;
|
||||||
microsoft-surface-pro-intel = import ./microsoft/surface/surface-pro-intel;
|
microsoft-surface-pro-intel = import ./microsoft/surface/surface-pro-intel;
|
||||||
|
|
@ -296,15 +352,19 @@
|
||||||
microsoft-surface-pro-9 = import ./microsoft/surface-pro/9;
|
microsoft-surface-pro-9 = import ./microsoft/surface-pro/9;
|
||||||
milkv-pioneer = import ./milkv/pioneer;
|
milkv-pioneer = import ./milkv/pioneer;
|
||||||
minisforum-v3 = import ./minisforum/v3;
|
minisforum-v3 = import ./minisforum/v3;
|
||||||
|
mnt-reform-rk3588 = import ./mnt/reform/rk3588;
|
||||||
morefine-m600 = import ./morefine/m600;
|
morefine-m600 = import ./morefine/m600;
|
||||||
msi-b350-tomahawk = import ./msi/b350-tomahawk;
|
msi-b350-tomahawk = import ./msi/b350-tomahawk;
|
||||||
msi-b550-a-pro = import ./msi/b550-a-pro;
|
msi-b550-a-pro = import ./msi/b550-a-pro;
|
||||||
|
msi-b550-tomahawk = import ./msi/b550-tomahawk;
|
||||||
msi-gs60 = import ./msi/gs60;
|
msi-gs60 = import ./msi/gs60;
|
||||||
msi-gl62 = import ./msi/gl62;
|
msi-gl62 = import ./msi/gl62;
|
||||||
msi-gl65-10SDR-492 = import ./msi/gl65/10SDR-492;
|
msi-gl65-10SDR-492 = import ./msi/gl65/10SDR-492;
|
||||||
nxp-imx8mp-evk = import ./nxp/imx8mp-evk;
|
nxp-imx8mp-evk = import ./nxp/imx8mp-evk;
|
||||||
nxp-imx8mq-evk = import ./nxp/imx8mq-evk;
|
nxp-imx8mq-evk = import ./nxp/imx8mq-evk;
|
||||||
nxp-imx8qm-mek = import ./nxp/imx8qm-mek;
|
nxp-imx8qm-mek = import ./nxp/imx8qm-mek;
|
||||||
|
nxp-imx93-evk = import ./nxp/imx93-evk;
|
||||||
|
ucm-imx95 = import ./compulab/ucm-imx95;
|
||||||
hardkernel-odroid-hc4 = import ./hardkernel/odroid-hc4;
|
hardkernel-odroid-hc4 = import ./hardkernel/odroid-hc4;
|
||||||
hardkernel-odroid-h3 = import ./hardkernel/odroid-h3;
|
hardkernel-odroid-h3 = import ./hardkernel/odroid-h3;
|
||||||
hardkernel-odroid-h4 = import ./hardkernel/odroid-h4;
|
hardkernel-odroid-h4 = import ./hardkernel/odroid-h4;
|
||||||
|
|
@ -348,13 +408,16 @@
|
||||||
system76-gaze18 = import ./system76/gaze18;
|
system76-gaze18 = import ./system76/gaze18;
|
||||||
system76-galp5-1650 = import ./system76/galp5-1650;
|
system76-galp5-1650 = import ./system76/galp5-1650;
|
||||||
system76-darp6 = import ./system76/darp6;
|
system76-darp6 = import ./system76/darp6;
|
||||||
|
system76-thelio-mega = import ./system76/thelio-mega;
|
||||||
toshiba-swanky = import ./toshiba/swanky;
|
toshiba-swanky = import ./toshiba/swanky;
|
||||||
tuxedo-aura-15-gen1 = import ./tuxedo/aura/15/gen1;
|
tuxedo-aura-15-gen1 = import ./tuxedo/aura/15/gen1;
|
||||||
tuxedo-infinitybook-v4 = import ./tuxedo/infinitybook/v4;
|
tuxedo-infinitybook-v4 = import ./tuxedo/infinitybook/v4;
|
||||||
tuxedo-infinitybook-pro14-gen7 = import ./tuxedo/infinitybook/pro14/gen7;
|
tuxedo-infinitybook-pro14-gen7 = import ./tuxedo/infinitybook/pro14/gen7;
|
||||||
|
tuxedo-infinitybook-pro14-gen9-amd = import ./tuxedo/infinitybook/pro14/gen9/amd;
|
||||||
tuxedo-infinitybook-pro14-gen9-intel = import ./tuxedo/infinitybook/pro14/gen9/intel;
|
tuxedo-infinitybook-pro14-gen9-intel = import ./tuxedo/infinitybook/pro14/gen9/intel;
|
||||||
tuxedo-pulse-14-gen3 = import ./tuxedo/pulse/14/gen3;
|
tuxedo-pulse-14-gen3 = import ./tuxedo/pulse/14/gen3;
|
||||||
tuxedo-pulse-15-gen2 = import ./tuxedo/pulse/15/gen2;
|
tuxedo-pulse-15-gen2 = import ./tuxedo/pulse/15/gen2;
|
||||||
|
xiaomi-redmibook-15-pro-2021 = import ./xiaomi/redmibook/15-pro-2021;
|
||||||
xiaomi-redmibook-16-pro-2024 = import ./xiaomi/redmibook/16-pro-2024;
|
xiaomi-redmibook-16-pro-2024 = import ./xiaomi/redmibook/16-pro-2024;
|
||||||
|
|
||||||
common-cpu-amd = import ./common/cpu/amd;
|
common-cpu-amd = import ./common/cpu/amd;
|
||||||
|
|
@ -390,5 +453,48 @@
|
||||||
common-pc-laptop-ssd = import ./common/pc/ssd;
|
common-pc-laptop-ssd = import ./common/pc/ssd;
|
||||||
common-pc-ssd = import ./common/pc/ssd;
|
common-pc-ssd = import ./common/pc/ssd;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Add formatter for `nix fmt`
|
||||||
|
formatter = eachSystemFormat (
|
||||||
|
pkgs: _system:
|
||||||
|
(privateInputs.treefmt-nix.lib.evalModule pkgs ./tests/treefmt.nix).config.build.wrapper
|
||||||
|
);
|
||||||
|
|
||||||
|
# Add packages
|
||||||
|
packages = eachSystem (
|
||||||
|
pkgs: system:
|
||||||
|
{
|
||||||
|
run-tests = pkgs.callPackage ./tests/run-tests.nix {
|
||||||
|
inherit self;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
// pkgs.lib.optionalAttrs (system == "aarch64-linux") {
|
||||||
|
# Boot images for NXP i.MX boards (aarch64-linux only)
|
||||||
|
ucm-imx95-boot = (pkgs.callPackage ./compulab/ucm-imx95/bsp/ucm-imx95-boot.nix { }).imx95-boot;
|
||||||
|
imx93-boot = (pkgs.callPackage ./nxp/imx93-evk/bsp/imx93-boot.nix { }).imx93-boot;
|
||||||
|
imx8mp-boot = (pkgs.callPackage ./nxp/imx8mp-evk/bsp/imx8mp-boot.nix { }).imx8m-boot;
|
||||||
|
imx8mq-boot = (pkgs.callPackage ./nxp/imx8mq-evk/bsp/imx8mq-boot.nix { }).imx8m-boot;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
# Add checks for `nix run .#run-tests`
|
||||||
|
checks = eachSystem (
|
||||||
|
pkgs: system:
|
||||||
|
let
|
||||||
|
treefmtEval = privateInputs.treefmt-nix.lib.evalModule pkgs ./tests/treefmt.nix;
|
||||||
|
nixosTests = import ./tests/nixos-tests.nix {
|
||||||
|
inherit
|
||||||
|
self
|
||||||
|
privateInputs
|
||||||
|
system
|
||||||
|
pkgs
|
||||||
|
;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
pkgs.lib.optionalAttrs (self.formatter ? ${system}) {
|
||||||
|
formatting = treefmtEval.config.build.check self;
|
||||||
|
}
|
||||||
|
// nixosTests
|
||||||
|
);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,16 +2,13 @@
|
||||||
|
|
||||||
## Updating Firmware
|
## Updating Firmware
|
||||||
|
|
||||||
First put enable `fwupd`
|
Everything is updateable through fwupd, so it's enabled by default.
|
||||||
|
|
||||||
```nix
|
To get the latest firmware, run:
|
||||||
services.fwupd.enable = true;
|
|
||||||
```
|
|
||||||
|
|
||||||
Then run
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
$ fwupdmgr update
|
$ fwupdmgr refresh
|
||||||
|
$ fwupdmgr update
|
||||||
```
|
```
|
||||||
|
|
||||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop12.RPL.BIOS.firmware)
|
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop12.RPL.BIOS.firmware)
|
||||||
|
|
|
||||||
|
|
@ -4,4 +4,10 @@
|
||||||
../common
|
../common
|
||||||
../../../common/cpu/intel
|
../../../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
|
# Needed for desktop environments to detect display orientation
|
||||||
hardware.sensor.iio.enable = lib.mkDefault true;
|
hardware.sensor.iio.enable = lib.mkDefault true;
|
||||||
|
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,16 +2,13 @@
|
||||||
|
|
||||||
## Updating Firmware
|
## Updating Firmware
|
||||||
|
|
||||||
First put enable `fwupd`
|
Everything is updateable through fwupd, so it's enabled by default.
|
||||||
|
|
||||||
```nix
|
To get the latest firmware, run:
|
||||||
services.fwupd.enable = true;
|
|
||||||
```
|
|
||||||
|
|
||||||
Then run
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
$ fwupdmgr update
|
$ fwupdmgr refresh
|
||||||
|
$ fwupdmgr update
|
||||||
```
|
```
|
||||||
|
|
||||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.Ryzen7040.BIOS.firmware)
|
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.Ryzen7040.BIOS.firmware)
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,6 @@ in
|
||||||
../common/amd.nix
|
../common/amd.nix
|
||||||
../../../common/cpu/amd/raphael/igpu.nix
|
../../../common/cpu/amd/raphael/igpu.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
hardware.framework.amd-7040.preventWakeOnAC = lib.mkOption {
|
hardware.framework.amd-7040.preventWakeOnAC = lib.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
|
|
@ -30,6 +29,8 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
|
||||||
# Workaround applied upstream in Linux >=6.7 (on BIOS 03.03)
|
# Workaround applied upstream in Linux >=6.7 (on BIOS 03.03)
|
||||||
# https://github.com/torvalds/linux/commit/a55bdad5dfd1efd4ed9ffe518897a21ca8e4e193
|
# https://github.com/torvalds/linux/commit/a55bdad5dfd1efd4ed9ffe518897a21ca8e4e193
|
||||||
services.udev.extraRules =
|
services.udev.extraRules =
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,13 @@
|
||||||
|
|
||||||
## Updating Firmware
|
## Updating Firmware
|
||||||
|
|
||||||
First put enable `fwupd`
|
Everything is updateable through fwupd, so it's enabled by default.
|
||||||
|
|
||||||
```nix
|
To get the latest firmware, run:
|
||||||
services.fwupd.enable = true;
|
|
||||||
```
|
|
||||||
|
|
||||||
Then run
|
|
||||||
|
|
||||||
```sh
|
```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
|
||||||
../common/amd.nix
|
../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
|
||||||
|
);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,21 +6,16 @@
|
||||||
../../../common/gpu/amd
|
../../../common/gpu/amd
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelParams =
|
boot.kernelParams = [
|
||||||
[
|
# There seems to be an issue with panel self-refresh (PSR) that
|
||||||
# There seems to be an issue with panel self-refresh (PSR) that
|
# causes hangs for users.
|
||||||
# causes hangs for users.
|
#
|
||||||
#
|
# https://community.frame.work/t/fedora-kde-becomes-suddenly-slow/58459
|
||||||
# https://community.frame.work/t/fedora-kde-becomes-suddenly-slow/58459
|
# https://gitlab.freedesktop.org/drm/amd/-/issues/3647
|
||||||
# https://gitlab.freedesktop.org/drm/amd/-/issues/3647
|
"amdgpu.dcdebugmask=0x10"
|
||||||
"amdgpu.dcdebugmask=0x10"
|
]
|
||||||
]
|
# Workaround for SuspendThenHibernate: https://lore.kernel.org/linux-kernel/20231106162310.85711-1-mario.limonciello@amd.com/
|
||||||
# Workaround for SuspendThenHibernate: https://lore.kernel.org/linux-kernel/20231106162310.85711-1-mario.limonciello@amd.com/
|
++ lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") [
|
||||||
++ lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") [
|
"rtc_cmos.use_acpi_alarm=1"
|
||||||
"rtc_cmos.use_acpi_alarm=1"
|
];
|
||||||
];
|
|
||||||
|
|
||||||
# AMD has better battery life with PPD over TLP:
|
|
||||||
# https://community.frame.work/t/responded-amd-7040-sleep-states/38101/13
|
|
||||||
services.power-profiles-daemon.enable = lib.mkDefault true;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,16 +9,15 @@
|
||||||
../../../common/cpu/intel
|
../../../common/cpu/intel
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelParams =
|
boot.kernelParams = [
|
||||||
[
|
# For Power consumption
|
||||||
# For Power consumption
|
# https://community.frame.work/t/linux-battery-life-tuning/6665/156
|
||||||
# https://community.frame.work/t/linux-battery-life-tuning/6665/156
|
"nvme.noacpi=1"
|
||||||
"nvme.noacpi=1"
|
]
|
||||||
]
|
# Fixes a regression in s2idle, making it more power efficient than deep sleep
|
||||||
# Fixes a regression in s2idle, making it more power efficient than deep sleep
|
# Update 04/2024: It appears that s2idle-regression got fixed in newer kernel-versions (SebTM)
|
||||||
# Update 04/2024: It appears that s2idle-regression got fixed in newer kernel-versions (SebTM)
|
# (see: https://github.com/NixOS/nixos-hardware/pull/903#discussion_r1556096657)
|
||||||
# (see: https://github.com/NixOS/nixos-hardware/pull/903#discussion_r1556096657)
|
++ lib.lists.optional (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") "acpi_osi=\"!Windows 2020\"";
|
||||||
++ lib.lists.optional (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") "acpi_osi=\"!Windows 2020\"";
|
|
||||||
|
|
||||||
# Requires at least 5.16 for working wi-fi and bluetooth.
|
# Requires at least 5.16 for working wi-fi and bluetooth.
|
||||||
# https://community.frame.work/t/using-the-ax210-with-linux-on-the-framework-laptop/1844/89
|
# https://community.frame.work/t/using-the-ax210-with-linux-on-the-framework-laptop/1844/89
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,13 @@
|
||||||
|
|
||||||
## Updating Firmware
|
## Updating Firmware
|
||||||
|
|
||||||
First put enable `fwupd`
|
Everything is updateable through fwupd, so it's enabled by default.
|
||||||
|
|
||||||
```nix
|
To get the latest firmware, run:
|
||||||
services.fwupd.enable = true;
|
|
||||||
```
|
|
||||||
|
|
||||||
Then run
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
$ fwupdmgr update
|
$ fwupdmgr refresh
|
||||||
|
$ fwupdmgr update
|
||||||
```
|
```
|
||||||
|
|
||||||
|
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.MTL.BIOS.firmware)
|
||||||
|
|
|
||||||
|
|
@ -11,34 +11,15 @@
|
||||||
../common/intel.nix
|
../common/intel.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
|
||||||
# Need at least 6.9 to make suspend properly
|
# Need at least 6.9 to make suspend properly
|
||||||
# Specifically this patch: https://github.com/torvalds/linux/commit/073237281a508ac80ec025872ad7de50cfb5a28a
|
# Specifically this patch: https://github.com/torvalds/linux/commit/073237281a508ac80ec025872ad7de50cfb5a28a
|
||||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.9") (
|
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.9") (
|
||||||
lib.mkDefault pkgs.linuxPackages_latest
|
lib.mkDefault pkgs.linuxPackages_latest
|
||||||
);
|
);
|
||||||
|
|
||||||
# Intel NPU Driver
|
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||||
# https://discourse.nixos.org/t/new-installation-on-asus-zenbook-ux5406-intel-vpu-firmware-error-2/58732/2
|
lib.mkDefault "alsa_output.pci-0000_00_1f.3.analog-stereo";
|
||||||
hardware.firmware = lib.optionals (config.hardware.enableRedistributableFirmware) [
|
|
||||||
(
|
|
||||||
let
|
|
||||||
model = "37xx";
|
|
||||||
version = "0.0";
|
|
||||||
|
|
||||||
firmware = pkgs.fetchurl {
|
|
||||||
url = "https://github.com/intel/linux-npu-driver/raw/v1.13.0/firmware/bin/vpu_${model}_v${version}.bin";
|
|
||||||
hash = "sha256-Mpoeq8HrwChjtHALsss/7QsFtDYAoFNsnhllU0xp3os=";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
pkgs.runCommand "intel-vpu-firmware-${model}-${version}" { } ''
|
|
||||||
mkdir -p "$out/lib/firmware/intel/vpu"
|
|
||||||
cp '${firmware}' "$out/lib/firmware/intel/vpu/vpu_${model}_v${version}.bin"
|
|
||||||
''
|
|
||||||
)
|
|
||||||
];
|
|
||||||
|
|
||||||
warnings = lib.mkIf (!config.hardware.enableRedistributableFirmware) [
|
|
||||||
''For Intel NPU support, set the option: hardware.enableRedistributableFirmware = true;''
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,14 @@
|
||||||
# [Framework Laptop 16](https://frame.work/)
|
# [Framework Laptop 16](https://frame.work/)
|
||||||
|
|
||||||
## Updating Firmware
|
## 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
|
../../../common/cpu/amd/raphael/igpu.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
25
framework/16-inch/amd-ai-300-series/README.md
Normal file
25
framework/16-inch/amd-ai-300-series/README.md
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
# [Framework Laptop 16 AMD AI 300 Series](https://frame.work/)
|
||||||
|
|
||||||
|
## nvidia
|
||||||
|
|
||||||
|
If you have an nvidia dGPU module, you can enable it via the nvidia open drivers:
|
||||||
|
|
||||||
|
```
|
||||||
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
hardware.nvidia.open = true; # see the note above
|
||||||
|
```
|
||||||
|
|
||||||
|
See also [NVIDIA](https://wiki.nixos.org/wiki/NVIDIA) on the NixOS Wiki.
|
||||||
|
|
||||||
|
## Updating Firmware
|
||||||
|
|
||||||
|
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.RyzenAI300.BIOS.firmware)
|
||||||
21
framework/16-inch/amd-ai-300-series/default.nix
Normal file
21
framework/16-inch/amd-ai-300-series/default.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common
|
||||||
|
../common/amd.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# 6.14 is the minimum recommended kernel, 6.15 has many useful changes, too
|
||||||
|
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.15") (
|
||||||
|
lib.mkDefault pkgs.linuxPackages_latest
|
||||||
|
);
|
||||||
|
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
}
|
||||||
|
|
@ -6,21 +6,16 @@
|
||||||
../../../common/gpu/amd
|
../../../common/gpu/amd
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelParams =
|
boot.kernelParams = [
|
||||||
[
|
# There seems to be an issue with panel self-refresh (PSR) that
|
||||||
# There seems to be an issue with panel self-refresh (PSR) that
|
# causes hangs for users.
|
||||||
# causes hangs for users.
|
#
|
||||||
#
|
# https://community.frame.work/t/fedora-kde-becomes-suddenly-slow/58459
|
||||||
# https://community.frame.work/t/fedora-kde-becomes-suddenly-slow/58459
|
# https://gitlab.freedesktop.org/drm/amd/-/issues/3647
|
||||||
# https://gitlab.freedesktop.org/drm/amd/-/issues/3647
|
"amdgpu.dcdebugmask=0x10"
|
||||||
"amdgpu.dcdebugmask=0x10"
|
]
|
||||||
]
|
# Workaround for SuspendThenHibernate: https://lore.kernel.org/linux-kernel/20231106162310.85711-1-mario.limonciello@amd.com/
|
||||||
# Workaround for SuspendThenHibernate: https://lore.kernel.org/linux-kernel/20231106162310.85711-1-mario.limonciello@amd.com/
|
++ lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") [
|
||||||
++ lib.optionals (lib.versionOlder config.boot.kernelPackages.kernel.version "6.8") [
|
"rtc_cmos.use_acpi_alarm=1"
|
||||||
"rtc_cmos.use_acpi_alarm=1"
|
];
|
||||||
];
|
|
||||||
|
|
||||||
# AMD has better battery life with PPD over TLP:
|
|
||||||
# https://community.frame.work/t/responded-amd-7040-sleep-states/38101/13
|
|
||||||
services.power-profiles-daemon.enable = lib.mkDefault true;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,12 +8,6 @@
|
||||||
../../framework-tool.nix
|
../../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
|
# For fingerprint support
|
||||||
services.fprintd.enable = lib.mkDefault true;
|
services.fprintd.enable = lib.mkDefault true;
|
||||||
|
|
||||||
|
|
@ -50,4 +44,7 @@
|
||||||
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
||||||
AttrKeyboardIntegration=internal
|
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
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
@ -1,56 +1,35 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
|
||||||
kernel_version_compatible = lib.versionAtLeast config.boot.kernelPackages.kernel.version "6.10";
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
options.hardware.framework.enableKmod =
|
options.hardware.framework.enableKmod =
|
||||||
(lib.mkEnableOption "Enable the community created Framework kernel module that allows interacting with the embedded controller from sysfs.")
|
(lib.mkEnableOption "the community-created Framework kernel module that allows interacting with the embedded controller from sysfs.")
|
||||||
// {
|
// {
|
||||||
# enable by default on NixOS >= 24.05 and kernel >= 6.10
|
# enable by default on NixOS >= 24.05 and kernel >= 6.10
|
||||||
default = lib.and (lib.versionAtLeast (lib.versions.majorMinor lib.version) "24.05") kernel_version_compatible;
|
default = lib.versionAtLeast config.boot.kernelPackages.kernel.version "6.10";
|
||||||
defaultText = "enabled by default on NixOS >= 24.05 and kernel >= 6.10";
|
defaultText = "enabled by default if kernel >= 6.10";
|
||||||
};
|
};
|
||||||
|
|
||||||
config.boot = lib.mkIf config.hardware.framework.enableKmod {
|
config = lib.mkIf config.hardware.framework.enableKmod {
|
||||||
extraModulePackages = with config.boot.kernelPackages; [
|
assertions = [
|
||||||
framework-laptop-kmod
|
{
|
||||||
];
|
assertion = lib.versionAtLeast config.boot.kernelPackages.kernel.version "6.10";
|
||||||
|
message = "The framework laptop kernel module requires Linux 6.10 or above";
|
||||||
# https://github.com/DHowett/framework-laptop-kmod?tab=readme-ov-file#usage
|
|
||||||
kernelModules = [
|
|
||||||
"cros_ec"
|
|
||||||
"cros_ec_lpcs"
|
|
||||||
];
|
|
||||||
|
|
||||||
# add required patch if enabled on kernel <6.10
|
|
||||||
kernelPatches = lib.mkIf (!kernel_version_compatible) [
|
|
||||||
rec {
|
|
||||||
name = "platform/chrome: cros_ec_lpc: add support for AMD Framework Laptops";
|
|
||||||
msgid = "20240403004713.130365-1-dustin@howett.net";
|
|
||||||
version = "3";
|
|
||||||
hash = "sha256-aQSyys8CMzlj9EdNhg8vtp76fg1qEwUVeJL0E+8w5HU=";
|
|
||||||
patch =
|
|
||||||
pkgs.runCommandLocal "patch-${msgid}"
|
|
||||||
{
|
|
||||||
nativeBuildInputs = with pkgs; [
|
|
||||||
b4
|
|
||||||
git
|
|
||||||
cacert
|
|
||||||
];
|
|
||||||
SSL_CERT_FILE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt";
|
|
||||||
|
|
||||||
outputHash = hash;
|
|
||||||
}
|
|
||||||
''
|
|
||||||
export HOME="$TMP"
|
|
||||||
PYTHONHASHSEED=0 ${pkgs.b4}/bin/b4 -n am -C -T -v ${version} -o- "${msgid}" > "$out"
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
extraModulePackages = with config.boot.kernelPackages; [
|
||||||
|
framework-laptop-kmod
|
||||||
|
];
|
||||||
|
|
||||||
|
# https://github.com/DHowett/framework-laptop-kmod?tab=readme-ov-file#usage
|
||||||
|
kernelModules = [
|
||||||
|
"cros_ec"
|
||||||
|
"cros_ec_lpcs"
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
19
fydetab/duo/README.md
Normal file
19
fydetab/duo/README.md
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
# Fydetab Duo
|
||||||
|
|
||||||
|
The Fydetab Duo is an open source and hackable tablet by FydeOS.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- Display: **works**
|
||||||
|
- X11: **untested**
|
||||||
|
- Wayland: **not working** (niri, sway, COSMIC)
|
||||||
|
- GPU driver: **not working**
|
||||||
|
- WiFi: **working**
|
||||||
|
- Cellular: **untested**
|
||||||
|
- SD card: **untested**
|
||||||
|
- Sound: **untested**
|
||||||
|
- Fingerprint: **untested**
|
||||||
|
|
||||||
|
## Flashing
|
||||||
|
|
||||||
|
Flashing requires `rkdeveloptool` and using it to write the new bootloader and eMMC image. To flash, press and hold the mask rom button on the board. Ensure a USB C cable is already plugged into the host computer. Run `nix build .#nixosConfigurations.<hostname>.config.hardware.rockchip.platformFirmware` and then use `rkdeveloptool ul result/rk3588_spl_loader_v1.18.113.bin`. The NixOS image can then be downloaded using `rkdeveloptool wl 0`, it is recommended to use the disko image configuration which is provided.
|
||||||
43
fydetab/duo/ap6275p.nix
Normal file
43
fydetab/duo/ap6275p.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (_finalAttrs: {
|
||||||
|
pname = "ap6275p-firmware";
|
||||||
|
version = "2023-11-05";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Joshua-Riek";
|
||||||
|
repo = "firmware";
|
||||||
|
rev = "621ac45f5d931522bc08b51b995b938778973d2a";
|
||||||
|
hash = "sha256-ksAOxZTnEka9SirHYxroLMbKi+99FY72X2z1pJhgYnY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
compressFirmware = false;
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/lib/firmware/ap6275p
|
||||||
|
install -m644 ap6275p/BCM4362A2.hcd $out/lib/firmware/ap6275p/
|
||||||
|
install -m644 ap6275p/clm_bcm43752a2_pcie_ag.blob $out/lib/firmware/ap6275p/
|
||||||
|
install -m644 ap6275p/fw_bcm43752a2_pcie_ag.bin $out/lib/firmware/ap6275p/
|
||||||
|
install -m644 ap6275p/nvram_AP6275P.txt $out/lib/firmware/ap6275p/
|
||||||
|
install -m644 ap6275p/config.txt $out/lib/firmware/ap6275p/
|
||||||
|
|
||||||
|
mv $out/lib/firmware/ap6275p/nvram_AP6275P.txt $out/lib/firmware/ap6275p/nvram_ap6275p.txt
|
||||||
|
mv $out/lib/firmware/ap6275p/config.txt $out/lib/firmware/ap6275p/config_bcm43752a2_pcie_ag.txt
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Firmware for the AP6275P WiFi/Bluetooth module";
|
||||||
|
homepage = "https://github.com/Joshua-Riek/firmware";
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
};
|
||||||
|
})
|
||||||
44
fydetab/duo/brcm-patchram.nix
Normal file
44
fydetab/duo/brcm-patchram.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchurl,
|
||||||
|
autoPatchelfHook,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (_finalAttrs: {
|
||||||
|
pname = "brcm-patchram-plus";
|
||||||
|
version = "2024-08-23";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/Linux-for-Fydetab-Duo/pkgbuilds/raw/fd5ebe4914f32c5a1c4fc15b4fb5a62bad2da1ea/fydetabduo-post-install/brcm_patchram_plus";
|
||||||
|
hash = "sha256-fZ1ximZcosZDYbveEkyMnasLWpcifaZ5CKz7QKtqKZQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
autoPatchelfHook
|
||||||
|
];
|
||||||
|
|
||||||
|
unpackPhase = ''
|
||||||
|
runHook preUnpack
|
||||||
|
cp --no-preserve=ownership,mode $src brcm_patchram_plus
|
||||||
|
chmod +x brcm_patchram_plus
|
||||||
|
runHook postUnpack
|
||||||
|
'';
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp brcm_patchram_plus $out/bin
|
||||||
|
autoPatchelf $out/bin/brcm_patchram_plus
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
mainProgram = "brcm_patchram_plus";
|
||||||
|
};
|
||||||
|
})
|
||||||
9549
fydetab/duo/config
Normal file
9549
fydetab/duo/config
Normal file
File diff suppressed because it is too large
Load diff
28
fydetab/duo/config.nix
Normal file
28
fydetab/duo/config.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
CONFIG_DEVTMPFS = "y";
|
||||||
|
CONFIG_CGROUPS = "y";
|
||||||
|
CONFIG_INOTIFY_USER = "y";
|
||||||
|
CONFIG_SIGNALFD = "y";
|
||||||
|
CONFIG_TIMERFD = "y";
|
||||||
|
CONFIG_EPOLL = "y";
|
||||||
|
CONFIG_SYSFS = "y";
|
||||||
|
CONFIG_PROC_FS = "y";
|
||||||
|
CONFIG_FHANDLE = "y";
|
||||||
|
CONFIG_CRYPTO_USER_API_HASH = "y";
|
||||||
|
CONFIG_CRYPTO_HMAC = "y";
|
||||||
|
CONFIG_CRYPTO_SHA256 = "y";
|
||||||
|
CONFIG_DMIID = "y";
|
||||||
|
CONFIG_AUTOFS_FS = "y";
|
||||||
|
CONFIG_TMPFS_POSIX_ACL = "y";
|
||||||
|
CONFIG_TMPFS_XATTR = "y";
|
||||||
|
CONFIG_SECCOMP = "y";
|
||||||
|
CONFIG_TMPFS = "y";
|
||||||
|
CONFIG_BLK_DEV_INITRD = "y";
|
||||||
|
CONFIG_EFI_STUB = "y";
|
||||||
|
CONFIG_MODULES = "y";
|
||||||
|
CONFIG_BINFMT_ELF = "y";
|
||||||
|
CONFIG_UNIX = "y";
|
||||||
|
CONFIG_NET = "y";
|
||||||
|
CONFIG_IP_NF_MATCH_RPFILTER = "m";
|
||||||
|
CONFIG_ATA_PIIX = "m";
|
||||||
|
}
|
||||||
141
fydetab/duo/default.nix
Normal file
141
fydetab/duo/default.nix
Normal file
|
|
@ -0,0 +1,141 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
ap6275pFirmware = pkgs.callPackage ./ap6275p.nix { };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../rockchip
|
||||||
|
];
|
||||||
|
|
||||||
|
options.hardware.fydetab.duo = {
|
||||||
|
enablePanthor = lib.mkEnableOption "Panthor GPU driver";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = {
|
||||||
|
boot = lib.mkMerge [
|
||||||
|
{
|
||||||
|
initrd.includeDefaultModules = false;
|
||||||
|
kernelPackages = pkgs.callPackage ./kernel.nix { };
|
||||||
|
extraModprobeConfig = ''
|
||||||
|
options bcmdhd firmware_path=${ap6275pFirmware}/lib/firmware/ap6275p/fw_bcm43752a2_pcie_ag.bin nvram_path=${ap6275pFirmware}/lib/firmware/ap6275p/nvram_AP6275P.txt conf_path=${ap6275pFirmware}/lib/firmware/ap6275p/config.txt
|
||||||
|
'';
|
||||||
|
kernelParams = [
|
||||||
|
"console=ttyFIQ0"
|
||||||
|
"console=tty1"
|
||||||
|
"console=both"
|
||||||
|
"earlycon=uart8250,mmio32,0xfeb50000"
|
||||||
|
];
|
||||||
|
kernelModules = [
|
||||||
|
"himax_tp"
|
||||||
|
"mh248-fyde"
|
||||||
|
"hci_uart"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(lib.mkIf config.hardware.bluetooth.enable {
|
||||||
|
kernelModules = [
|
||||||
|
"bluetooth"
|
||||||
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware = lib.mkMerge [
|
||||||
|
{
|
||||||
|
deviceTree = lib.mkMerge [
|
||||||
|
{
|
||||||
|
name = "rockchip/rk3588s-fydetab-duo.dtb";
|
||||||
|
}
|
||||||
|
(lib.mkIf config.hardware.fydetab.duo.enablePanthor {
|
||||||
|
overlays = [
|
||||||
|
{
|
||||||
|
name = "fydetab-panthor-gpu";
|
||||||
|
dtsText = ''
|
||||||
|
/dts-v1/;
|
||||||
|
/plugin/;
|
||||||
|
|
||||||
|
#include <dt-bindings/clock/rk3588-cru.h>
|
||||||
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||||
|
#include <dt-bindings/power/rk3588-power.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "rockchip,rk3588s-tablet-12c-linux";
|
||||||
|
fragment@0 {
|
||||||
|
target = <&gpu>;
|
||||||
|
__overlay__ {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fragment@1 {
|
||||||
|
target = <&gpu_panthor>;
|
||||||
|
__overlay__ {
|
||||||
|
status = "okay";
|
||||||
|
mali-supply = <&vdd_gpu_s0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
rockchip = {
|
||||||
|
rk3588.enable = true;
|
||||||
|
platformFirmware = pkgs.callPackage ./u-boot.nix { };
|
||||||
|
};
|
||||||
|
}
|
||||||
|
(lib.mkIf config.networking.wireless.iwd.enable {
|
||||||
|
firmware = [
|
||||||
|
# Only iwd is supported by the interface
|
||||||
|
ap6275pFirmware
|
||||||
|
];
|
||||||
|
})
|
||||||
|
(lib.mkIf config.hardware.graphics.enable {
|
||||||
|
firmware = [
|
||||||
|
(pkgs.callPackage ./mali-g610.nix { })
|
||||||
|
];
|
||||||
|
})
|
||||||
|
(lib.mkIf config.hardware.sensor.iio.enable {
|
||||||
|
firmware = [
|
||||||
|
(pkgs.callPackage ./himax.nix { })
|
||||||
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.services.bluetooth-fydetab = lib.mkIf config.hardware.bluetooth.enable {
|
||||||
|
description = "FydeTab Duo Bluetooth fix";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig.Type = "simple";
|
||||||
|
script = ''
|
||||||
|
${lib.getExe' pkgs.util-linux "rfkill"} block 0
|
||||||
|
${lib.getExe' pkgs.util-linux "rfkill"} block bluetooth
|
||||||
|
sleep 2
|
||||||
|
${lib.getExe' pkgs.util-linux "rfkill"} unblock 0
|
||||||
|
${lib.getExe' pkgs.util-linux "rfkill"} unblock bluetooth
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
${
|
||||||
|
lib.getExe (pkgs.callPackage ./brcm-patchram.nix { })
|
||||||
|
} --enable_hci --no2bytes --use_baudrate_for_download --tosleep 200000 --baudrate 1500000 --patchram ${ap6275pFirmware}/lib/firmware/ap6275p/BCM4362A2.hcd /dev/ttyS9
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
services.udev = {
|
||||||
|
extraHwdb = ''
|
||||||
|
# Fydetab
|
||||||
|
evdev:input:b0018v0000p0000e0000*
|
||||||
|
EVDEV_ABS_00=::265
|
||||||
|
EVDEV_ABS_01=::166
|
||||||
|
'';
|
||||||
|
extraRules = ''
|
||||||
|
SUBSYSTEM=="iio" ATTR{name}=="lis2dw12" ENV{ACCEL_MOUNT_MATRIX}="1,0,0;0,-1,0;0,0,1"
|
||||||
|
SUBSYSTEM=="input", ENV{ID_INPUT_TABLET}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1 0 0 1"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
35
fydetab/duo/himax.nix
Normal file
35
fydetab/duo/himax.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
fetchurl,
|
||||||
|
lib,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (_finalAttrs: {
|
||||||
|
pname = "himax-firmware";
|
||||||
|
version = "2024-11-09";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/Linux-for-Fydetab-Duo/pkgbuilds/raw/f4c012bd42d87f677370f987f703982d53cd233d/fydetabduo-post-install/Himax_firmware.bin";
|
||||||
|
hash = "sha256-z0p/zXcNTBdhKCV6GmM2C8C02lu4Wkb2HP+Ir/nQJTc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
compressFirmware = false;
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/lib/firmware
|
||||||
|
cp --no-preserve=ownership,mode $src $out/lib/firmware/Himax_firmware.bin
|
||||||
|
ls -ahl $out/lib/firmware
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Himax sensor firmware";
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
};
|
||||||
|
})
|
||||||
18
fydetab/duo/kernel.nix
Normal file
18
fydetab/duo/kernel.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
linuxPackagesFor,
|
||||||
|
linuxManualConfig,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
linuxPackagesFor (linuxManualConfig rec {
|
||||||
|
version = "6.1.75";
|
||||||
|
modDirVersion = version;
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Linux-for-Fydetab-Duo";
|
||||||
|
repo = "linux-rockchip";
|
||||||
|
rev = "74a1657bc526e336ff66add2fa83a0522957c4cb";
|
||||||
|
hash = "sha256-Q0uCxebYw3c5Z/ZxCmTNyEfuYQQcPaw5qpvRTSWdtVo=";
|
||||||
|
};
|
||||||
|
configfile = ./config;
|
||||||
|
config = import ./config.nix;
|
||||||
|
features.netfilterRPFilter = true;
|
||||||
|
})
|
||||||
35
fydetab/duo/mali-g610.nix
Normal file
35
fydetab/duo/mali-g610.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
fetchurl,
|
||||||
|
lib,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (_finalAttrs: {
|
||||||
|
pname = "mali-g610-firmware";
|
||||||
|
version = "2024-08-23";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/Linux-for-Fydetab-Duo/pkgbuilds/raw/f4c012bd42d87f677370f987f703982d53cd233d/mali-G610-firmware-rkr4/mali_csffw.bin";
|
||||||
|
hash = "sha256-Ei8ezBTS3g/pP8Al+Md+RTGr0AT6Fy/+aeQM19FdXGY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
compressFirmware = false;
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/lib/firmware
|
||||||
|
cp --no-preserve=ownership,mode $src $out/lib/firmware/mali_csffw.bin
|
||||||
|
ls -ahl $out/lib/firmware
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Mali G610 firmware for Rockchip RK3588(S) using the rkr4 kernel or later";
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
};
|
||||||
|
})
|
||||||
99
fydetab/duo/u-boot.nix
Normal file
99
fydetab/duo/u-boot.nix
Normal file
|
|
@ -0,0 +1,99 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
buildUBoot,
|
||||||
|
armTrustedFirmwareRK3588,
|
||||||
|
rkbin,
|
||||||
|
fetchpatch,
|
||||||
|
fetchurl,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
buildUBoot {
|
||||||
|
defconfig = "rk3588s_fydetab_duo_defconfig";
|
||||||
|
extraMeta.platforms = [ "aarch64-linux" ];
|
||||||
|
BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
|
||||||
|
ROCKCHIP_TPL = rkbin.TPL_RK3588;
|
||||||
|
CROSS_COMPILE_ARM64 = "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}";
|
||||||
|
INI_LOADER = fetchurl {
|
||||||
|
url = "https://github.com/rockchip-linux/rkbin/raw/${rkbin.src.rev}/RKBOOT/RK3588MINIALL.ini";
|
||||||
|
hash = "sha256-87Vt6nXVt+jRrRatOlwGJXYqSj9nJz1LUfQnviIVb7I=";
|
||||||
|
};
|
||||||
|
version = "5.10.0";
|
||||||
|
filesToInstall = [
|
||||||
|
"idbloader.img"
|
||||||
|
"u-boot.itb"
|
||||||
|
"rk3588_spl_loader_v1.18.113.bin"
|
||||||
|
"tools/resource_tool"
|
||||||
|
];
|
||||||
|
NIX_CFLAGS_COMPILE = "-Wno-error=enum-int-mismatch -Wno-error=maybe-uninitialized";
|
||||||
|
extraMakeFlags = [
|
||||||
|
"CROSS_COMPILE_ARM64=${stdenv.cc.targetPrefix}"
|
||||||
|
];
|
||||||
|
extraPatches =
|
||||||
|
lib.attrValues (
|
||||||
|
lib.mapAttrs
|
||||||
|
(
|
||||||
|
name: hash:
|
||||||
|
fetchpatch {
|
||||||
|
url = "https://github.com/openFyde/overlay-fydetab_duo-openfyde/raw/fd84c5302908dea6a819c2dcd025a2bf93b5d4e8/sys-boot/rk-uboot/files/rk8/${name}";
|
||||||
|
inherit hash;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
{
|
||||||
|
"001-add-avdd-avee-in-rockchip_panel.patch" = "sha256-qmBdmSejcDn4ulvOTLjfBsNh6nl12sbobtX4mhTMMKY=";
|
||||||
|
"002-add-fydetab-support.patch" = "sha256-QlnhdkoOQcGxRiIOx1jNqDLb/abB/+l+hAQ8vKCpwOw=";
|
||||||
|
"003-match-display-config-with-kernel.patch" =
|
||||||
|
"sha256-hmICiAgYjjBryJIuNXOffiYTssKSaV1cDeSgRTdq51k=";
|
||||||
|
"004-enable-sdcard-for-fydetab.patch" = "sha256-xrZ1kuije6X+huvarDIGFhMy2Puq0XvlKa1ZfgGcwlQ=";
|
||||||
|
"005-display-logo-on-loader-mode.patch" = "sha256-NMQHJMl8s1NUrDSnUX8gAmSNaurBU+m0xKd4TtEPmz4=";
|
||||||
|
"006-update-deconfig.patch" = "sha256-ZukJEZjEFaN6F4+3VnHfkfdaOTQmkw3fdClk8OeOYRw=";
|
||||||
|
"007-add-deinit-after-show-bmp-add-ums-mode.patch" =
|
||||||
|
"sha256-4pHV+qiXMNHcIlC1ciFQsejVZvdnEhfs7QBbge9kHoM=";
|
||||||
|
"008-add-charging-mode.patch" = "sha256-AToALdx5mwyQ875ZnrpqbuUE9oGonH76RaUq6757U1E=";
|
||||||
|
"009-set-lowpower-to-3.patch" = "sha256-CYYmY8vQcOIiA3QPvZt+AgI/BbkykoKGqLECim7kAyw=";
|
||||||
|
"010-fix-compiling-issue.patch" = "sha256-hmiFFe0JuxXMPgeQFWI8qZop+VPmldxgs0Wowchswbs=";
|
||||||
|
"011-fix-battery-temp.patch" = "sha256-MXe5FGzGETZ3wpW7ur5rBLysdNlDMwiq7/LNxdDpA0E=";
|
||||||
|
"012-fix-make.patch" = "sha256-/8ZfhB04R4zIddOXJEx8GcnYoljYsGolbt/oQYsm/Xk=";
|
||||||
|
"013-change-exit-charge-level.patch" = "sha256-84zy5yzoHyAutVmbCvvB5t4uJFQGsMt3jTUgVs5SIog=";
|
||||||
|
"014-fix-spl-sdcard-issue.patch" = "sha256-jIHybAm9XKDbWF3xG4E9K8x2j5nfpHOp6/2gWDlQ6aU=";
|
||||||
|
}
|
||||||
|
)
|
||||||
|
++ [
|
||||||
|
./uboot-remove-sig-req.patch
|
||||||
|
];
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "rockchip-linux";
|
||||||
|
repo = "u-boot";
|
||||||
|
rev = "63c55618fbdc36333db4cf12f7d6a28f0a178017";
|
||||||
|
hash = "sha256-OZmR6BLwCMK6lq9qmetIdrjSJJWcx7Po1OE9dBWL+Ew=";
|
||||||
|
};
|
||||||
|
extraConfig = ''
|
||||||
|
CONFIG_FIT_SIGNATURE=n
|
||||||
|
CONFIG_TPL_BUILD=y
|
||||||
|
CONFIG_SPL_FIT_SIGNATURE=n
|
||||||
|
CONFIG_SPL_FIT_ROLLBACK_PROTECT=n
|
||||||
|
CONFIG_CMD_FDT=y
|
||||||
|
CONFIG_DEFAULT_FDT_FILE="rk3588s-fydetab-duo.dtb"
|
||||||
|
CONFIG_CMD_PXE=y
|
||||||
|
'';
|
||||||
|
preBuild = ''
|
||||||
|
patchShebangs arch/arm/mach-rockchip/make_fit_atf.sh
|
||||||
|
patchShebangs arch/arm/mach-rockchip/decode_bl31.py
|
||||||
|
|
||||||
|
# Needs write access to generate the spl
|
||||||
|
cp -r ${rkbin.src} rkbin
|
||||||
|
chmod -R u+rw rkbin
|
||||||
|
|
||||||
|
export RKBIN_TOOLS=$(readlink -e rkbin/tools)
|
||||||
|
ln -s ${rkbin}/bin bin
|
||||||
|
|
||||||
|
cp ${rkbin.src}/tools/boot_merger tools/
|
||||||
|
cp ${rkbin.src}/tools/mkimage tools/
|
||||||
|
'';
|
||||||
|
postBuild = ''
|
||||||
|
sh ./make.sh --spl
|
||||||
|
sh ./make.sh --idblock
|
||||||
|
sh ./make.sh itb
|
||||||
|
mv idblock.bin idbloader.img
|
||||||
|
'';
|
||||||
|
}
|
||||||
11
fydetab/duo/uboot-remove-sig-req.patch
Normal file
11
fydetab/duo/uboot-remove-sig-req.patch
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
--- a/tools/Makefile 2025-08-17 22:31:27.653078358 -0700
|
||||||
|
+++ b/tools/Makefile 2025-08-17 22:30:09.551827481 -0700
|
||||||
|
@@ -54,7 +54,7 @@
|
||||||
|
hostprogs-y += mkenvimage
|
||||||
|
mkenvimage-objs := mkenvimage.o os_support.o lib/crc32.o
|
||||||
|
|
||||||
|
-hostprogs-y += dumpimage mkimage
|
||||||
|
+hostprogs-$(CONFIG_FIT_SIGNATURE) += dumpimage mkimage
|
||||||
|
hostprogs-$(CONFIG_FIT_SIGNATURE) += fit_info fit_check_sign
|
||||||
|
|
||||||
|
# Rockchip pack tools
|
||||||
|
|
@ -10,11 +10,6 @@
|
||||||
"video=eDP-1:panel_orientation=right_side_up"
|
"video=eDP-1:panel_orientation=right_side_up"
|
||||||
];
|
];
|
||||||
|
|
||||||
services.tlp.enable = lib.mkDefault (
|
|
||||||
(lib.versionOlder (lib.versions.majorMinor lib.version) "21.05")
|
|
||||||
|| !config.services.power-profiles-daemon.enable
|
|
||||||
);
|
|
||||||
|
|
||||||
# Required for grub to properly display the boot menu.
|
# Required for grub to properly display the boot menu.
|
||||||
boot.loader.grub.gfxmodeEfi = lib.mkDefault "720x1280x32";
|
boot.loader.grub.gfxmodeEfi = lib.mkDefault "720x1280x32";
|
||||||
|
|
||||||
|
|
|
||||||
14
hp/probook/460G11/default.nix
Normal file
14
hp/probook/460G11/default.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../common/cpu/intel/meteor-lake
|
||||||
|
../../../common/pc
|
||||||
|
../../../common/pc/laptop
|
||||||
|
../../../common/pc/ssd
|
||||||
|
];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
services.thermald.enable = lib.mkDefault true;
|
||||||
|
};
|
||||||
|
}
|
||||||
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;
|
||||||
|
}
|
||||||
|
|
@ -36,7 +36,7 @@ in
|
||||||
|
|
||||||
nixpkgs.overlays = [ (import ./overlay.nix) ];
|
nixpkgs.overlays = [ (import ./overlay.nix) ];
|
||||||
|
|
||||||
nixpkgs.hostPlatform = "armv7l-linux";
|
nixpkgs.hostPlatform.system = "armv7l-linux";
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "ahci_mvebu" ];
|
boot.initrd.availableKernelModules = [ "ahci_mvebu" ];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,10 @@
|
||||||
# See https://wiki.archlinux.org/title/Dell_XPS_16_(9640)#Random_freezes
|
# See https://wiki.archlinux.org/title/Dell_XPS_16_(9640)#Random_freezes
|
||||||
"iommu.strict=1"
|
"iommu.strict=1"
|
||||||
"iommu.passthrough=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=\"\""
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,4 @@
|
||||||
|
|
||||||
# Cooling management
|
# Cooling management
|
||||||
services.thermald.enable = lib.mkDefault true;
|
services.thermald.enable = lib.mkDefault true;
|
||||||
|
|
||||||
# tlp defaults to "powersave", which doesn't exist on this laptop
|
|
||||||
services.tlp.settings = {
|
|
||||||
CPU_SCALING_GOVERNOR_ON_BAT = "schedutil";
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,11 @@
|
||||||
# remove all packages for amd igpu. I only removed amdgpu from
|
# remove all packages for amd igpu. I only removed amdgpu from
|
||||||
# services.xserver.videoDrivers by overriding. This is because the specialization
|
# services.xserver.videoDrivers by overriding. This is because the specialization
|
||||||
# of nix cannot implement such an operation as canceling an import.
|
# of nix cannot implement such an operation as canceling an import.
|
||||||
hardware =
|
hardware = {
|
||||||
{
|
nvidia.prime.offload.enable = false;
|
||||||
nvidia.prime.offload.enable = false;
|
}
|
||||||
}
|
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
||||||
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
||||||
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
amdgpu.opencl.enable = lib.mkDefault false;
|
||||||
amdgpu.opencl.enable = lib.mkDefault false;
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
# This file was obtained from the display while "DDG" mode was enabled.
|
# This file was obtained from the display while "DDG" mode was enabled.
|
||||||
chip_edid = pkgs.runCommandNoCC "chip_edid" { } ''
|
chip_edid = pkgs.runCommand "chip_edid" { } ''
|
||||||
mkdir -p $out/lib/firmware/edid
|
mkdir -p $out/lib/firmware/edid
|
||||||
cp ${./16ach6h.bin} $out/lib/firmware/edid/16ach6h.bin
|
cp ${./16ach6h.bin} $out/lib/firmware/edid/16ach6h.bin
|
||||||
'';
|
'';
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,11 @@
|
||||||
# remove all packages for amd igpu. I only removed amdgpu from
|
# remove all packages for amd igpu. I only removed amdgpu from
|
||||||
# services.xserver.videoDrivers by overriding. This is because the specialization
|
# services.xserver.videoDrivers by overriding. This is because the specialization
|
||||||
# of nix cannot implement such an operation as canceling an import.
|
# of nix cannot implement such an operation as canceling an import.
|
||||||
hardware =
|
hardware = {
|
||||||
{
|
nvidia.prime.offload.enable = false;
|
||||||
nvidia.prime.offload.enable = false;
|
}
|
||||||
}
|
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
||||||
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
||||||
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
amdgpu.opencl.enable = lib.mkDefault false;
|
||||||
amdgpu.opencl.enable = lib.mkDefault false;
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,11 @@
|
||||||
{
|
{
|
||||||
imports = [ ../hybrid ];
|
imports = [ ../hybrid ];
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
hardware =
|
hardware = {
|
||||||
{
|
nvidia.prime.offload.enable = false;
|
||||||
nvidia.prime.offload.enable = false;
|
}
|
||||||
}
|
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
||||||
// lib.optionalAttrs (options ? amdgpu.opencl.enable) {
|
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
||||||
# introduced in https://github.com/NixOS/nixpkgs/pull/319865
|
amdgpu.opencl.enable = lib.mkDefault false;
|
||||||
amdgpu.opencl.enable = lib.mkDefault false;
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,4 @@
|
||||||
|
|
||||||
# Avoid issues with modesetting causing blank screen
|
# Avoid issues with modesetting causing blank screen
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
|
||||||
# AMD has better battery life with PPD over TLP:
|
|
||||||
# https://community.frame.work/t/responded-amd-7040-sleep-states/38101/13
|
|
||||||
services.power-profiles-daemon.enable = lib.mkDefault true;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,10 @@
|
||||||
|
|
||||||
# amdgpu.backlight=0 makes the backlight work
|
# amdgpu.backlight=0 makes the backlight work
|
||||||
# acpi_backlight=none allows the backlight save/load systemd service to work on older kernel versions
|
# acpi_backlight=none allows the backlight save/load systemd service to work on older kernel versions
|
||||||
boot.kernelParams =
|
boot.kernelParams = [
|
||||||
[ "amdgpu.backlight=0" ]
|
"amdgpu.backlight=0"
|
||||||
++ lib.optional (lib.versionOlder config.boot.kernelPackages.kernel.version "6.1.6") "acpi_backlight=none";
|
]
|
||||||
|
++ lib.optional (lib.versionOlder config.boot.kernelPackages.kernel.version "6.1.6") "acpi_backlight=none";
|
||||||
|
|
||||||
# For mainline support of rtw89 wireless networking
|
# For mainline support of rtw89 wireless networking
|
||||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "5.16") pkgs.linuxPackages_latest;
|
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "5.16") pkgs.linuxPackages_latest;
|
||||||
|
|
|
||||||
7
lenovo/thinkpad/p14s/intel/gen2/README
Normal file
7
lenovo/thinkpad/p14s/intel/gen2/README
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
# Lenovo ThinkPad P14s Intel Gen 2
|
||||||
|
|
||||||
|
Much of the extraneous settings are filled out using the [wiki](https://wiki.nixos.org/wiki/NVIDIA#Hybrid_graphics_with_PRIME), which gives guidance on how to determine the correct PCI bus IDs to assign, aswell as the note to include the `modesetting` driver in `services.xserver.videoDrivers`.
|
||||||
|
|
||||||
|
## BIOS Settings to adjust
|
||||||
|
|
||||||
|
For suspending to RAM to work, set Config -> Power -> Sleep State to "Linux S3" in EFI.
|
||||||
18
lenovo/thinkpad/p14s/intel/gen2/default.nix
Normal file
18
lenovo/thinkpad/p14s/intel/gen2/default.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../../../common/gpu/nvidia/prime.nix
|
||||||
|
../../../../../common/gpu/nvidia/turing
|
||||||
|
../../../../../common/cpu/intel/tiger-lake
|
||||||
|
../../../../../common/pc/laptop
|
||||||
|
../../../../../common/pc/ssd
|
||||||
|
../../../../../common/pc
|
||||||
|
../.
|
||||||
|
];
|
||||||
|
|
||||||
|
hardware.nvidia.prime = {
|
||||||
|
intelBusId = "PCI:0:2:0";
|
||||||
|
nvidiaBusId = "PCI:1:0:0";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.videoDrivers = [ "modesetting" ];
|
||||||
|
}
|
||||||
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
|
||||||
|
];
|
||||||
|
}
|
||||||
8
lenovo/thinkpad/t14/intel/gen1/default.nix
Normal file
8
lenovo/thinkpad/t14/intel/gen1/default.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../../../common/cpu/intel/comet-lake
|
||||||
|
|
||||||
|
../.
|
||||||
|
];
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue