flutter: Don't use IFD to read the engine version
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
{ callPackage, fetchzip, dart }:
|
||||
let
|
||||
mkFlutter = { version, patches, dart, src }: callPackage ./flutter.nix { inherit version patches dart src; };
|
||||
mkFlutter = { version, engineVersion, patches, dart, src }: callPackage ./flutter.nix { inherit version engineVersion patches dart src; };
|
||||
wrapFlutter = flutter: callPackage ./wrapper.nix { inherit flutter; };
|
||||
getPatches = dir:
|
||||
let files = builtins.attrNames (builtins.readDir dir);
|
||||
in map (f: dir + ("/" + f)) files;
|
||||
flutterDrv = { version, dartVersion, hash, dartHash, patches }: mkFlutter {
|
||||
inherit version patches;
|
||||
flutterDrv = { version, engineVersion, dartVersion, hash, dartHash, patches }: mkFlutter {
|
||||
inherit version engineVersion patches;
|
||||
dart = dart.override {
|
||||
version = dartVersion;
|
||||
sources = {
|
||||
@@ -32,6 +32,7 @@ in
|
||||
inherit mkFlutter wrapFlutter flutterDrv flutter3Patches flutter2Patches;
|
||||
stable = flutterDrv {
|
||||
version = "3.7.12";
|
||||
engineVersion = "1a65d409c7a1438a34d21b60bf30a6fd5db59314";
|
||||
dartVersion = "2.19.6";
|
||||
hash = "sha256-5ExDBQXIpoZ5NwS66seY3m9/V8xDiyq/RdzldAyHdEE=";
|
||||
dartHash = {
|
||||
@@ -43,6 +44,7 @@ in
|
||||
|
||||
v2 = flutterDrv {
|
||||
version = "2.10.5";
|
||||
engineVersion = "57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab";
|
||||
dartVersion = "2.16.2";
|
||||
hash = "sha256-MxaWvlcCfXN8gsC116UMzqb4LgixHL3YjrGWy7WYgW4=";
|
||||
dartHash = {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{ version
|
||||
, engineVersion
|
||||
, patches
|
||||
, dart
|
||||
, src
|
||||
@@ -29,9 +30,7 @@
|
||||
let
|
||||
engineArtifactDirectory =
|
||||
let
|
||||
engineArtifacts = callPackage ./engine-artifacts {
|
||||
engineVersion = lib.removeSuffix "\n" (builtins.readFile (src + /bin/internal/engine.version));
|
||||
};
|
||||
engineArtifacts = callPackage ./engine-artifacts { inherit engineVersion; };
|
||||
in
|
||||
runCommandLocal "flutter-engine-artifacts-${version}" { }
|
||||
(
|
||||
@@ -81,6 +80,13 @@ let
|
||||
|
||||
buildInputs = [ git ];
|
||||
|
||||
preConfigure = ''
|
||||
if [ "$(< bin/internal/engine.version)" != '${engineVersion}' ]; then
|
||||
echo 1>&2 "The given engine version (${engineVersion}) does not match the version required by the Flutter SDK ($(< bin/internal/engine.version))."
|
||||
exit 1
|
||||
fi
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs --build ./bin/
|
||||
'';
|
||||
|
||||
Reference in New Issue
Block a user