Has anyone had success setting up flutter with flakes?
I have tried this: GitHub - Arthurdw/demo-flutter-issue
But am having some issues with gradle.
Has anyone had success setting up flutter with flakes?
I have tried this: GitHub - Arthurdw/demo-flutter-issue
But am having some issues with gradle.
Hi, I see you’ve tried doing Android development with Flutter. Unfortunately, this is something which is kinda difficult atm with nixpkgs and Flutter. I’m not sure how to exactly resolve the gradle issues without any logs for it. However, if you’d like you can join the #flutter+nix:nixos.org
Matrix chat.
The solution I have managed before is Android Studio inside a Flatpak and cloning Flutter’s repo. However, that isn’t an option for me anymore due to being on aarch64 systems nowadays.
To build android
dev environment with home-manager
, I apply a nix
script:
{ pkgs, lib, ... }: {
home.packages = with pkgs; [
zulu17
# required by android sdkmanager
coreutils
gawk
(pkgs.stdenv.mkDerivation{
name = "sdmanager-unofficial";
src = pkgs.sdkmanager;
installPhase = ''
mkdir -p $out/bin
cp ${pkgs.sdkmanager}/bin/sdkmanager $out/bin/sdkmanager-unofficial
'';
})
];
home.sessionVariables = {
JAVA_HOME = pkgs.zulu17.override { };
ANDROID_SDK_ROOT = "$HOME/android-sdk/";
ANDROID_AVD_HOME = "$HOME/.config/.android/avd";
};
home.sessionPath = [
"$ANDROID_SDK_ROOT/cmdline-tools/latest/bin"
"$ANDROID_SDK_ROOT/platform-tools"
"$ANDROID_SDK_ROOT/build-tools/35.0.0"
"$ANDROID_SDK_ROOT/emulator"
];
home.activation.sdkmanager = lib.hm.dag.entryAfter["writeBoundary"] ''
export ANDROID_SDK_ROOT="$HOME/android-sdk/"
mkdir -p "$ANDROID_SDK_ROOT"
$HOME/.nix-profile/bin/sdkmanager-unofficial "cmdline-tools;latest"
export PATH=${pkgs.gawk}/bin/:$PATH
$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager "platform-tools" "build-tools;35.0.0" "platforms;android-35"
$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager "emulator" "system-images;android-35;google_apis_playstore;arm64-v8a"
$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --licenses
$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/avdmanager create avd --name fhone1 --package "system-images;android-35;google_apis_playstore;arm64-v8a" --device "pixel_6"
'';
}