From f5294b802d742568f16cc9aa0d7ebc4030898d30 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Fri, 29 Jan 2021 14:50:13 -0300 Subject: Revert "flutter: 1.22.4 -> 1.22.5" This reverts commit 5f72a823deeab9ef9f94bd7b208d11fab281f5d6. --- pkgs/development/compilers/flutter/default.nix | 17 ++---- pkgs/development/compilers/flutter/flutter.nix | 46 ++++++++-------- .../flutter/patches/disable-auto-update.patch | 31 ----------- .../compilers/flutter/patches/move-cache.patch | 64 ---------------------- .../patches/stable/disable-auto-update.patch | 31 +++++++++++ .../flutter/patches/stable/move-cache.patch | 64 ++++++++++++++++++++++ pkgs/development/compilers/flutter/repository.nix | 24 -------- 7 files changed, 124 insertions(+), 153 deletions(-) delete mode 100644 pkgs/development/compilers/flutter/patches/disable-auto-update.patch delete mode 100644 pkgs/development/compilers/flutter/patches/move-cache.patch create mode 100644 pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch create mode 100644 pkgs/development/compilers/flutter/patches/stable/move-cache.patch delete mode 100644 pkgs/development/compilers/flutter/repository.nix (limited to 'pkgs') diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix index 8572040cb0cd..61641e95960e 100644 --- a/pkgs/development/compilers/flutter/default.nix +++ b/pkgs/development/compilers/flutter/default.nix @@ -1,24 +1,17 @@ -{ callPackage, fetchurl, dart }: - +{ callPackage, dart }: let mkFlutter = opts: callPackage (import ./flutter.nix opts) { }; getPatches = dir: let files = builtins.attrNames (builtins.readDir dir); in map (f: dir + ("/" + f)) files; - version = "1.22.5"; - channel = "stable"; - filename = "flutter_linux_${version}-${channel}.tar.xz"; in { mkFlutter = mkFlutter; stable = mkFlutter rec { - inherit dart version; + inherit dart; pname = "flutter"; - patches = getPatches ./patches; - src = fetchurl { - url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; - sha256 = "1dv5kczcj9npf7xxlanmpc9ijnxa3ap46521cxn14c0i3y9295ja"; - }; - depsSha256 = "0d7vhk6axgqajy2d9ia9lc6awcnz6cc3n04r7hnh7bx4hb0jv0l1"; + version = "1.22.4"; + sha256Hash = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw"; + patches = getPatches ./patches/stable; }; } diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix index e3fcf77e391c..85438af150fd 100644 --- a/pkgs/development/compilers/flutter/flutter.nix +++ b/pkgs/development/compilers/flutter/flutter.nix @@ -1,9 +1,10 @@ { pname , version +, sha256Hash , patches , dart -, src -, depsSha256 +, channel ? "stable" +, filename ? "flutter_linux_${version}-${channel}.tar.xz" }: { bash @@ -30,20 +31,21 @@ , nspr , nss , systemd -, callPackage }: let - repository = callPackage ./repository.nix { - inherit src pname version dart depsSha256; - }; - drvName = "flutter-${version}"; - + drvName = "flutter-${channel}-${version}"; flutter = stdenv.mkDerivation { name = "${drvName}-unwrapped"; - buildInputs = [ git repository ]; + src = fetchurl { + url = + "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; + sha256 = sha256Hash; + }; + + buildInputs = [ git ]; - inherit src patches; + inherit patches; postPatch = '' patchShebangs --build ./bin/ @@ -51,25 +53,25 @@ let ''; buildPhase = '' - export FLUTTER_ROOT="$(pwd)" - export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" - export SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart" + FLUTTER_ROOT=$(pwd) + FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" + SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot" + STAMP_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.stamp" + SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart" + DART_SDK_PATH="${dart}" - mkdir -p "$out/bin/cache" - export SNAPSHOT_PATH="$out/bin/cache/flutter_tools.snapshot" - export STAMP_PATH="$out/bin/cache/flutter_tools.stamp" + HOME=../.. # required for pub upgrade --offline, ~/.pub-cache + # path is relative otherwise it's replaced by /build/flutter - export DART_SDK_PATH="${dart}" - export PUB_CACHE="${repository}" - - pushd "$FLUTTER_TOOLS_DIR" - ${dart}/bin/pub get --offline - popd + (cd "$FLUTTER_TOOLS_DIR" && ${dart}/bin/pub upgrade --offline) local revision="$(cd "$FLUTTER_ROOT"; git rev-parse HEAD)" ${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH" echo "$revision" > "$STAMP_PATH" echo -n "${version}" > version + + rm -rf bin/cache/{artifacts,dart-sdk,downloads} + rm -f bin/cache/*.stamp ''; installPhase = '' diff --git a/pkgs/development/compilers/flutter/patches/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/disable-auto-update.patch deleted file mode 100644 index 35ce5b367350..000000000000 --- a/pkgs/development/compilers/flutter/patches/disable-auto-update.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh -index 8d613de739..a673466726 100644 ---- a/bin/internal/shared.sh -+++ b/bin/internal/shared.sh -@@ -204,8 +204,6 @@ function shared::execute() { - # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" - # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" - -- upgrade_flutter 7< "$PROG_NAME" -- - BIN_NAME="$(basename "$PROG_NAME")" - case "$BIN_NAME" in - flutter*) -diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -index 8a1a1e29da..778f253358 100644 ---- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner { - globals.flutterUsage.suppressAnalytics = true; - } - -- try { -- await globals.flutterVersion.ensureVersionFile(); -- } on FileSystemException catch (e) { -- globals.printError('Failed to write the version file to the artifact cache: "$e".'); -- globals.printError('Please ensure you have permissions in the artifact cache directory.'); -- throwToolExit('Failed to write the version file'); -- } - final bool machineFlag = topLevelResults['machine'] as bool; - if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { - await globals.flutterVersion.checkFlutterVersionFreshness(); diff --git a/pkgs/development/compilers/flutter/patches/move-cache.patch b/pkgs/development/compilers/flutter/patches/move-cache.patch deleted file mode 100644 index dc77496edb31..000000000000 --- a/pkgs/development/compilers/flutter/patches/move-cache.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart -index d045c83f04..d51973020b 100644 ---- a/dev/devicelab/lib/framework/runner.dart -+++ b/dev/devicelab/lib/framework/runner.dart -@@ -136,7 +136,7 @@ Future cleanupSystem() async { - print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); - final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; - final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); -- recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); -+ recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); - copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); - if (!Platform.isWindows) { - await exec( -diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart -index 8da01315ae..bb8d61d7f2 100644 ---- a/packages/flutter_tools/lib/src/asset.dart -+++ b/packages/flutter_tools/lib/src/asset.dart -@@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; - import 'package:package_config/package_config.dart'; - import 'package:yaml/yaml.dart'; - -+import 'base/common.dart'; - import 'base/context.dart'; - import 'base/file_system.dart'; - import 'base/utils.dart'; -@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { - for (final Map font in (family['fonts'] as List).cast>()) { - final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); - result.add(_Asset( -- baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), -+ baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), - relativeUri: Uri(path: entryUri.pathSegments.last), - entryUri: entryUri, - package: null, -diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart -index a35d8f87d0..a40027dc74 100644 ---- a/packages/flutter_tools/lib/src/cache.dart -+++ b/packages/flutter_tools/lib/src/cache.dart -@@ -215,8 +215,15 @@ class Cache { - return; - } - assert(_lock == null); -+ -+ final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); -+ if (!dir.existsSync()) { -+ dir.createSync(recursive: true); -+ globals.os.chmod(dir, '755'); -+ } -+ - final File lockFile = -- globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); -+ globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); - try { - _lock = lockFile.openSync(mode: FileMode.write); - } on FileSystemException catch (e) { -@@ -319,7 +326,7 @@ class Cache { - if (_rootOverride != null) { - return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); - } else { -- return _fileSystem.directory(_fileSystem.path.join(flutterRoot, 'bin', 'cache')); -+ return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); - } - } - diff --git a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch new file mode 100644 index 000000000000..35ce5b367350 --- /dev/null +++ b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch @@ -0,0 +1,31 @@ +diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh +index 8d613de739..a673466726 100644 +--- a/bin/internal/shared.sh ++++ b/bin/internal/shared.sh +@@ -204,8 +204,6 @@ function shared::execute() { + # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" + # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" + +- upgrade_flutter 7< "$PROG_NAME" +- + BIN_NAME="$(basename "$PROG_NAME")" + case "$BIN_NAME" in + flutter*) +diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +index 8a1a1e29da..778f253358 100644 +--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart ++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner { + globals.flutterUsage.suppressAnalytics = true; + } + +- try { +- await globals.flutterVersion.ensureVersionFile(); +- } on FileSystemException catch (e) { +- globals.printError('Failed to write the version file to the artifact cache: "$e".'); +- globals.printError('Please ensure you have permissions in the artifact cache directory.'); +- throwToolExit('Failed to write the version file'); +- } + final bool machineFlag = topLevelResults['machine'] as bool; + if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { + await globals.flutterVersion.checkFlutterVersionFreshness(); diff --git a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch new file mode 100644 index 000000000000..dc77496edb31 --- /dev/null +++ b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch @@ -0,0 +1,64 @@ +diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart +index d045c83f04..d51973020b 100644 +--- a/dev/devicelab/lib/framework/runner.dart ++++ b/dev/devicelab/lib/framework/runner.dart +@@ -136,7 +136,7 @@ Future cleanupSystem() async { + print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); + final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; + final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); +- recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); ++ recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); + copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); + if (!Platform.isWindows) { + await exec( +diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart +index 8da01315ae..bb8d61d7f2 100644 +--- a/packages/flutter_tools/lib/src/asset.dart ++++ b/packages/flutter_tools/lib/src/asset.dart +@@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; + import 'package:package_config/package_config.dart'; + import 'package:yaml/yaml.dart'; + ++import 'base/common.dart'; + import 'base/context.dart'; + import 'base/file_system.dart'; + import 'base/utils.dart'; +@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { + for (final Map font in (family['fonts'] as List).cast>()) { + final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); + result.add(_Asset( +- baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), ++ baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), + relativeUri: Uri(path: entryUri.pathSegments.last), + entryUri: entryUri, + package: null, +diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart +index a35d8f87d0..a40027dc74 100644 +--- a/packages/flutter_tools/lib/src/cache.dart ++++ b/packages/flutter_tools/lib/src/cache.dart +@@ -215,8 +215,15 @@ class Cache { + return; + } + assert(_lock == null); ++ ++ final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); ++ if (!dir.existsSync()) { ++ dir.createSync(recursive: true); ++ globals.os.chmod(dir, '755'); ++ } ++ + final File lockFile = +- globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); ++ globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); + try { + _lock = lockFile.openSync(mode: FileMode.write); + } on FileSystemException catch (e) { +@@ -319,7 +326,7 @@ class Cache { + if (_rootOverride != null) { + return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); + } else { +- return _fileSystem.directory(_fileSystem.path.join(flutterRoot, 'bin', 'cache')); ++ return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); + } + } + diff --git a/pkgs/development/compilers/flutter/repository.nix b/pkgs/development/compilers/flutter/repository.nix deleted file mode 100644 index 0f8de0a912f1..000000000000 --- a/pkgs/development/compilers/flutter/repository.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ lib, stdenv, dart, fetchurl, src, pname, version, depsSha256 }: - -stdenv.mkDerivation { - inherit src version; - - pname = "${pname}-deps"; - buildInputs = [ dart ]; - - buildPhase = '' - export PUB_CACHE="$out" - export FLUTTER_ROOT="$(pwd)" - export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" - - pushd "$FLUTTER_TOOLS_DIR" - ${dart}/bin/pub get - ''; - - dontInstall = true; - dontFixup = true; - - outputHashAlgo = "sha256"; - outputHashMode = "recursive"; - outputHash = depsSha256; -} -- cgit v1.2.3 From 910d06bb9038c11b26bc7439c26afe6ef77fc1a3 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Fri, 29 Jan 2021 15:03:58 -0300 Subject: flutter: small refactorings in derivation --- pkgs/development/compilers/flutter/default.nix | 15 +++-- pkgs/development/compilers/flutter/flutter.nix | 36 ++++++------ .../flutter/patches/disable-auto-update.patch | 31 +++++++++++ .../compilers/flutter/patches/move-cache.patch | 64 ++++++++++++++++++++++ .../patches/stable/disable-auto-update.patch | 31 ----------- .../flutter/patches/stable/move-cache.patch | 64 ---------------------- 6 files changed, 121 insertions(+), 120 deletions(-) create mode 100644 pkgs/development/compilers/flutter/patches/disable-auto-update.patch create mode 100644 pkgs/development/compilers/flutter/patches/move-cache.patch delete mode 100644 pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch delete mode 100644 pkgs/development/compilers/flutter/patches/stable/move-cache.patch (limited to 'pkgs') diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix index 61641e95960e..14f4d93caa03 100644 --- a/pkgs/development/compilers/flutter/default.nix +++ b/pkgs/development/compilers/flutter/default.nix @@ -1,17 +1,22 @@ -{ callPackage, dart }: +{ callPackage, fetchurl, dart }: let mkFlutter = opts: callPackage (import ./flutter.nix opts) { }; getPatches = dir: let files = builtins.attrNames (builtins.readDir dir); in map (f: dir + ("/" + f)) files; + version = "1.22.4"; + channel = "stable"; + filename = "flutter_linux_${version}-${channel}.tar.xz"; in { mkFlutter = mkFlutter; stable = mkFlutter rec { - inherit dart; + inherit dart version; pname = "flutter"; - version = "1.22.4"; - sha256Hash = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw"; - patches = getPatches ./patches/stable; + src = fetchurl { + url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; + sha256 = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw"; + }; + patches = getPatches ./patches; }; } diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix index 85438af150fd..8cac4a18fbea 100644 --- a/pkgs/development/compilers/flutter/flutter.nix +++ b/pkgs/development/compilers/flutter/flutter.nix @@ -1,10 +1,8 @@ { pname , version -, sha256Hash , patches , dart -, channel ? "stable" -, filename ? "flutter_linux_${version}-${channel}.tar.xz" +, src }: { bash @@ -33,19 +31,13 @@ , systemd }: let - drvName = "flutter-${channel}-${version}"; + drvName = "flutter-${version}"; flutter = stdenv.mkDerivation { name = "${drvName}-unwrapped"; - src = fetchurl { - url = - "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; - sha256 = sha256Hash; - }; - buildInputs = [ git ]; - inherit patches; + inherit src patches; postPatch = '' patchShebangs --build ./bin/ @@ -53,25 +45,29 @@ let ''; buildPhase = '' - FLUTTER_ROOT=$(pwd) - FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" - SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot" - STAMP_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.stamp" - SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart" - DART_SDK_PATH="${dart}" + export FLUTTER_ROOT="$(pwd)" + export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" + export SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart" + + export SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot" + export STAMP_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.stamp" + + export DART_SDK_PATH="${dart}" HOME=../.. # required for pub upgrade --offline, ~/.pub-cache # path is relative otherwise it's replaced by /build/flutter - (cd "$FLUTTER_TOOLS_DIR" && ${dart}/bin/pub upgrade --offline) + pushd "$FLUTTER_TOOLS_DIR" + ${dart}/bin/pub get --offline + popd local revision="$(cd "$FLUTTER_ROOT"; git rev-parse HEAD)" ${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH" echo "$revision" > "$STAMP_PATH" echo -n "${version}" > version - rm -rf bin/cache/{artifacts,dart-sdk,downloads} - rm -f bin/cache/*.stamp + rm -r bin/cache/{artifacts,dart-sdk,downloads} + rm bin/cache/*.stamp ''; installPhase = '' diff --git a/pkgs/development/compilers/flutter/patches/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/disable-auto-update.patch new file mode 100644 index 000000000000..35ce5b367350 --- /dev/null +++ b/pkgs/development/compilers/flutter/patches/disable-auto-update.patch @@ -0,0 +1,31 @@ +diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh +index 8d613de739..a673466726 100644 +--- a/bin/internal/shared.sh ++++ b/bin/internal/shared.sh +@@ -204,8 +204,6 @@ function shared::execute() { + # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" + # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" + +- upgrade_flutter 7< "$PROG_NAME" +- + BIN_NAME="$(basename "$PROG_NAME")" + case "$BIN_NAME" in + flutter*) +diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +index 8a1a1e29da..778f253358 100644 +--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart ++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner { + globals.flutterUsage.suppressAnalytics = true; + } + +- try { +- await globals.flutterVersion.ensureVersionFile(); +- } on FileSystemException catch (e) { +- globals.printError('Failed to write the version file to the artifact cache: "$e".'); +- globals.printError('Please ensure you have permissions in the artifact cache directory.'); +- throwToolExit('Failed to write the version file'); +- } + final bool machineFlag = topLevelResults['machine'] as bool; + if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { + await globals.flutterVersion.checkFlutterVersionFreshness(); diff --git a/pkgs/development/compilers/flutter/patches/move-cache.patch b/pkgs/development/compilers/flutter/patches/move-cache.patch new file mode 100644 index 000000000000..dc77496edb31 --- /dev/null +++ b/pkgs/development/compilers/flutter/patches/move-cache.patch @@ -0,0 +1,64 @@ +diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart +index d045c83f04..d51973020b 100644 +--- a/dev/devicelab/lib/framework/runner.dart ++++ b/dev/devicelab/lib/framework/runner.dart +@@ -136,7 +136,7 @@ Future cleanupSystem() async { + print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); + final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; + final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); +- recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); ++ recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); + copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); + if (!Platform.isWindows) { + await exec( +diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart +index 8da01315ae..bb8d61d7f2 100644 +--- a/packages/flutter_tools/lib/src/asset.dart ++++ b/packages/flutter_tools/lib/src/asset.dart +@@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; + import 'package:package_config/package_config.dart'; + import 'package:yaml/yaml.dart'; + ++import 'base/common.dart'; + import 'base/context.dart'; + import 'base/file_system.dart'; + import 'base/utils.dart'; +@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { + for (final Map font in (family['fonts'] as List).cast>()) { + final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); + result.add(_Asset( +- baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), ++ baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), + relativeUri: Uri(path: entryUri.pathSegments.last), + entryUri: entryUri, + package: null, +diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart +index a35d8f87d0..a40027dc74 100644 +--- a/packages/flutter_tools/lib/src/cache.dart ++++ b/packages/flutter_tools/lib/src/cache.dart +@@ -215,8 +215,15 @@ class Cache { + return; + } + assert(_lock == null); ++ ++ final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); ++ if (!dir.existsSync()) { ++ dir.createSync(recursive: true); ++ globals.os.chmod(dir, '755'); ++ } ++ + final File lockFile = +- globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); ++ globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); + try { + _lock = lockFile.openSync(mode: FileMode.write); + } on FileSystemException catch (e) { +@@ -319,7 +326,7 @@ class Cache { + if (_rootOverride != null) { + return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); + } else { +- return _fileSystem.directory(_fileSystem.path.join(flutterRoot, 'bin', 'cache')); ++ return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); + } + } + diff --git a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch deleted file mode 100644 index 35ce5b367350..000000000000 --- a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh -index 8d613de739..a673466726 100644 ---- a/bin/internal/shared.sh -+++ b/bin/internal/shared.sh -@@ -204,8 +204,6 @@ function shared::execute() { - # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" - # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" - -- upgrade_flutter 7< "$PROG_NAME" -- - BIN_NAME="$(basename "$PROG_NAME")" - case "$BIN_NAME" in - flutter*) -diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -index 8a1a1e29da..778f253358 100644 ---- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner { - globals.flutterUsage.suppressAnalytics = true; - } - -- try { -- await globals.flutterVersion.ensureVersionFile(); -- } on FileSystemException catch (e) { -- globals.printError('Failed to write the version file to the artifact cache: "$e".'); -- globals.printError('Please ensure you have permissions in the artifact cache directory.'); -- throwToolExit('Failed to write the version file'); -- } - final bool machineFlag = topLevelResults['machine'] as bool; - if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { - await globals.flutterVersion.checkFlutterVersionFreshness(); diff --git a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch deleted file mode 100644 index dc77496edb31..000000000000 --- a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart -index d045c83f04..d51973020b 100644 ---- a/dev/devicelab/lib/framework/runner.dart -+++ b/dev/devicelab/lib/framework/runner.dart -@@ -136,7 +136,7 @@ Future cleanupSystem() async { - print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); - final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; - final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); -- recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); -+ recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); - copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); - if (!Platform.isWindows) { - await exec( -diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart -index 8da01315ae..bb8d61d7f2 100644 ---- a/packages/flutter_tools/lib/src/asset.dart -+++ b/packages/flutter_tools/lib/src/asset.dart -@@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; - import 'package:package_config/package_config.dart'; - import 'package:yaml/yaml.dart'; - -+import 'base/common.dart'; - import 'base/context.dart'; - import 'base/file_system.dart'; - import 'base/utils.dart'; -@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { - for (final Map font in (family['fonts'] as List).cast>()) { - final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); - result.add(_Asset( -- baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), -+ baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), - relativeUri: Uri(path: entryUri.pathSegments.last), - entryUri: entryUri, - package: null, -diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart -index a35d8f87d0..a40027dc74 100644 ---- a/packages/flutter_tools/lib/src/cache.dart -+++ b/packages/flutter_tools/lib/src/cache.dart -@@ -215,8 +215,15 @@ class Cache { - return; - } - assert(_lock == null); -+ -+ final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); -+ if (!dir.existsSync()) { -+ dir.createSync(recursive: true); -+ globals.os.chmod(dir, '755'); -+ } -+ - final File lockFile = -- globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); -+ globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); - try { - _lock = lockFile.openSync(mode: FileMode.write); - } on FileSystemException catch (e) { -@@ -319,7 +326,7 @@ class Cache { - if (_rootOverride != null) { - return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); - } else { -- return _fileSystem.directory(_fileSystem.path.join(flutterRoot, 'bin', 'cache')); -+ return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); - } - } - -- cgit v1.2.3