diff --git a/hosts/hardware/FredOS-Macbook.nix b/hosts/hardware/FredOS-Macbook.nix index a045388..3518b0e 100644 --- a/hosts/hardware/FredOS-Macbook.nix +++ b/hosts/hardware/FredOS-Macbook.nix @@ -34,17 +34,10 @@ hardware.enableRedistributableFirmware = true; hardware.facetimehd.enable = true; - # Pin to the 6.12 LTS kernel: the out-of-tree broadcom_sta (Wi-Fi) and - # facetimehd (iSight) modules don't build against linuxPackages_latest - # (7.x) — broadcom-sta's wl_cfg80211 ops no longer match the cfg80211 API. - # 6.12 LTS is the newest kernel both modules compile against. Overrides - # common.nix's linuxPackages_latest. - boot.kernelPackages = lib.mkForce pkgs.linuxPackages_6_12; - # wait_prepare/wait_finish were removed from struct vb2_ops in Linux 6.8 nixpkgs.overlays = [ (final: prev: { - linuxPackages_6_12 = prev.linuxPackages_6_12.extend (lpFinal: lpPrev: { + linuxPackages_latest = prev.linuxPackages_latest.extend (lpFinal: lpPrev: { facetimehd = lpPrev.facetimehd.overrideAttrs (old: { postPatch = (old.postPatch or "") + '' sed -i '/\.wait_prepare[[:space:]]*=.*vb2_ops_wait_prepare/d' fthd_v4l2.c diff --git a/services/hardware-health.nix b/services/hardware-health.nix index 6d2d525..9ada84d 100644 --- a/services/hardware-health.nix +++ b/services/hardware-health.nix @@ -24,6 +24,13 @@ # ras-mc-ctl on PATH for manual inspection. environment.systemPackages = [ pkgs.rasdaemon ]; + # fwupd: lets us check whether Lenovo publishes a P700 BIOS/microcode + # update to LVFS that can be flashed in-place (UEFI capsule, applied on + # reboot). The dual-Xeon QPI fault is intermittent; a microcode bump may + # improve link tolerance. If LVFS has no payload for this 2014 board, + # this is harmless and can be removed. + services.fwupd.enable = true; + # Hardware watchdog: auto-reboot a hung box instead of a dead LAN. # systemd pets /dev/watchdog0 at half the runtime interval; if it stops # (hang), the chipset resets after RuntimeWatchdogSec.