Commit 78959ee6 authored by qzylinra's avatar qzylinra
Browse files

flutterPackages-source: clean

parent 370e93f2
Loading
Loading
Loading
Loading
+17 −19
Original line number Diff line number Diff line
@@ -3,7 +3,6 @@
  callPackage,
  fetchurl,
  bash,
  bintools,
  symlinkJoin,
  darwin,
  clang,
@@ -18,6 +17,7 @@
  fetchgit,
  llvmPackages,
  patchelf,
  gn,
  openbox,
  xorg,
  libglvnd,
@@ -72,7 +72,7 @@ let
    rev = swiftshaderRev;

    postFetch = ''
      rm -rf $out/third_party/llvm-project
      rm --recursive --force $out/third_party/llvm-project
    '';
  };

@@ -148,7 +148,10 @@ stdenv.mkDerivation (finalAttrs: {

  NIX_CFLAGS_COMPILE = [
    "-I${finalAttrs.toolchain}/include"
    "-O2"
    "-Wno-error"
    "-Wno-absolute-value"
    "-Wno-implicit-float-conversion"
  ]
  ++ lib.optional (!isOptimized) "-U_FORTIFY_SOURCE";

@@ -182,8 +185,6 @@ stdenv.mkDerivation (finalAttrs: {
    libepoxy
  ];

  patchtools = [ "flutter/third_party/gn/gn" ];

  dontPatch = true;

  env.patchgit = toString [
@@ -193,16 +194,16 @@ stdenv.mkDerivation (finalAttrs: {
    "flutter/third_party/skia"
  ];

  sourceRoot = if lib.versionAtLeast flutterVersion "3.38" then "${src.name}/engine" else src.name;

  postUnpack =
    lib.optionalString (lib.versionAtLeast flutterVersion "3.38") ''
      chmod --recursive +w ${src.name}
      echo '#!${lib.getExe bash}' > ${src.name}/bin/internal/content_aware_hash.sh
      echo 'echo 1111111111111111111111111111111111111111' >> ${src.name}/bin/internal/content_aware_hash.sh
      chmod +w .
      mkdir --parents bin/internal
      echo '#!${lib.getExe bash}' > bin/internal/content_aware_hash.sh
      echo 'echo 1111111111111111111111111111111111111111' >> bin/internal/content_aware_hash.sh
      chmod +x bin/internal/content_aware_hash.sh
    ''
    + ''
      pushd ${finalAttrs.sourceRoot}
      pushd ${finalAttrs.src.name}

      cp ${
        fetchurl {
@@ -225,11 +226,8 @@ stdenv.mkDerivation (finalAttrs: {
      mkdir --parents src/${dartPath}/tools/sdks
      ln --symbolic ${dart} src/${dartPath}/tools/sdks/dart-sdk

      ${lib.optionalString (stdenv.hostPlatform.isLinux) ''
        for patchtool in ''${patchtools[@]}; do
          patchelf src/$patchtool --set-interpreter ${bintools.dynamicLinker}
        done
      ''}
      mkdir --parents src/flutter/third_party/gn/
      ln --symbolic --force ${lib.getExe gn} src/flutter/third_party/gn/gn

      for dir in ''${patchgit[@]}; do
        pushd src/$dir
@@ -244,7 +242,7 @@ stdenv.mkDerivation (finalAttrs: {

      dart src/${dartPath}/tools/generate_package_config.dart
      echo "${dartSdkVersion}" >src/${dartPath}/sdk/version

      python3 src/flutter/third_party/dart/tools/generate_sdk_version_file.py
      rm --recursive --force src/third_party/angle/.git
      python3 src/flutter/tools/pub_get_offline.py

@@ -269,6 +267,7 @@ stdenv.mkDerivation (finalAttrs: {
    "--no-prebuilt-dart-sdk"
    "--embedder-for-target"
    "--no-goma"
    "--no-dart-version-git-info"
  ]
  ++ lib.optionals (stdenv.targetPlatform.isx86_64 == false) [
    "--linux"
@@ -294,8 +293,7 @@ stdenv.mkDerivation (finalAttrs: {
      --target-sysroot ${finalAttrs.toolchain} \
      --target-dir ${outName} \
      --target-triple ${stdenv.targetPlatform.config} \
      --enable-fontconfig \
      --no-prebuilt-dart-sdk
      --enable-fontconfig

    runHook postConfigure
  '';
@@ -332,7 +330,7 @@ stdenv.mkDerivation (finalAttrs: {
  installPhase = ''
    runHook preInstall

    rm -rf $out/out/${outName}/{obj,exe.unstripped,lib.unstripped,zip_archives}
    rm --recursive --force $out/out/${outName}/{obj,exe.unstripped,lib.unstripped,zip_archives}
    rm $out/out/${outName}/{args.gn,build.ninja,build.ninja.d,compile_commands.json,toolchain.ninja}
    find $out/out/${outName} -name '*_unittests' -delete
    find $out/out/${outName} -name '*_benchmarks' -delete
+16 −35
Original line number Diff line number Diff line
@@ -24,10 +24,10 @@ let

  boolOption = value: if value then "True" else "False";

  gclient = writeText "flutter-engine-${version}.gclient" ''
  gclient = writeText "flutter-${version}.gclient" ''
    solutions = [{
      "managed": False,
      "name": "${lib.optionalString (lib.versionAtLeast flutterVersion "3.29") "engine/"}src/flutter",
      "name": ".",
      "url": "${url}",
      "custom_vars": {
        "download_fuchsia_deps": False,
@@ -35,7 +35,7 @@ let
        "download_linux_deps": ${boolOption targetPlatform.isLinux},
        "setup_githooks": False,
        "download_esbuild": False,
        "download_dart_sdk": False,
        "download_dart_sdk": True,
        "host_cpu": "${build-constants.alt-arch}",
        "host_os": "${build-constants.alt-os}",
      },
@@ -85,38 +85,19 @@ runCommand "flutter-engine-source-${version}-${buildPlatform.system}-${targetPla
      (hashes."${buildPlatform.system}" or { })."${targetPlatform.system}"
        or (throw "Hash not set for ${targetPlatform.system} on ${buildPlatform.system}");
  }
  (
  ''
    source ${../../../../build-support/fetchgit/deterministic-git}
    export -f clean_git
    export -f make_deterministic_repo

      mkdir --parents source
      cp ${gclient} source/.gclient
      cd source
    mkdir --parents flutter
    cp ${gclient} flutter/.gclient
    cd flutter
    export PATH=$PATH:${tools.depot_tools}
    python3 ${tools.depot_tools}/gclient.py sync --no-history --shallow --nohooks -j $NIX_BUILD_CORES
    ''
    + lib.optionalString (lib.versionAtLeast flutterVersion "3.29") ''
      cp --recursive engine/src/flutter/third_party/* engine/src/flutter/engine/src/flutter/third_party/
      ${
        if (lib.versionAtLeast flutterVersion "3.38") then
          "mv engine/src/flutter $out"
        else
          "mv engine/src/flutter/engine $out"
      }
    ''
    + ''
      ${if (lib.versionAtLeast flutterVersion "3.38") then "pushd $out/engine" else "pushd $out"}
      find $out -name '.git' -exec rm --recursive --force {} \; || true

      rm --recursive --force src/{buildtools,fuchsia}
      rm --recursive --force src/flutter/{buildtools,prebuilts,third_party/swiftshader,third_party/gn/.versions}
      rm --recursive --force src/flutter/{third_party/dart/tools/sdks/dart-sdk,third_party/ninja/ninja,third_party/java}
      rm --recursive --force src/third_party/{dart/tools/sdks/dart-sdk,libcxx/test}
    mv engine $out

      rm --recursive --force .cipd .gclient .gclient_entries .gclient_previous_custom_vars .gclient_previous_sync_commits
    find $out -name '.git' -exec rm --recursive --force {} \; || true

      popd
    rm --recursive $out/src/flutter/{buildtools,prebuilts,third_party/swiftshader,third_party/gn/.versions,third_party/dart/tools/sdks/dart-sdk}
  ''
  )
+2 −2
Original line number Diff line number Diff line
@@ -26,8 +26,8 @@
    "linux-ppc64le" = "sha256-ZDMDwrP1zYlOI1hdbd3iZwKr59v/8CWj2sZ1RdosAiE=";
    "linux-riscv64" = "sha256-O2EvOnjwbNssB7FtbK44yFcXfkrh9HOsPs/HF+uD2m8=";
    "linux-s390x" = "sha256-BKeNDtuc9IkmV4GpuZcdsGc2F039KQeLdozxh7u+FDw=";
    "mac-amd64" = "sha256-ZKBm8PbKjg4t0jIBPRKAv85L8eZOwJ1wBvh3cRSqHOI=";
    "mac-arm64" = "sha256-AvjJp7JF05CetYDnwNJneAsotm1vBHWqB/vCdcIohoU=";
    "macos-amd64" = "sha256-ZKBm8PbKjg4t0jIBPRKAv85L8eZOwJ1wBvh3cRSqHOI=";
    "macos-arm64" = "sha256-AvjJp7JF05CetYDnwNJneAsotm1vBHWqB/vCdcIohoU=";
    "windows-386" = "sha256-AVLbWh+WtJKynFDS6IfhuvYudw4Ow9s6w2JyDWG/2CI=";
    "windows-amd64" = "sha256-puAQhiPGuwzkElWiBdTRGWOaUR2AIP7Qv9S3pwEY74E=";
    "windows-arm64" = "sha256-4wxOMG+zvkM7gjhAiQvvNqNS0AamKKJdaBM/+rRxgXk=";
+2 −3
Original line number Diff line number Diff line
@@ -12,8 +12,6 @@ stdenv.mkDerivation (finalAttrs: {
  name = "pubspec-lock";
  src = @flutter_src@;

  sourceRoot = "${finalAttrs.src.name}/packages/flutter_tools";

  nativeBuildInputs = [
    dart
    writableTmpDirAsHomeHook
@@ -26,7 +24,8 @@ stdenv.mkDerivation (finalAttrs: {
  buildPhase = ''
    runHook preBuild

    dart --root-certs-file=${cacert}/etc/ssl/certs/ca-bundle.crt pub get -verbose
    cd packages/flutter_tools
    dart --root-certs-file=${cacert}/etc/ssl/certs/ca-bundle.crt pub get

    runHook postBuild
  '';
+4 −4
Original line number Diff line number Diff line
@@ -6,12 +6,12 @@
  "channel": "beta",
  "engineHashes": {
    "aarch64-linux": {
      "aarch64-linux": "sha256-rcZdEXo2L388X02qSR/EnvRb/rTSsJjw4E4y0wFzUmk=",
      "x86_64-linux": "sha256-rcZdEXo2L388X02qSR/EnvRb/rTSsJjw4E4y0wFzUmk="
      "aarch64-linux": "sha256-73qdqK1oa+pB8/ruG3DbZ+KHXlGx7oXwiklSXoJFtBU=",
      "x86_64-linux": "sha256-73qdqK1oa+pB8/ruG3DbZ+KHXlGx7oXwiklSXoJFtBU="
    },
    "x86_64-linux": {
      "aarch64-linux": "sha256-lfhAF16MxDVeHjqfFE5FsRCTuxdiM9j254gd3/7Ylrc=",
      "x86_64-linux": "sha256-lfhAF16MxDVeHjqfFE5FsRCTuxdiM9j254gd3/7Ylrc="
      "aarch64-linux": "sha256-WVJB2cjvV1h5GSJ3Y+uFpdZPjFca/XS1am/ctQrZi+g=",
      "x86_64-linux": "sha256-WVJB2cjvV1h5GSJ3Y+uFpdZPjFca/XS1am/ctQrZi+g="
    }
  },
  "dartVersion": "3.10.0-290.1.beta",