diff --git a/pkgs/development/embedded/espflash/default.nix b/pkgs/development/embedded/espflash/default.nix new file mode 100644 index 0000000000000..8b3540111a719 --- /dev/null +++ b/pkgs/development/embedded/espflash/default.nix @@ -0,0 +1,39 @@ +{ lib +, rustPlatform +, fetchCrate +, pkg-config +, stdenv +, udev +, Security +, SystemConfiguration +}: + +rustPlatform.buildRustPackage rec { + pname = "espflash"; + version = "2.1.0"; + + src = fetchCrate { + inherit pname version; + hash = "sha256-Gd+8pA36mO+BCA0EFshboBi0etNjsiQFQU1wBYf/o6I="; + }; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = lib.optionals stdenv.isLinux [ + udev + ] ++ lib.optionals stdenv.isDarwin [ + Security + SystemConfiguration + ]; + + cargoHash = "sha256-IObAbsyrVBXt5zldirRezU7vS3R3aUihMFy2yIRWIlk="; + + meta = with lib; { + description = "Serial flasher utility for Espressif SoCs and modules"; + homepage = "https://github.com/esp-rs/espflash"; + changelog = "https://github.com/esp-rs/espflash/blob/v${version}/CHANGELOG.md"; + mainProgram = "espflash"; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = with maintainers; [ newam ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 60b5802a02a55..980e60e628bb0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31445,6 +31445,10 @@ with pkgs; espeakup = callPackage ../applications/accessibility/espeakup { }; + espflash = callPackage ../development/embedded/espflash { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + etebase-server = with python3Packages; toPythonApplication etebase-server; etesync-dav = callPackage ../applications/misc/etesync-dav { };