mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-03 16:57:14 +08:00
framework: Enable fwupd by default
Users should keep their firmware (not just BIOS) up to date. Framework 13 Intel 11-13th Gen have some components that can't be updated with fwupd, so some BIOS versions are better to be installed through the EFI shell or Windows. Signed-off-by: Daniel Schaefer <dhs@frame.work>
This commit is contained in:
@@ -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)
|
||||||
|
|||||||
@@ -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,7 +10,11 @@
|
|||||||
../common
|
../common
|
||||||
../common/amd.nix
|
../common/amd.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
|
||||||
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||||
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
|
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
|
||||||
|
|
||||||
|
|||||||
@@ -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,6 +11,9 @@
|
|||||||
../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") (
|
||||||
|
|||||||
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,4 +50,7 @@
|
|||||||
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
||||||
AttrKeyboardIntegration=internal
|
AttrKeyboardIntegration=internal
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Everything is updateable through fwupd
|
||||||
|
services.fwupd.enable = true;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user