1{ lib
2, stdenv
3, rustPlatform
4, fetchFromGitHub
5}:
6
7rustPlatform.buildRustPackage rec {
8 pname = "lightningcss";
9 version = "1.22.0";
10
11 src = fetchFromGitHub {
12 owner = "parcel-bundler";
13 repo = "lightningcss";
14 rev = "refs/tags/v${version}";
15 sha256 = "K7whGWIukMrCqGaunHVuvr9k1EOTPSMb0x/A2JysVI0=";
16 };
17
18 cargoHash = "sha256-itwU6JIxDbem93KIpjWyKBiZhQP62D9h8ohIcMD14+0=";
19
20 buildFeatures = [
21 "cli"
22 ];
23
24 cargoBuildFlags = [
25 "--lib"
26 "--bin=lightningcss"
27 ];
28
29 cargoTestFlags = [
30 "--lib"
31 ];
32
33 meta = with lib; {
34 description = "Extremely fast CSS parser, transformer, and minifier written in Rust";
35 homepage = "https://lightningcss.dev/";
36 changelog = "https://github.com/parcel-bundler/lightningcss/releases/tag/v${version}";
37 license = licenses.mpl20;
38 maintainers = with maintainers; [ toastal ];
39 mainProgram = "lightningcss";
40 # never built on aarch64-linux since first introduction in nixpkgs
41 broken = stdenv.isLinux && stdenv.isAarch64;
42 };
43}