{ lib , stdenv , rustPlatform , fetchFromGitHub , nix-update-script }: rustPlatform.buildRustPackage rec { pname = "lightningcss"; version = "1.25.1"; src = fetchFromGitHub { owner = "parcel-bundler"; repo = "lightningcss"; rev = "refs/tags/v${version}"; hash = "sha256-jmNN2zCAlu3qLKJs8V7/zkpGmQ5wooH9Kbnsi80ffRc="; }; cargoHash = "sha256-d5PqkqkHDLXA/5wW7QxSUDEKvejRc3+yn73TnM07lzE="; patches = [ # Backport fix for build error for lightningcss-napi # see https://github.com/parcel-bundler/lightningcss/pull/713 # FIXME: remove when merged upstream ./0001-napi-fix-build-error-in-cargo-auditable.patch ]; buildFeatures = [ "cli" ]; cargoBuildFlags = [ "--lib" "--bin=lightningcss" ]; cargoTestFlags = [ "--lib" ]; passthru.updateScript = nix-update-script {}; meta = { description = "Extremely fast CSS parser, transformer, and minifier written in Rust"; homepage = "https://lightningcss.dev/"; changelog = "https://github.com/parcel-bundler/lightningcss/releases/tag/v${version}"; license = lib.licenses.mpl20; maintainers = with lib.maintainers; [ johnrtitor toastal ]; mainProgram = "lightningcss"; # never built on aarch64-linux since first introduction in nixpkgs broken = stdenv.isLinux && stdenv.isAarch64; }; }