19 stdenv.mkDerivation rec {
21 version = "0-unstable-2023-08-05";
23 src = fetchFromGitHub {
26 rev = "ffaeb50dcce74bf3ba1b05f98423cf48f205f55e";
27 hash = "sha256-E3v3UoQumBBYDOiXMfCRh5J7bfUCkettHth7SAresCE=";
31 # solve error[E0310]: the parameter type `T` may not live long enough
32 # in rust-serialize crate
33 ./rustc_serialize_update.patch
36 cargoDeps = rustPlatform.fetchCargoTarball {
38 name = "${pname}-${version}";
39 patches = [ ./rustc_serialize_update.patch ];
40 hash = "sha256-1Zb0J2tO/gIifDymmoXxZf6RNV8foE9QiQqZcrHrWzE=";
47 rustPlatform.cargoSetupHook
62 description = "Fine-tune your instruments";
64 Fine-tune your instruments with Chromatic. Chromatic
65 detects the frequency of audio input, converts it to
66 a musical note with the correct semitone and octave,
67 and displays the cents error. Cents are displayed on
68 an analog gauge to make tuning more visually intuitive.
69 Requires PulseAudio or PipeWire.
71 homepage = "https://github.com/nate-xyz/chromatic";
72 license = licenses.gpl3Plus;
73 mainProgram = "chromatic";
74 maintainers = with maintainers; [ aleksana ];
75 platforms = platforms.linux;