{ stdenv, lib, rustPlatform, fetchFromGitHub, pkg-config }: rustPlatform.buildRustPackage rec { pname = "gifski"; version = "1.8.0"; src = fetchFromGitHub { owner = "ImageOptim"; repo = "gifski"; rev = version; sha256 = "sha256-KAm4ng+FIMmhHAxoFNNVo48GVbW3c+raX6Hcab+KCf8="; }; cargoSha256 = "sha256-xbE1Olf0lh6o4kF9ubZhdnTbZsJcd5TvLf7P1nWLf9Q="; 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 ]; }; }