itpdp/esp32/flake.nix
2026-05-11 17:01:04 +02:00

49 lines
1.2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs";
rust-overlay.url = "github:oxalica/rust-overlay";
esp-rs.url = "github:leighleighleigh/esp-rs-nix";
};
outputs =
{
self,
rust-overlay,
nixpkgs,
esp-rs,
}:
let
overlays = [ (import rust-overlay) ];
pkgs = import nixpkgs {
system = "x86_64-linux";
inherit overlays;
};
in
{
packages.x86_64-linux.elf2uf2-rs = pkgs.callPackage ./elf2uf2.nix { };
devShell.x86_64-linux = pkgs.mkShell {
buildInputs = with pkgs; [
espflash
esptool
esp-rs.packages.${system}.default
cargo-espmonitor
# (pkgs.rust-bin.selectLatestNightlyWith (
# toolchain:
# toolchain.default.override {
# targets = [
# "thumbv6m-none-eabi"
# "xtensa-esp32-none-eabi"
# ];
# extensions = [ "rust-src" ];
# }
# ))
pkgs.rust-analyzer
pkgs.flip-link
pkgs.probe-rs-tools
self.packages.x86_64-linux.elf2uf2-rs
pkgs.rustfmt
# pkgs.picotool
];
};
};
}