flutter327: init at 3.27.0-0.1.pre

+1 -1
pkgs/development/compilers/flutter/engine/source.nix
···
rm -rf $out/src/{buildtools,fuchsia}
rm -rf $out/src/flutter/{buildtools,prebuilts,third_party/swiftshader,third_party/gn/.versions}
-
rm -rf $out/src/flutter/{third_party/dart/tools/sdks/dart-sdk,third_party/ninja/ninja}
rm -rf $out/src/third_party/{dart/tools/sdks/dart-sdk,libcxx/test}
rm -rf $out/.cipd $out/.gclient $out/.gclient_entries $out/.gclient_previous_custom_vars $out/.gclient_previous_sync_commits
···
rm -rf $out/src/{buildtools,fuchsia}
rm -rf $out/src/flutter/{buildtools,prebuilts,third_party/swiftshader,third_party/gn/.versions}
+
rm -rf $out/src/flutter/{third_party/dart/tools/sdks/dart-sdk,third_party/ninja/ninja,third_party/java}
rm -rf $out/src/third_party/{dart/tools/sdks/dart-sdk,libcxx/test}
rm -rf $out/.cipd $out/.gclient $out/.gclient_entries $out/.gclient_previous_custom_vars $out/.gclient_previous_sync_commits
+4
pkgs/development/compilers/flutter/engine/tools.nix
···
sed -i 's/''${platform}/${host-constants.platform}/g' "$ensureFile"
sed -i 's/gn\/gn\/${stdenv-constants.platform}/gn\/gn\/${constants.platform}/g' "$ensureFile"
else
params="$params $1"
shift 1
···
sed -i 's/''${platform}/${host-constants.platform}/g' "$ensureFile"
sed -i 's/gn\/gn\/${stdenv-constants.platform}/gn\/gn\/${constants.platform}/g' "$ensureFile"
+
+
if grep flutter/java/openjdk "$ensureFile" >/dev/null; then
+
sed -i '/src\/flutter\/third_party\/java\/openjdk/,+2 d' "$ensureFile"
+
fi
else
params="$params $1"
shift 1
+6 -4
pkgs/development/compilers/flutter/update/get-engine-hashes.nix.in
···
-
{ callPackage, symlinkJoin, lib }:
let
nixpkgsRoot = "@nixpkgs_root@";
version = "@flutter_version@";
···
++ (map
(targetPlatform:
callPackage "${nixpkgsRoot}/pkgs/development/compilers/flutter/engine/source.nix" {
-
targetPlatform = lib.systems.elaborate targetPlatform;
-
hostPlatform = lib.systems.elaborate buildPlatform;
-
buildPlatform = lib.systems.elaborate buildPlatform;
flutterVersion = version;
version = engineVersion;
···
+
{ callPackage, symlinkJoin, stdenv, lib }:
let
nixpkgsRoot = "@nixpkgs_root@";
version = "@flutter_version@";
···
++ (map
(targetPlatform:
callPackage "${nixpkgsRoot}/pkgs/development/compilers/flutter/engine/source.nix" {
+
stdenv = stdenv.override {
+
targetPlatform = lib.systems.elaborate targetPlatform;
+
hostPlatform = lib.systems.elaborate buildPlatform;
+
buildPlatform = lib.systems.elaborate buildPlatform;
+
};
flutterVersion = version;
version = engineVersion;
+1056
pkgs/development/compilers/flutter/versions/3_27/data.json
···
···
+
{
+
"version": "3.27.0-0.1.pre",
+
"engineVersion": "af0f0d559c8a87d912a20971bbd84afc80a54b0f",
+
"engineSwiftShaderHash": "sha256-mRLCvhNkmHz7Rv6GzXkY7OB1opBSq+ATWZ466qZdgto=",
+
"engineSwiftShaderRev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f",
+
"channel": "beta",
+
"engineHashes": {
+
"aarch64-linux": {
+
"aarch64-linux": "sha256-xEUUengFzRbQhFB7jxTBd8eTMWUhyBTTKyT/ObuyD/o=",
+
"x86_64-linux": "sha256-xEUUengFzRbQhFB7jxTBd8eTMWUhyBTTKyT/ObuyD/o="
+
},
+
"x86_64-linux": {
+
"aarch64-linux": "sha256-xEUUengFzRbQhFB7jxTBd8eTMWUhyBTTKyT/ObuyD/o=",
+
"x86_64-linux": "sha256-xEUUengFzRbQhFB7jxTBd8eTMWUhyBTTKyT/ObuyD/o="
+
}
+
},
+
"dartVersion": "3.6.0-334.3.beta",
+
"dartHash": {
+
"x86_64-linux": "sha256-xErMxL9HK+MSq++DcSiV95TInMPvKkc9tqQzzMRPYDU=",
+
"aarch64-linux": "sha256-1grsqBcTmfRlMMTB1rWHVVyzZS2RLA10AADkrV4kk9I=",
+
"x86_64-darwin": "sha256-4YwpUjyFXTk6/h5OMbOKwd0gTEX0CmHo0TByVs0milA=",
+
"aarch64-darwin": "sha256-bp2tSs+JDSj3xqurc2NOOfmhbq7u/meFbA7VZPNAyZ8="
+
},
+
"flutterHash": "sha256-M9zETok2sIJP8V8QlvbQdobhnM0QM6OHiHF5mwUosB4=",
+
"artifactHashes": {
+
"android": {
+
"aarch64-darwin": "sha256-U29WM+8wPYmBifPWXS4TNdZM2ORsFzhV73B82RAH2TU=",
+
"aarch64-linux": "sha256-ABHHLnhJIqm4mT9FLMaMjJzecDgh6rLUJpVIuVqfUZg=",
+
"x86_64-darwin": "sha256-U29WM+8wPYmBifPWXS4TNdZM2ORsFzhV73B82RAH2TU=",
+
"x86_64-linux": "sha256-ABHHLnhJIqm4mT9FLMaMjJzecDgh6rLUJpVIuVqfUZg="
+
},
+
"fuchsia": {
+
"aarch64-darwin": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=",
+
"aarch64-linux": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=",
+
"x86_64-darwin": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=",
+
"x86_64-linux": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk="
+
},
+
"ios": {
+
"aarch64-darwin": "sha256-7faP4+NeYI79nUjts0UPcmWBI4R/CtGOSdhbozrMvYg=",
+
"aarch64-linux": "sha256-7faP4+NeYI79nUjts0UPcmWBI4R/CtGOSdhbozrMvYg=",
+
"x86_64-darwin": "sha256-7faP4+NeYI79nUjts0UPcmWBI4R/CtGOSdhbozrMvYg=",
+
"x86_64-linux": "sha256-7faP4+NeYI79nUjts0UPcmWBI4R/CtGOSdhbozrMvYg="
+
},
+
"linux": {
+
"aarch64-darwin": "sha256-bKyDwhYmbpcOa8Uk68+VP1KNpsbDPFqA95TeO/0oiNk=",
+
"aarch64-linux": "sha256-bKyDwhYmbpcOa8Uk68+VP1KNpsbDPFqA95TeO/0oiNk=",
+
"x86_64-darwin": "sha256-BCGsqIRYtAACYoBsLlV7m5J1P+M8Kyl9tUNj2jql/q4=",
+
"x86_64-linux": "sha256-BCGsqIRYtAACYoBsLlV7m5J1P+M8Kyl9tUNj2jql/q4="
+
},
+
"macos": {
+
"aarch64-darwin": "sha256-vYzob2BxI2Ol/H/K6/D8y9mx07PnDzbaZvZe/ukkVqk=",
+
"aarch64-linux": "sha256-vYzob2BxI2Ol/H/K6/D8y9mx07PnDzbaZvZe/ukkVqk=",
+
"x86_64-darwin": "sha256-vYzob2BxI2Ol/H/K6/D8y9mx07PnDzbaZvZe/ukkVqk=",
+
"x86_64-linux": "sha256-vYzob2BxI2Ol/H/K6/D8y9mx07PnDzbaZvZe/ukkVqk="
+
},
+
"universal": {
+
"aarch64-darwin": "sha256-s6v1V/Xjt8OZgbjQLrSx+1NTKG9YpTpydQxtvmu3Bo8=",
+
"aarch64-linux": "sha256-KmwJH7uDLbdGQQsUhdTjjwuGB39cX7db5PncSQVbJ5U=",
+
"x86_64-darwin": "sha256-iL7+1bwMolQWWWLuXxfnBJWayEGk/KtDnXh+oHpBaZg=",
+
"x86_64-linux": "sha256-0oE3278pTid3n6zVXVxXV+nEzffCs2R1vzS61c76P5g="
+
},
+
"web": {
+
"aarch64-darwin": "sha256-jpT7q3iHqM0mXRNRgKeLJMA9P5c3P8Qg2m5EwnjtlKg=",
+
"aarch64-linux": "sha256-jpT7q3iHqM0mXRNRgKeLJMA9P5c3P8Qg2m5EwnjtlKg=",
+
"x86_64-darwin": "sha256-jpT7q3iHqM0mXRNRgKeLJMA9P5c3P8Qg2m5EwnjtlKg=",
+
"x86_64-linux": "sha256-jpT7q3iHqM0mXRNRgKeLJMA9P5c3P8Qg2m5EwnjtlKg="
+
},
+
"windows": {
+
"x86_64-darwin": "sha256-LJxwZd/lDtrIMfLrMgG+/KOIAlGpW+b/EebMIngIq3w=",
+
"x86_64-linux": "sha256-LJxwZd/lDtrIMfLrMgG+/KOIAlGpW+b/EebMIngIq3w="
+
}
+
},
+
"pubspecLock": {
+
"packages": {
+
"_fe_analyzer_shared": {
+
"dependency": "direct main",
+
"description": {
+
"name": "_fe_analyzer_shared",
+
"sha256": "f6dbf021f4b214d85c79822912c5fcd142a2c4869f01222ad371bc51f9f1c356",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "74.0.0"
+
},
+
"_macros": {
+
"dependency": "transitive",
+
"description": "dart",
+
"source": "sdk",
+
"version": "0.3.3"
+
},
+
"analyzer": {
+
"dependency": "direct main",
+
"description": {
+
"name": "analyzer",
+
"sha256": "f7e8caf82f2d3190881d81012606effdf8a38e6c1ab9e30947149733065f817c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "6.9.0"
+
},
+
"archive": {
+
"dependency": "direct main",
+
"description": {
+
"name": "archive",
+
"sha256": "cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.6.1"
+
},
+
"args": {
+
"dependency": "direct main",
+
"description": {
+
"name": "args",
+
"sha256": "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.5.0"
+
},
+
"async": {
+
"dependency": "direct main",
+
"description": {
+
"name": "async",
+
"sha256": "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.11.0"
+
},
+
"boolean_selector": {
+
"dependency": "direct main",
+
"description": {
+
"name": "boolean_selector",
+
"sha256": "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.1"
+
},
+
"browser_launcher": {
+
"dependency": "direct main",
+
"description": {
+
"name": "browser_launcher",
+
"sha256": "54a2da4d152c34760b87cbd4a9fe8a563379487e57bfcd1b387be394dfa91734",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.2"
+
},
+
"built_collection": {
+
"dependency": "direct main",
+
"description": {
+
"name": "built_collection",
+
"sha256": "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "5.1.1"
+
},
+
"built_value": {
+
"dependency": "direct main",
+
"description": {
+
"name": "built_value",
+
"sha256": "c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "8.9.2"
+
},
+
"checked_yaml": {
+
"dependency": "direct dev",
+
"description": {
+
"name": "checked_yaml",
+
"sha256": "feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.0.3"
+
},
+
"cli_config": {
+
"dependency": "direct main",
+
"description": {
+
"name": "cli_config",
+
"sha256": "ac20a183a07002b700f0c25e61b7ee46b23c309d76ab7b7640a028f18e4d99ec",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.2.0"
+
},
+
"clock": {
+
"dependency": "direct main",
+
"description": {
+
"name": "clock",
+
"sha256": "cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.1"
+
},
+
"collection": {
+
"dependency": "direct dev",
+
"description": {
+
"name": "collection",
+
"sha256": "a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.19.0"
+
},
+
"completion": {
+
"dependency": "direct main",
+
"description": {
+
"name": "completion",
+
"sha256": "f11b7a628e6c42b9edc9b0bc3aa490e2d930397546d2f794e8e1325909d11c60",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.0.1"
+
},
+
"convert": {
+
"dependency": "direct main",
+
"description": {
+
"name": "convert",
+
"sha256": "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.1.1"
+
},
+
"coverage": {
+
"dependency": "direct main",
+
"description": {
+
"name": "coverage",
+
"sha256": "c1fb2dce3c0085f39dc72668e85f8e0210ec7de05345821ff58530567df345a5",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.9.2"
+
},
+
"crypto": {
+
"dependency": "direct main",
+
"description": {
+
"name": "crypto",
+
"sha256": "ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.5"
+
},
+
"csslib": {
+
"dependency": "direct main",
+
"description": {
+
"name": "csslib",
+
"sha256": "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.0.0"
+
},
+
"dap": {
+
"dependency": "direct main",
+
"description": {
+
"name": "dap",
+
"sha256": "c0e53b52c9529d901329045afc4c5acb04304a28acde4b54ab0a08a93da546aa",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.3.0"
+
},
+
"dds": {
+
"dependency": "direct main",
+
"description": {
+
"name": "dds",
+
"sha256": "c90723eb1f1402429c57f717550ce5af80288d74a27c45ccbe754a0e3e038f95",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.2.7"
+
},
+
"dds_service_extensions": {
+
"dependency": "direct main",
+
"description": {
+
"name": "dds_service_extensions",
+
"sha256": "390ae1d0128bb43ffe11f8e3c6cd3a481c1920492d1026883d379cee50bdf1a2",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.0.0"
+
},
+
"devtools_shared": {
+
"dependency": "direct main",
+
"description": {
+
"name": "devtools_shared",
+
"sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "10.0.2"
+
},
+
"dtd": {
+
"dependency": "direct main",
+
"description": {
+
"name": "dtd",
+
"sha256": "6e4e508c0d03e12e2c96f21faa0e5acc191f9431ecd02adb8daee64dbfae6b86",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.3.0"
+
},
+
"dwds": {
+
"dependency": "direct main",
+
"description": {
+
"name": "dwds",
+
"sha256": "d0cf9d18511df6b397c40527f3fd8ddb47b7efcc501e703dd94f13cabaf82ffc",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "24.1.0"
+
},
+
"extension_discovery": {
+
"dependency": "direct main",
+
"description": {
+
"name": "extension_discovery",
+
"sha256": "de1fce715ab013cdfb00befc3bdf0914bea5e409c3a567b7f8f144bc061611a7",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.0"
+
},
+
"fake_async": {
+
"dependency": "direct main",
+
"description": {
+
"name": "fake_async",
+
"sha256": "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.3.1"
+
},
+
"ffi": {
+
"dependency": "direct main",
+
"description": {
+
"name": "ffi",
+
"sha256": "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.3"
+
},
+
"file": {
+
"dependency": "direct main",
+
"description": {
+
"name": "file",
+
"sha256": "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "7.0.0"
+
},
+
"file_testing": {
+
"dependency": "direct dev",
+
"description": {
+
"name": "file_testing",
+
"sha256": "0aaadb4025bd350403f4308ad6c4cea953278d9407814b8342558e4946840fb5",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.0"
+
},
+
"fixnum": {
+
"dependency": "direct main",
+
"description": {
+
"name": "fixnum",
+
"sha256": "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.0"
+
},
+
"flutter_template_images": {
+
"dependency": "direct main",
+
"description": {
+
"name": "flutter_template_images",
+
"sha256": "fd3e55af73c577b9e3f88d4080d3e366cb5c8ef3fbd50b94dfeca56bb0235df6",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.2.0"
+
},
+
"frontend_server_client": {
+
"dependency": "direct main",
+
"description": {
+
"name": "frontend_server_client",
+
"sha256": "f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.0.0"
+
},
+
"glob": {
+
"dependency": "direct main",
+
"description": {
+
"name": "glob",
+
"sha256": "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.2"
+
},
+
"graphs": {
+
"dependency": "direct main",
+
"description": {
+
"name": "graphs",
+
"sha256": "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.3.2"
+
},
+
"html": {
+
"dependency": "direct main",
+
"description": {
+
"name": "html",
+
"sha256": "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.15.4"
+
},
+
"http": {
+
"dependency": "direct main",
+
"description": {
+
"name": "http",
+
"sha256": "b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.2.2"
+
},
+
"http_multi_server": {
+
"dependency": "direct main",
+
"description": {
+
"name": "http_multi_server",
+
"sha256": "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.2.1"
+
},
+
"http_parser": {
+
"dependency": "direct main",
+
"description": {
+
"name": "http_parser",
+
"sha256": "40f592dd352890c3b60fec1b68e786cefb9603e05ff303dbc4dda49b304ecdf4",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.1.0"
+
},
+
"intl": {
+
"dependency": "direct main",
+
"description": {
+
"name": "intl",
+
"sha256": "d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.19.0"
+
},
+
"io": {
+
"dependency": "direct main",
+
"description": {
+
"name": "io",
+
"sha256": "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.0.4"
+
},
+
"js": {
+
"dependency": "direct main",
+
"description": {
+
"name": "js",
+
"sha256": "c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.7.1"
+
},
+
"json_annotation": {
+
"dependency": "direct dev",
+
"description": {
+
"name": "json_annotation",
+
"sha256": "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.9.0"
+
},
+
"json_rpc_2": {
+
"dependency": "direct main",
+
"description": {
+
"name": "json_rpc_2",
+
"sha256": "5e469bffa23899edacb7b22787780068d650b106a21c76db3c49218ab7ca447e",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.2"
+
},
+
"logging": {
+
"dependency": "direct main",
+
"description": {
+
"name": "logging",
+
"sha256": "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.2.0"
+
},
+
"macros": {
+
"dependency": "transitive",
+
"description": {
+
"name": "macros",
+
"sha256": "1d9e801cd66f7ea3663c45fc708450db1fa57f988142c64289142c9b7ee80656",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.1.3-main.0"
+
},
+
"matcher": {
+
"dependency": "direct main",
+
"description": {
+
"name": "matcher",
+
"sha256": "d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.12.16+1"
+
},
+
"meta": {
+
"dependency": "direct main",
+
"description": {
+
"name": "meta",
+
"sha256": "bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.15.0"
+
},
+
"mime": {
+
"dependency": "direct main",
+
"description": {
+
"name": "mime",
+
"sha256": "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.0.6"
+
},
+
"multicast_dns": {
+
"dependency": "direct main",
+
"description": {
+
"name": "multicast_dns",
+
"sha256": "982c4cc4cda5f98dd477bddfd623e8e4bd1014e7dbf9e7b05052e14a5b550b99",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.3.2+7"
+
},
+
"mustache_template": {
+
"dependency": "direct main",
+
"description": {
+
"name": "mustache_template",
+
"sha256": "a46e26f91445bfb0b60519be280555b06792460b27b19e2b19ad5b9740df5d1c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.0.0"
+
},
+
"native_assets_builder": {
+
"dependency": "direct main",
+
"description": {
+
"name": "native_assets_builder",
+
"sha256": "ad76e66cc1ca7aa922d682651aee2663cd80e6ba483a346d13a8c40f604ebfd9",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.8.3"
+
},
+
"native_assets_cli": {
+
"dependency": "direct main",
+
"description": {
+
"name": "native_assets_cli",
+
"sha256": "db902509468ec2a6c6d11fa9ce02805ede280e8dbfb5f0014ef3de8483cadfce",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.8.0"
+
},
+
"native_stack_traces": {
+
"dependency": "direct main",
+
"description": {
+
"name": "native_stack_traces",
+
"sha256": "8ba566c10ea781491c203876b04b9bdcf19dfbe17b9e486869f20eaae0ee470f",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.6.0"
+
},
+
"node_preamble": {
+
"dependency": "direct main",
+
"description": {
+
"name": "node_preamble",
+
"sha256": "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.0.2"
+
},
+
"package_config": {
+
"dependency": "direct main",
+
"description": {
+
"name": "package_config",
+
"sha256": "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.0"
+
},
+
"path": {
+
"dependency": "direct main",
+
"description": {
+
"name": "path",
+
"sha256": "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.9.0"
+
},
+
"petitparser": {
+
"dependency": "direct main",
+
"description": {
+
"name": "petitparser",
+
"sha256": "c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "6.0.2"
+
},
+
"platform": {
+
"dependency": "direct main",
+
"description": {
+
"name": "platform",
+
"sha256": "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.1.5"
+
},
+
"pool": {
+
"dependency": "direct main",
+
"description": {
+
"name": "pool",
+
"sha256": "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.5.1"
+
},
+
"process": {
+
"dependency": "direct main",
+
"description": {
+
"name": "process",
+
"sha256": "21e54fd2faf1b5bdd5102afd25012184a6793927648ea81eea80552ac9405b32",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "5.0.2"
+
},
+
"pub_semver": {
+
"dependency": "direct main",
+
"description": {
+
"name": "pub_semver",
+
"sha256": "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.4"
+
},
+
"pubspec_parse": {
+
"dependency": "direct dev",
+
"description": {
+
"name": "pubspec_parse",
+
"sha256": "c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.3.0"
+
},
+
"shelf": {
+
"dependency": "direct main",
+
"description": {
+
"name": "shelf",
+
"sha256": "e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.4.2"
+
},
+
"shelf_packages_handler": {
+
"dependency": "direct main",
+
"description": {
+
"name": "shelf_packages_handler",
+
"sha256": "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.2"
+
},
+
"shelf_proxy": {
+
"dependency": "direct main",
+
"description": {
+
"name": "shelf_proxy",
+
"sha256": "a71d2307f4393211930c590c3d2c00630f6c5a7a77edc1ef6436dfd85a6a7ee3",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.0.4"
+
},
+
"shelf_static": {
+
"dependency": "direct main",
+
"description": {
+
"name": "shelf_static",
+
"sha256": "c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.3"
+
},
+
"shelf_web_socket": {
+
"dependency": "direct main",
+
"description": {
+
"name": "shelf_web_socket",
+
"sha256": "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.0.0"
+
},
+
"source_map_stack_trace": {
+
"dependency": "direct main",
+
"description": {
+
"name": "source_map_stack_trace",
+
"sha256": "c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.2"
+
},
+
"source_maps": {
+
"dependency": "direct main",
+
"description": {
+
"name": "source_maps",
+
"sha256": "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.10.12"
+
},
+
"source_span": {
+
"dependency": "direct main",
+
"description": {
+
"name": "source_span",
+
"sha256": "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.10.0"
+
},
+
"sprintf": {
+
"dependency": "direct main",
+
"description": {
+
"name": "sprintf",
+
"sha256": "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "7.0.0"
+
},
+
"sse": {
+
"dependency": "direct main",
+
"description": {
+
"name": "sse",
+
"sha256": "111a05843ea9035042975744fe61d5e8b95bc4d38656dbafc5532da77a0bb89a",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.1.6"
+
},
+
"stack_trace": {
+
"dependency": "direct main",
+
"description": {
+
"name": "stack_trace",
+
"sha256": "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.12.0"
+
},
+
"standard_message_codec": {
+
"dependency": "direct main",
+
"description": {
+
"name": "standard_message_codec",
+
"sha256": "fc7dd712d191b7e33196a0ecf354c4573492bb95995e7166cb6f73b047f9cae0",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.0.1+4"
+
},
+
"stream_channel": {
+
"dependency": "direct main",
+
"description": {
+
"name": "stream_channel",
+
"sha256": "ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.1.2"
+
},
+
"string_scanner": {
+
"dependency": "direct main",
+
"description": {
+
"name": "string_scanner",
+
"sha256": "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.3.0"
+
},
+
"sync_http": {
+
"dependency": "direct main",
+
"description": {
+
"name": "sync_http",
+
"sha256": "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.3.1"
+
},
+
"term_glyph": {
+
"dependency": "direct main",
+
"description": {
+
"name": "term_glyph",
+
"sha256": "a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.2.1"
+
},
+
"test": {
+
"dependency": "direct main",
+
"description": {
+
"name": "test",
+
"sha256": "713a8789d62f3233c46b4a90b174737b2c04cb6ae4500f2aa8b1be8f03f5e67f",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.25.8"
+
},
+
"test_api": {
+
"dependency": "direct main",
+
"description": {
+
"name": "test_api",
+
"sha256": "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.7.3"
+
},
+
"test_core": {
+
"dependency": "direct main",
+
"description": {
+
"name": "test_core",
+
"sha256": "12391302411737c176b0b5d6491f466b0dd56d4763e347b6714efbaa74d7953d",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.6.5"
+
},
+
"typed_data": {
+
"dependency": "direct main",
+
"description": {
+
"name": "typed_data",
+
"sha256": "facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.3.2"
+
},
+
"unified_analytics": {
+
"dependency": "direct main",
+
"description": {
+
"name": "unified_analytics",
+
"sha256": "9f3c68cb30faa6d05b920498d2af79eace00fef0bae9beba9f3cda84fdbe46df",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "6.1.4"
+
},
+
"usage": {
+
"dependency": "direct main",
+
"description": {
+
"name": "usage",
+
"sha256": "0bdbde65a6e710343d02a56552eeaefd20b735e04bfb6b3ee025b6b22e8d0e15",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.1.1"
+
},
+
"uuid": {
+
"dependency": "direct main",
+
"description": {
+
"name": "uuid",
+
"sha256": "a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "4.5.1"
+
},
+
"vm_service": {
+
"dependency": "direct main",
+
"description": {
+
"name": "vm_service",
+
"sha256": "f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "14.3.0"
+
},
+
"vm_service_interface": {
+
"dependency": "direct main",
+
"description": {
+
"name": "vm_service_interface",
+
"sha256": "f827453d9a3f8ceae04e389810da26f9b67636bdd13aa2dd9405b110c4daf59c",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.0"
+
},
+
"vm_snapshot_analysis": {
+
"dependency": "direct main",
+
"description": {
+
"name": "vm_snapshot_analysis",
+
"sha256": "5a79b9fbb6be2555090f55b03b23907e75d44c3fd7bdd88da09848aa5a1914c8",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.7.6"
+
},
+
"watcher": {
+
"dependency": "direct main",
+
"description": {
+
"name": "watcher",
+
"sha256": "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.0"
+
},
+
"web": {
+
"dependency": "direct main",
+
"description": {
+
"name": "web",
+
"sha256": "cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.1.0"
+
},
+
"web_socket": {
+
"dependency": "direct main",
+
"description": {
+
"name": "web_socket",
+
"sha256": "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "0.1.6"
+
},
+
"web_socket_channel": {
+
"dependency": "direct main",
+
"description": {
+
"name": "web_socket_channel",
+
"sha256": "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.1"
+
},
+
"webdriver": {
+
"dependency": "direct main",
+
"description": {
+
"name": "webdriver",
+
"sha256": "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.0.4"
+
},
+
"webkit_inspection_protocol": {
+
"dependency": "direct main",
+
"description": {
+
"name": "webkit_inspection_protocol",
+
"sha256": "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "1.2.1"
+
},
+
"xml": {
+
"dependency": "direct main",
+
"description": {
+
"name": "xml",
+
"sha256": "b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "6.5.0"
+
},
+
"yaml": {
+
"dependency": "direct main",
+
"description": {
+
"name": "yaml",
+
"sha256": "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "3.1.2"
+
},
+
"yaml_edit": {
+
"dependency": "direct main",
+
"description": {
+
"name": "yaml_edit",
+
"sha256": "e9c1a3543d2da0db3e90270dbb1e4eebc985ee5e3ffe468d83224472b2194a5f",
+
"url": "https://pub.dev"
+
},
+
"source": "hosted",
+
"version": "2.2.1"
+
}
+
},
+
"sdks": {
+
"dart": ">=3.4.3 <4.0.0"
+
}
+
}
+
}
+19
pkgs/development/compilers/flutter/versions/3_27/patches/deregister-pub-dependencies-artifact.patch
···
···
+
diff --git a/packages/flutter_tools/lib/src/flutter_cache.dart b/packages/flutter_tools/lib/src/flutter_cache.dart
+
index 252021cf78..e50ef0885d 100644
+
--- a/packages/flutter_tools/lib/src/flutter_cache.dart
+
+++ b/packages/flutter_tools/lib/src/flutter_cache.dart
+
@@ -51,14 +51,6 @@ class FlutterCache extends Cache {
+
registerArtifact(IosUsbArtifacts(artifactName, this, platform: platform));
+
}
+
registerArtifact(FontSubsetArtifacts(this, platform: platform));
+
- registerArtifact(PubDependencies(
+
- logger: logger,
+
- // flutter root and pub must be lazily initialized to avoid accessing
+
- // before the version is determined.
+
- flutterRoot: () => Cache.flutterRoot!,
+
- pub: () => pub,
+
- projectFactory: projectFactory,
+
- ));
+
}
+
}
+
+30
pkgs/development/compilers/flutter/versions/3_27/patches/disable-auto-update.patch
···
···
+
diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart
+
index e4e474ab6e..5548599802 100644
+
--- a/packages/flutter_tools/lib/src/runner/flutter_command.dart
+
+++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart
+
@@ -1693,7 +1693,7 @@ Run 'flutter -h' (or 'flutter <command> -h') for available flutter commands and
+
+
// Populate the cache. We call this before pub get below so that the
+
// sky_engine package is available in the flutter cache for pub to find.
+
- if (shouldUpdateCache) {
+
+ if (false) {
+
// First always update universal artifacts, as some of these (e.g.
+
// ios-deploy on macOS) are required to determine `requiredArtifacts`.
+
final bool offline;
+
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 50783f8435..db94062840 100644
+
--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+
+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+
@@ -377,11 +377,7 @@ class FlutterCommandRunner extends CommandRunner<void> {
+
globals.analytics.suppressTelemetry();
+
}
+
+
- globals.flutterVersion.ensureVersionFile();
+
final bool machineFlag = topLevelResults[FlutterGlobalOptions.kMachineFlag] as bool? ?? false;
+
- if (await _shouldCheckForUpdates(topLevelResults, topLevelMachineFlag: machineFlag)) {
+
- await globals.flutterVersion.checkFlutterVersionFreshness();
+
- }
+
+
// See if the user specified a specific device.
+
final String? specifiedDeviceId = topLevelResults[FlutterGlobalOptions.kDeviceIdOption] as String?;
+
+69
pkgs/development/compilers/flutter/versions/3_27/patches/fix-ios-build-xcode-backend-sh.patch
···
···
+
From 6df275df3b8694daf16302b407520e3b1dee6724 Mon Sep 17 00:00:00 2001
+
From: Philip Hayes <philiphayes9@gmail.com>
+
Date: Thu, 12 Sep 2024 13:23:00 -0700
+
Subject: [PATCH] fix: cleanup xcode_backend.sh to fix iOS build w/
+
`NixOS/nixpkgs` flutter
+
+
This patch cleans up `xcode_backend.sh`. It now effectively just runs
+
`exec $FLUTTER_ROOT/bin/dart ./xcode_backend.dart`.
+
+
The previous `xcode_backend.sh` tries to discover `$FLUTTER_ROOT` from
+
argv[0], even though its presence is already guaranteed (the wrapped
+
`xcode_backend.dart` also relies on this env).
+
+
When using nixpkgs flutter, the flutter SDK directory is composed of several
+
layers, joined together using symlinks (called a `symlinkJoin`). Without this
+
patch, the auto-discover traverses the symlinks into the wrong layer, and so it
+
uses an "unwrapped" `dart` command instead of a "wrapped" dart that sets some
+
important envs/flags (like `$FLUTTER_ROOT`).
+
+
Using the "unwrapped" dart then manifests in this error when compiling, since
+
it doesn't see the ios build-support artifacts:
+
+
```
+
$ flutter run -d iphone
+
Running Xcode build...
+
Xcode build done. 6.4s
+
Failed to build iOS app
+
Error (Xcode): Target debug_unpack_ios failed: Error: Flutter failed to create a directory at "/<nix-store>/XXXX-flutter-3.24.1-unwrapped/bin/cache/artifacts".
+
```
+
---
+
packages/flutter_tools/bin/xcode_backend.sh | 25 ++++-----------------
+
1 file changed, 4 insertions(+), 21 deletions(-)
+
+
diff --git a/packages/flutter_tools/bin/xcode_backend.sh b/packages/flutter_tools/bin/xcode_backend.sh
+
index 2889d7c8e4..48b9d06c6e 100755
+
--- a/packages/flutter_tools/bin/xcode_backend.sh
+
+++ b/packages/flutter_tools/bin/xcode_backend.sh
+
@@ -6,24 +6,7 @@
+
# exit on error, or usage of unset var
+
set -euo pipefail
+
+
-# Needed because if it is set, cd may print the path it changed to.
+
-unset CDPATH
+
-
+
-function follow_links() (
+
- cd -P "$(dirname -- "$1")"
+
- file="$PWD/$(basename -- "$1")"
+
- while [[ -h "$file" ]]; do
+
- cd -P "$(dirname -- "$file")"
+
- file="$(readlink -- "$file")"
+
- cd -P "$(dirname -- "$file")"
+
- file="$PWD/$(basename -- "$file")"
+
- done
+
- echo "$file"
+
-)
+
-
+
-PROG_NAME="$(follow_links "${BASH_SOURCE[0]}")"
+
-BIN_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)"
+
-FLUTTER_ROOT="$BIN_DIR/../../.."
+
-DART="$FLUTTER_ROOT/bin/dart"
+
-
+
-"$DART" "$BIN_DIR/xcode_backend.dart" "$@"
+
+# Run `dart ./xcode_backend.dart` with the dart from $FLUTTER_ROOT.
+
+dart="${FLUTTER_ROOT}/bin/dart"
+
+xcode_backend_dart="${BASH_SOURCE[0]%.sh}.dart"
+
+exec "${dart}" "${xcode_backend_dart}" "$@"
+
--
+
2.46.0
+
+44
pkgs/development/compilers/flutter/versions/3_27/patches/gradle-flutter-tools-wrapper.patch
···
···
+
This patch introduces an intermediate Gradle build step to alter the behavior
+
of flutter_tools' Gradle project, specifically moving the creation of `build`
+
and `.gradle` directories from within the Nix Store to somewhere in `$HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev`.
+
+
Without this patch, flutter_tools' Gradle project tries to generate `build` and `.gradle`
+
directories within the Nix Store. Resulting in read-only errors when trying to build a
+
Flutter Android app at runtime.
+
+
This patch takes advantage of the fact settings.gradle takes priority over settings.gradle.kts to build the intermediate Gradle project
+
when a Flutter app runs `includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")`
+
+
`rootProject.buildFileName = "/dev/null"` so that the intermediate project doesn't use `build.gradle.kts` that's in the same directory.
+
+
The intermediate project makes a `settings.gradle` file in `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/` and `includeBuild`s it.
+
This Gradle project will build the actual `packages/flutter_tools/gradle` project by setting
+
`rootProject.projectDir = new File("$settingsDir")` and `apply from: new File("$settingsDir/settings.gradle.kts")`.
+
+
Now the `.gradle` will be built in `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/`, but `build` doesn't.
+
To move `build` to `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/` as well, we need to set `buildDirectory`.
+
diff --git a/packages/flutter_tools/gradle/settings.gradle b/packages/flutter_tools/gradle/settings.gradle
+
new file mode 100644
+
index 0000000000..b2485c94b4
+
--- /dev/null
+
+++ b/packages/flutter_tools/gradle/settings.gradle
+
@@ -0,0 +1,19 @@
+
+rootProject.buildFileName = "/dev/null"
+
+
+
+def engineShortRev = (new File("$settingsDir/../../../bin/internal/engine.version")).text.take(10)
+
+def dir = new File("$System.env.HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev")
+
+dir.mkdirs()
+
+def file = new File(dir, "settings.gradle")
+
+
+
+file.text = """
+
+rootProject.projectDir = new File("$settingsDir")
+
+apply from: new File("$settingsDir/settings.gradle.kts")
+
+
+
+gradle.allprojects { project ->
+
+ project.beforeEvaluate {
+
+ project.layout.buildDirectory = new File("$dir/build")
+
+ }
+
+}
+
+"""
+
+
+
+includeBuild(dir)
+1
pkgs/top-level/all-packages.nix
···
flutterPackages-source = recurseIntoAttrs (callPackage ../development/compilers/flutter { useNixpkgsEngine = true; });
flutterPackages = flutterPackages-bin;
flutter = flutterPackages.stable;
flutter326 = flutterPackages.v3_26;
flutter324 = flutterPackages.v3_24;
flutter319 = flutterPackages.v3_19;
···
flutterPackages-source = recurseIntoAttrs (callPackage ../development/compilers/flutter { useNixpkgsEngine = true; });
flutterPackages = flutterPackages-bin;
flutter = flutterPackages.stable;
+
flutter327 = flutterPackages.v3_27;
flutter326 = flutterPackages.v3_26;
flutter324 = flutterPackages.v3_24;
flutter319 = flutterPackages.v3_19;