/firmware-open

System76 Open Firmware

Primary LanguageObjective-C

System76 Open Firmware

An open source distribution of firmware utilizing coreboot, EDK2, and System76 firmware applications.

Supported models

These models are supported and will receive updates through the firmware manager:

  • addw2
  • bonw14
  • darp6
  • darp7
  • galp4
  • galp5
  • lemp9
  • lemp10
  • oryp6
  • oryp7

Other models may be in development or available without support, and can be seen in the models/ directory.

If the device becomes bricked it will require restoring the current firmware using an external programmer. See flashing for details.

Changelog

For a list of important changes please see the changelog.

Schematics

System76 customers may request board schematics by sending an email to firmware@system76.com with the subject line "Schematics for model", where model is the name of a directory in the models/ directory, such as darp6. Please include the serial number of your system for verification.

You may not share these without explicit permission from System76.

Dependencies

Install toolchain

./scripts/deps.sh

Load Rust environment (or optionally reboot)

source ~/.cargo/env

Build firmware, replace qemu with your model (look in the models directory for examples)

./scripts/build.sh qemu

Emulate firmware, only available after building the qemu model

./scripts/qemu.sh

Contents