diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix index 3df0ef9917ef..176ae190a339 100644 --- a/pkgs/development/compilers/flutter/default.nix +++ b/pkgs/development/compilers/flutter/default.nix @@ -4,34 +4,31 @@ let getPatches = dir: let files = builtins.attrNames (builtins.readDir dir); in map (f: dir + ("/" + f)) files; - version = "3.3.3"; - channel = "stable"; - filename = "flutter_linux_${version}-${channel}.tar.xz"; - - # Decouples flutter derivation from dart derivation, - # use specific dart version to not need to bump dart derivation when bumping flutter. - dartVersion = "2.18.2"; - dartSourceBase = "https://storage.googleapis.com/dart-archive/channels"; - dartForFlutter = dart.override { - version = dartVersion; - sources = { - "${dartVersion}-x86_64-linux" = fetchurl { - url = "${dartSourceBase}/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip"; - sha256 = "sha256-C3+YjecXLvSmJrLwi9H7TgD9Np0AArRWx3EdBrfQpTU"; + flutterDrv = { version, pname, dartVersion, hash, dartHash }: mkFlutter { + inherit version pname; + dart = dart.override { + version = dartVersion; + sources = { + "${dartVersion}-x86_64-linux" = fetchurl { + url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip"; + sha256 = dartHash; + }; }; }; - }; -in -{ - inherit mkFlutter; - stable = mkFlutter rec { - inherit version; - dart = dartForFlutter; - pname = "flutter"; src = fetchurl { - url = "https://storage.googleapis.com/flutter_infra_release/releases/${channel}/linux/${filename}"; + url = "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${version}-stable.tar.xz"; sha256 = "sha256-MTZeWQUp4/TcPzYIT6eqIKSPUPvn2Mp/thOQzNgpTXg="; }; patches = getPatches ./patches; }; +in +{ + inherit mkFlutter; + stable = flutterDrv { + pname = "flutter"; + version = "3.3.3"; + dartVersion = "2.18.2"; + hash = "sha256-MTZeWQUp4/TcPzYIT6eqIKSPUPvn2Mp/thOQzNgpTXg="; + dartHash = "sha256-C3+YjecXLvSmJrLwi9H7TgD9Np0AArRWx3EdBrfQpTU"; + }; }