{ stdenv, lib, rustPlatform, fetchFromGitHub, pkg-config }: rustPlatform.buildRustPackage rec { pname = "gifski"; version = "1.10.3"; src = fetchFromGitHub { owner = "ImageOptim"; repo = "gifski"; rev = version; sha256 = "sha256-P4t16rCKsL6FwDVXDC2XkgUGcAlWCPt1iXoBmhDZRzk="; }; cargoHash = "sha256-IAaaR4DWKnCd9IrqIR3v2dEv4IVEoBwBEJErqLRaVmA="; nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ]; # error: the crate `gifski` is compiled with the panic strategy `abort` which is incompatible with this crate's strategy of `unwind` doCheck = !stdenv.isDarwin; meta = with lib; { description = "GIF encoder based on libimagequant (pngquant)"; homepage = "https://gif.ski/"; license = licenses.agpl3; maintainers = [ maintainers.marsam ]; }; }