1
0
Fork 0
mirror of https://github.com/NixOS/nixos-hardware synced 2024-11-01 08:39:41 +01:00
nixos-hardware/framework/README.md

2.3 KiB

NOTE: Structure changes from 2023-11-11

Please read the Deprecated Behaviour README to understand how some structural changes to the code might affect you!

Framework Laptops

Updating Firmware

First put enable fwupd

services.fwupd.enable = true;

Note

For Intel CPU's, even stable BIOS versions are currently marked as test versions in LVFS (the default remote fwupd uses to get firmware).

If you want to use these versions, you'll have to explicitly enable the lvfs-testing remote:

services.fwupd.extraRemotes = [ "lvfs-testing" ];
# Might be necessary once to make the update succeed
services.fwupd.uefiCapsuleSettings.DisableCapsuleUpdateOnDisk = true;

Caution

Before running the update, make sure you have a NixOS live ISO on a USB stick, because some firmware updates make your system unbootable.

Then run

 $ fwupdmgr update

If you cannot boot into your system after upgrading:

  1. Boot into the live USB
  2. Mount your system into /mnt
  3. Run
    sudo nixos-enter
    
  4. Run
    NIXOS_INSTALL_BOOTLOADER=1 /run/current-system/bin/switch-to-configuration boot
    

Common Modules

For the Framework 13 laptops, there are common configuration modules available under the 13-inch/common/ directory, including some modules specific to AMD- or Intel-based laptops. By preference, there will already be a specialised module for your model's configuration. Otherwise, it can be added alongside the existing modules.

Support Tools

fw-ectool

There is a fw-ectool package available in nixpkgs that provides some system configuration options via the EC. This ectool only works with the Intel-based Framework laptops at present, as the Framework EC for AMD-based mainboards is based on the Zephyr port of the ChromeOS EC, which involves a slightly changed communication interface.