diff options
author | Tom Bereknyei <tomberek@gmail.com> | 2019-07-21 21:49:13 -0400 |
---|---|---|
committer | Tom Bereknyei <tom@rebelliondefense.com> | 2020-02-01 20:49:06 -0500 |
commit | 64afb7c12df56edf5070ddd1e92a21bf5d059fdf (patch) | |
tree | db17d6790c64fd02669d67d93046ccb73155e510 | |
parent | 814bd1a02422e7007fe469442c94f1ec54b065d6 (diff) |
Wifi fixed by removing iwlwifi-cc-a0-48.ucode
-rw-r--r-- | dell/xps/15-7590/README.wiki | 5 | ||||
-rw-r--r-- | dell/xps/15-7590/default.nix | 20 |
2 files changed, 24 insertions, 1 deletions
diff --git a/dell/xps/15-7590/README.wiki b/dell/xps/15-7590/README.wiki index b323b31..b583b19 100644 --- a/dell/xps/15-7590/README.wiki +++ b/dell/xps/15-7590/README.wiki @@ -22,7 +22,10 @@ These settings are needed both for booting the final install, and installer itse * ''Disable Intel hardware RAID and use AHCI instead.'' Intel doesn't seem to provide a working linux driver for this. (If you just have SSD it's pointless and just slows things down needlessly anyways.) === Wifi === -Wifi does not work with kernels older than 5.1 (firmware not present) or newer (https://bbs.archlinux.org/viewtopic.php?id=247705) +~~Wifi does not work with kernels older than 5.1 (firmware not present) or newer~~ (https://bbs.archlinux.org/viewtopic.php?id=247705) + +Update: The 48.ucode causes the Killer wifi card to crash. The iwlfwifi-cc-a0-46.ucode works perfectly. default.nix contains an overlay that removes the offending ucode from the linux-firmware bundle. + ``` # Use the systemd-boot EFI boot loader. boot.loader.systemd-boot.enable = true; diff --git a/dell/xps/15-7590/default.nix b/dell/xps/15-7590/default.nix index a3540e7..4a9030a 100644 --- a/dell/xps/15-7590/default.nix +++ b/dell/xps/15-7590/default.nix @@ -11,4 +11,24 @@ boot.kernelPackages = pkgs.linuxPackages_5_1; boot.loader.efi.canTouchEfiVariables = lib.mkDefault true; + # The 48.ucode causes the Killer wifi card to crash. + # The iwlfwifi-cc-a0-46.ucode works perfectly + nixpkgs.pkgs = import <nixpkgs> { + config.allowUnfree = true; + overlays = [ + (self: super: { + firmwareLinuxNonfree = super.firmwareLinuxNonfree.overrideAttrs (old: { + src = super.fetchgit{ + url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"; + rev = "bf13a71b18af229b4c900b321ef1f8443028ded8"; + sha256 = "1dcaqdqyffxiadx420pg20157wqidz0c0ca5mrgyfxgrbh6a4mdj"; + }; + postInstall = '' + rm $out/lib/firmware/iwlwifi-cc-a0-48.ucode + ''; + outputHash = "0dq48i1cr8f0qx3nyq50l9w9915vhgpwmwiw3b4yhisbc3afyay4"; + }); + }) + ]; + }; } |