about summary refs log tree commit diff
path: root/pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in')
-rw-r--r--pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in b/pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in
new file mode 100644
index 0000000000000..89343a3231652
--- /dev/null
+++ b/pkgs/development/compilers/flutter/update/get-artifact-hashes.nix.in
@@ -0,0 +1,48 @@
+{ callPackage
+, flutterPackages
+, lib
+, symlinkJoin
+,
+}:
+let
+  nixpkgsRoot = "@nixpkgs_root@";
+  flutterCompactVersion = "@flutter_compact_version@";
+
+  flutterPlatforms = [
+    "android"
+    "ios"
+    "web"
+    "linux"
+    "windows"
+    "macos"
+    "fuchsia"
+    "universal"
+  ];
+  systemPlatforms = [
+    "x86_64-linux"
+    "aarch64-linux"
+    "x86_64-darwin"
+  ];
+
+  derivations =
+    lib.foldl'
+      (
+        acc: flutterPlatform:
+          acc
+          ++ (map
+            (systemPlatform:
+              callPackage "${nixpkgsRoot}/pkgs/development/compilers/flutter/artifacts/fetch-artifacts.nix" {
+                flutter = flutterPackages."v${flutterCompactVersion}";
+                inherit flutterPlatform;
+                inherit systemPlatform;
+                hash = "";
+              })
+            systemPlatforms)
+      ) [ ]
+      flutterPlatforms;
+in
+symlinkJoin {
+  name = "evaluate-derivations";
+  paths = derivations;
+}
+