{ lib, fetchFromGitHub, fetchzip, rustPlatform, eyed3, flac, imagemagick, intermodal, lame, makeBinaryWrapper, sox, writableTmpDirAsHomeHook, }: let runtimeDeps = [ eyed3 flac intermodal imagemagick lame sox ]; testSampleContent = fetchzip { url = "https://archive.org/download/tennyson-discography_/Tennyson%20-%20With%20You%20-%20Lay-by.zip"; hash = "sha256-/MgnOgn+OSPPg9wkJ32hq+1MXDdW+Qo9MqLtZMLQYBY="; stripRoot = false; }; in rustPlatform.buildRustPackage (finalAttrs: { pname = "caesura"; version = "0.25.2"; src = fetchFromGitHub { owner = "RogueOneEcho"; repo = "caesura"; tag = "v${finalAttrs.version}"; hash = "sha256-rpaOFmD/0/c5F6TIS7vGn7G3+rLOoBZKMW/HuzroUxM="; }; cargoHash = "sha256-agdhYEhhw3gMdZmYiQZVeLARkMsYQ/AWLTrpiaH0mtA="; nativeBuildInputs = [ makeBinaryWrapper ]; postPatch = '' substituteInPlace Cargo.toml \ --replace-fail 'version = "0.0.0"' 'version = "${finalAttrs.version}"' ''; checkFlags = [ # Those test need internet access for its `Source` (i.e: tracker) "--skip=commands::spectrogram::tests::spectrogram_command_tests::spectrogram_command" "--skip=commands::transcode::tests::transcode_command_tests::transcode_command" "--skip=utils::source::tests::source_provider_tests::source_provider" ]; preCheck = '' # From samples/download-sample mkdir samples/content/ ln -s ${finalAttrs.passthru.testSampleContent} "samples/content/Tennyson - With You (2014) [Digital] "'{'"16-44.1 Bandcamp"'}'" (FLAC)" # Adapted from .github/workflows/on-push.yml tee config.yml <