{ fish, rustPlatform, lib, }: let loadedRustPlatform = { inherit (rustPlatform) cargoSetupHook; fetchCargoVendor = loadedFetchCargoVendor; }; loadedFetchCargoVendor = prev: rustPlatform.importCargoLock { lockFile = ./Cargo.lock; allowBuiltinFetchGit = true; }; in (fish.override { rustPlatform = loadedRustPlatform; }).overrideAttrs (prev: { pname = "${prev.pname}-patched"; postPatch = '' rm Cargo.lock cat ${./Cargo.lock} > Cargo.lock ''; doCheck = false; patches = (prev.patches or []) ++ [ ./0001-feat-history-Add-turtle-as-history-backend.patch ./0002-history-turtle-Fix-id-misuse-and-history-return-orde.patch ]; })