Instead of using systemd oneshot services that have to be careful to not
toggle wakeups back on, use a udev rule to disable wakeups by device ID.
On a B550 Vision D, these do almost the same thing:
````
$ lspci -n | grep 1022:1483
00:01.1 0604: 1022:1483
00:01.2 0604: 1022:1483
00:03.1 0604: 1022:1483
$ cat /proc/acpi/wakeup
Device S-state Status Sysfs node
...
GPP0 S4 *disabled pci:0000:00:01.1
GPP8 S4 *disabled pci:0000:00:03.1
````
Two of the three devices with the PCI vendor/device ID specified by the
udev rule correspond to devices previously disabled via ACPI (if I
understand correctly disabling these via either /proc/acpi/wakeup or
udev device attribute has the same effect).
The third device is (like the other two) using the "pcieport" driver.
Using a device connected via that port as a wakeup device still works.
Refactors the kernel package to a generic one and adds support for the
lts kernel. Since nixpkgs' kernel packages provide the `kernelPatches`
override, utilizing that ensures that kernel updates are not delayed
too much due to having to PR them to nixos-hardware separately.
This comes at the expense of possible breakage when upstream updates
something that breaks the patches.
Because the T2 Linux project has a lot of patches which changes
periodically, including them in the repository directly is a maintenance
burden. Instead, this patch comes with an update script and JSON files
containing all of the patches to be downloaded (by fetchurl) and
applied.
The NixOS option to enable changing release versions will be added in
the next commit.
- Added `default.nix` file for Dell XPS 15-9530 configuration
- Imported necessary files for CPU, laptop, SSD, and fingerprint
- Enabled thermald service
- Configured iwlwifi module with power saving option
- Removed commented out code for `disable_11ax` option
- Added `default.nix` file for NVIDIA configuration in Dell XPS 15-9530
- Imported `default.nix` file from parent directory and NVIDIA prime configuration file
- Configured `hardware.nvidia.prime` with Bus IDs of Intel and NVIDIA GPUs
[dell/xps/15-9530/default.nix]
- Add a new file `dell/xps/15-9530/default.nix`
- Import the following files: `../../../common/cpu/intel`, `../../../common/pc/laptop`, `../../../common/pc/laptop/ssd`, and `./fingerprint`
- Enable thermald service
- Add configuration for iwlwifi module with `options iwlwifi power_save=1`
- Remove commented out code for `disable_11ax` option
[dell/xps/15-9530/nvidia/default.nix]
- Added a new file `default.nix` in the directory `dell/xps/15-9530/nvidia/`
- The file `default.nix` includes two imports: `../default.nix` and `../../../../common/gpu/nvidia/prime.nix`
- Added a configuration for `hardware.nvidia.prime` which includes the Bus IDs of the Intel and NVIDIA GPUs.
Co-authored-by: Felix Svensson <klowdo.fs@gmail.com>