Skip to content

SFrijters/nix-qemu-espressif

Repository files navigation

nix-qemu-espressif

GitHub CI GitLab CI

Packages a variant of the qemu package in nixpkgs with support for ESP32/ESP32C3 chips, using Espressif's fork of qemu. Current version: 9.2.2-20250817.

Exposed packages

  • qemu-espressif Supports both
    • ESP32 and ESP32S3 ("xtensa-softmmu") and
    • ESP32C3 ("riscv32-softmmu") chips. Note: nix run will run qemu-system-xtensa by default.
  • qemu-esp32 Supports only ESP32 / ESP32S3.
  • qemu-esp32c3 Supports only ESP32C3.
  • qemu-espressif-gui, qemu-esp32-gui, qemu-esp32c3-gui As above, but with gui support enabled.

Exposed options

  • sdlSupport (default: false)
  • gtkSupport (default: false)
  • cocoaSupport (default: false, Darwin only)
  • enableTools (default: false)
  • enableDebug (default: false)
  • enableTests (default: true)

These are passed as overrides, e.g. qemu-espressif.override { sdlSupport = true; enableDebug = true; }.

Default output

The default output of this flake is a nixpkgs overlay that adds these packages.

License

  • The Nix code, its documentation and supporting files provided in this repository are subject to the MIT license (LICENSE or http://opensource.org/licenses/MIT)
  • QEMU as a whole is released under the GNU General Public License, version 2. For full licensing details, consult their LICENSE file for the packaged version.

Addenda

Note: this flake uses the internals of the nixpkgs derivation for qemu, so it is potentially rather fragile and it is not recommended to make the nixpkgs input of this flake follow another.

An example of usage can be found at https://github.com/SFrijters/nix-qemu-esp32c3-rust-example .

About

Nix flake for qemu with ESP32 and ESP32C3 support, built from the Espressif fork - for an example of usage see https://github.com/SFrijters/nix-qemu-esp32c3-rust-example

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages