let
version = "2.8.1";
channel = "stable";
dartVersion = "2.15.1";
dartSourceBase = "https://storage.googleapis.com/dart-archive/channels";
filename = "flutter_linux_${version}-${channel}.tar.xz";
in
{ pkgs ? import <nixpkgs> {
overlays = [
(self: super: {
pkgs.myFlutter = pkgs.flutter.override {
myDartForFlutter = pkgs.dart.override {
version = dartVersion;
sources = {
"${dartVersion}-x86_64-linux" = super.fetchurl {
url = "${dartSourceBase}/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip";
sha256 = "0f45dcaa53b4090b69b277b885ea9a4cb3a41589c9119113e1b978ad55ce335f";
};
};
};
stable = super.mkFlutter.override {
dart = self.myDartForFlutter;
pname = "flutter";
src = super.fetchurl {
url = "https://storage.googleapis.com/flutter_infra_release/releases/${channel}/linux/${filename}";
sha256 = "47ecdcc5481c51a8fb323f154f8044cb309d55fa8614a97c89bc7c08e43abe01";
};
};
};
})
];
}
}:
pkgs.mkShell {
# nativeBuildInputs is usually what you want -- tools you need to run
nativeBuildInputs = [
pkgs.myFlutter
];
}
These is my shell.nix
But it doesn’t work.
How to specific a flutter version overlay, thanks.