about summary refs log tree commit diff
path: root/pkgs/development/compilers/flutter/flutter.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/flutter/flutter.nix')
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix12
1 files changed, 9 insertions, 3 deletions
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
index a566a543e4184..92d635be96781 100644
--- a/pkgs/development/compilers/flutter/flutter.nix
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -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/
       '';