summary refs log tree commit diff
path: root/pkgs/development/compilers/flutter/patches
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/flutter/patches')
-rw-r--r--pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch31
-rw-r--r--pkgs/development/compilers/flutter/patches/beta/move-cache.patch63
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch31
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/move-cache.patch63
4 files changed, 188 insertions, 0 deletions
diff --git a/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch
new file mode 100644
index 00000000000..42c09c805cb
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch
@@ -0,0 +1,31 @@
+diff --git a/bin/flutter b/bin/flutter
+index e0c18e235..2c3fb7ddd 100755
+--- a/bin/flutter
++++ b/bin/flutter
+@@ -185,8 +185,6 @@ fi
+ # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
+ # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
+ 
+-(upgrade_flutter) 3< "$PROG_NAME"
+-
+ # FLUTTER_TOOL_ARGS isn't quoted below, because it is meant to be considered as
+ # separate space-separated args.
+ "$DART" --packages="$FLUTTER_TOOLS_DIR/.packages" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
+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 99455ae64..f5b0cb59c 100644
+--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+@@ -301,13 +301,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+         }
+ 
+         _checkFlutterCopy();
+-        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/beta/move-cache.patch b/pkgs/development/compilers/flutter/patches/beta/move-cache.patch
new file mode 100644
index 00000000000..4672d4c625d
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/beta/move-cache.patch
@@ -0,0 +1,63 @@
+diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
+index 8e511eefd..fbc7d6ac3 100644
+--- a/dev/devicelab/lib/framework/runner.dart
++++ b/dev/devicelab/lib/framework/runner.dart
+@@ -126,7 +126,7 @@ Future<void> 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 79b06949f..9040ba0a8 100644
+--- a/packages/flutter_tools/lib/src/asset.dart
++++ b/packages/flutter_tools/lib/src/asset.dart
+@@ -6,6 +6,7 @@ import 'dart:async';
+ 
+ import 'package:yaml/yaml.dart';
+ 
++import 'base/common.dart';
+ import 'base/context.dart';
+ import 'base/file_system.dart';
+ import 'base/utils.dart';
+@@ -325,7 +326,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+     for (final Map<dynamic, dynamic> font in family['fonts']) {
+       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,
+       ));
+diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
+index 715189938..5afb2a0db 100644
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -189,8 +189,14 @@ 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) {
+@@ -290,7 +296,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 00000000000..16fe504595f
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
@@ -0,0 +1,31 @@
+diff --git a/bin/flutter b/bin/flutter
+index 3955f8f39..1e7573d30 100755
+--- a/bin/flutter
++++ b/bin/flutter
+@@ -185,8 +185,6 @@ fi
+ # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
+ # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
+ 
+-(upgrade_flutter) 3< "$PROG_NAME"
+-
+ # FLUTTER_TOOL_ARGS isn't quoted below, because it is meant to be considered as
+ # separate space-separated args.
+ "$DART" --packages="$FLUTTER_TOOLS_DIR/.packages" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
+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 5e45819d9..ab748b059 100644
+--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+@@ -377,13 +377,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+         }
+ 
+         _checkFlutterCopy();
+-        try {
+-          await FlutterVersion.instance.ensureVersionFile();
+-        } on FileSystemException catch (e) {
+-          printError('Failed to write the version file to the artifact cache: "$e".');
+-          printError('Please ensure you have permissions in the artifact cache directory.');
+-          throwToolExit('Failed to write the version file');
+-        }
+         if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool) {
+           await FlutterVersion.instance.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 00000000000..e5719a2867f
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
@@ -0,0 +1,63 @@
+diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
+index 9fae74726..d88d6ecbb 100644
+--- a/dev/devicelab/lib/framework/runner.dart
++++ b/dev/devicelab/lib/framework/runner.dart
+@@ -126,7 +126,7 @@ Future<void> 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(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 e6216c737..5ab497092 100644
+--- a/packages/flutter_tools/lib/src/asset.dart
++++ b/packages/flutter_tools/lib/src/asset.dart
+@@ -6,6 +6,7 @@ import 'dart:async';
+ 
+ import 'package:yaml/yaml.dart';
+ 
++import 'base/common.dart';
+ import 'base/context.dart';
+ import 'base/file_system.dart';
+ import 'base/platform.dart';
+@@ -326,7 +327,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+     for (Map<dynamic, dynamic> font in family['fonts']) {
+       final Uri entryUri = fs.path.toUri(font['asset'] as String);
+       result.add(_Asset(
+-        baseDir: fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
++        baseDir: fs.path.join(homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
+         relativeUri: Uri(path: entryUri.pathSegments.last),
+         entryUri: entryUri,
+       ));
+diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
+index 5e1950b56..45585f9c0 100644
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -164,8 +164,14 @@ class Cache {
+       return;
+     }
+     assert(_lock == null);
++
++    final Directory dir = fs.directory(fs.path.join(homeDirPath, '.cache', 'flutter'));
++    if (!dir.existsSync()) {
++      dir.createSync(recursive: true);
++      os.chmod(dir, '755');
++    }
+     final File lockFile =
+-        fs.file(fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile'));
++        fs.file(fs.path.join(homeDirPath, '.cache', 'flutter', 'lockfile'));
+     try {
+       _lock = lockFile.openSync(mode: FileMode.write);
+     } on FileSystemException catch (e) {
+@@ -239,7 +245,7 @@ class Cache {
+     if (_rootOverride != null) {
+       return fs.directory(fs.path.join(_rootOverride.path, 'bin', 'cache'));
+     } else {
+-      return fs.directory(fs.path.join(flutterRoot, 'bin', 'cache'));
++      return fs.directory(fs.path.join(homeDirPath, '.cache', 'flutter'));
+     }
+   }
+