Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at fix-function-merge 49 lines 1.4 kB view raw
1{ lib 2, stdenvNoCC 3, fetchzip 4, autoPatchelfHook 5, libcxx 6}: 7 8stdenvNoCC.mkDerivation rec { 9 pname = "aapt"; 10 version = "8.4.1-11315950"; 11 12 src = 13 let 14 urlAndHash = 15 if stdenvNoCC.isLinux then { 16 url = "https://dl.google.com/android/maven2/com/android/tools/build/aapt2/${version}/aapt2-${version}-linux.jar"; 17 hash = "sha256-eSQaZrRtb5aCG320hrXAL256fxa/oMhBC4hcTA1KRxs="; 18 } else if stdenvNoCC.isDarwin then { 19 url = "https://dl.google.com/android/maven2/com/android/tools/build/aapt2/${version}/aapt2-${version}-osx.jar"; 20 hash = "sha256-LUihNjase79JbUkHDb10A5d6pJ+VXDVfv7m09hkL8kY="; 21 } else throw "Unsupport platform: ${stdenvNoCC.system}"; 22 in 23 fetchzip (urlAndHash // { 24 extension = "zip"; 25 stripRoot = false; 26 }); 27 28 nativeBuildInputs = lib.optionals stdenvNoCC.isLinux [ autoPatchelfHook ]; 29 buildInputs = lib.optionals stdenvNoCC.isLinux [ libcxx ]; 30 31 installPhase = '' 32 runHook preInstall 33 34 install -D aapt2 $out/bin/aapt2 35 36 runHook postInstall 37 ''; 38 39 meta = { 40 description = "Build tool that compiles and packages Android app's resources"; 41 mainProgram = "aapt2"; 42 homepage = "https://developer.android.com/tools/aapt2"; 43 license = lib.licenses.asl20; 44 maintainers = with lib.maintainers; [ linsui ]; 45 platforms = lib.platforms.unix; 46 sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; 47 }; 48} 49