1{ lib
2, stdenv
3, rustPlatform
4, fetchCrate
5, pkg-config
6, libusb1
7, openssl
8, DarwinTools
9, AppKit
10}:
11
12rustPlatform.buildRustPackage rec {
13 pname = "probe-rs-cli";
14 version = "0.18.0";
15
16 src = fetchCrate {
17 inherit pname version;
18 hash = "sha256-5p3SxroztyJnBN/lzFagbpmAAIQmR9iwWHDMxuighDA=";
19 };
20
21 cargoHash = "sha256-0osWLXrpz6/CnCK1mfwnwqk+OsZLxO2JxbgRnqMhLeE=";
22
23 nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
24
25 buildInputs = [ libusb1 openssl ] ++ lib.optionals stdenv.isDarwin [ AppKit ];
26
27 meta = with lib; {
28 description = "CLI tool for on-chip debugging and flashing of ARM chips";
29 homepage = "https://probe.rs/";
30 changelog = "https://github.com/probe-rs/probe-rs/blob/v${version}/CHANGELOG.md";
31 license = with licenses; [ asl20 /* or */ mit ];
32 maintainers = with maintainers; [ xgroleau newam ];
33 };
34}