about summary refs log tree commit diff
path: root/pkgs/by-name/fl/flet-client-flutter/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/fl/flet-client-flutter/package.nix')
-rw-r--r--pkgs/by-name/fl/flet-client-flutter/package.nix30
1 files changed, 23 insertions, 7 deletions
diff --git a/pkgs/by-name/fl/flet-client-flutter/package.nix b/pkgs/by-name/fl/flet-client-flutter/package.nix
index 8404c0ff24f56..15b3c083fb334 100644
--- a/pkgs/by-name/fl/flet-client-flutter/package.nix
+++ b/pkgs/by-name/fl/flet-client-flutter/package.nix
@@ -1,26 +1,30 @@
 { lib
 , fetchFromGitHub
 , pkg-config
-, flutter
+, flutter319
 , gst_all_1
 , libunwind
 , makeWrapper
 , mimalloc
 , orc
-, nix-update-script
+, yq
+, runCommand
+, gitUpdater
 , mpv-unwrapped
 , libplacebo
+, _experimental-update-script-combinators
+, flet-client-flutter
 }:
 
-flutter.buildFlutterApplication rec {
+flutter319.buildFlutterApplication rec {
   pname = "flet-client-flutter";
-  version = "0.22.0";
+  version = "0.22.1";
 
   src = fetchFromGitHub {
     owner = "flet-dev";
     repo = "flet";
     rev = "v${version}";
-    hash = "sha256-uN6PxgltbGlSocF561W6Dpo9cPOsvGAsRwZ8nER+5x4=";
+    hash = "sha256-mjqPIm4LspW1LB4H08FVwEN0JOwTPTLaUxOjZ3n6u8A=";
   };
 
   sourceRoot = "${src.name}/client";
@@ -51,10 +55,22 @@ flutter.buildFlutterApplication rec {
     ++ libplacebo.buildInputs
   ;
 
-  passthru.updateScript = nix-update-script { };
+  passthru = {
+    pubspecSource = runCommand "pubspec.lock.json" {
+        buildInputs = [ yq ];
+        inherit (flet-client-flutter) src;
+      } ''
+      cat $src/client/pubspec.lock | yq > $out
+    '';
+
+    updateScript = _experimental-update-script-combinators.sequence [
+      (gitUpdater { rev-prefix = "v"; })
+      (_experimental-update-script-combinators.copyAttrOutputToFile "flet-client-flutter.pubspecSource" ./pubspec.lock.json)
+    ];
+  };
 
   meta = {
-    description = "A framework that enables you to easily build realtime web, mobile, and desktop apps in Python. The frontend part";
+    description = "Framework that enables you to easily build realtime web, mobile, and desktop apps in Python. The frontend part";
     homepage = "https://flet.dev/";
     changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}";
     license = lib.licenses.asl20;