1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
{
pkgs,
username,
...
}:
{
environment.systemPackages = with pkgs; [
gcc
clang_19 # 这个版本需要和flutter 对应
cmake
];
home-manager = {
users.${username} = {
home.packages = with pkgs; [
#flutter327
flutter332
# unstable.flutter # 3.29.2-sdk-links 2025 04 04
jdk17
android-tools # adb fastboot ...
# gcc, cmake, ninja, gitlint, jq, ripgrep, pciutils, usbutils, atk, cairo, libepoxy, gdk-pixbuf, glib, glibc, gtk3, harfbuzz, pango, pcre, pkg-config, xorg.libX11, xorg.libX11.dev 已移动到 lang-common.nix
# development tools ========
];
home.sessionVariables = {
D_LIBRARY_PATH =
with pkgs;
lib.makeLibraryPath [
atk
cairo
libepoxy
gdk-pixbuf
glib
gtk3
harfbuzz
pango
];
#CHROME_EXECUTABLE = "${pkgs.chromium}/bin/chromium";
# flatpak info org.chromium.Chromium
#CHROME_EXECUTABLE = "/home/${username}/.local/share/flatpak/app/org.chromium.Chromium/current/active/files/bin/chromium";
CHROME_EXECUTABLE = "${pkgs.brave}/bin/brave";
ANDROID_HOME = "/home/${username}/android_flutter/android-sdk";
ANDROID_SDK_ROOT = "/home/${username}/android_flutter/android-sdk";
# MY_ANDROID_STUDIO_DIR = "${pkgs.android-studio}";
MY_ANDROID_STUDIO_DIR = "/home/${username}/.local/share/JetBrains/Toolbox/apps/android-studio";
JAVA_HOME = "${pkgs.jdk17}";
# Fix an issue with Flutter using an older version of aapt2, which does not know
# an used parameter.
GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=/home/${username}/android_flutter/android-sdk/build-tools/34.0.0/aapt2";
#GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=$ANDROID_SDK_ROOT/build-tools/34.0.0/aapt2";
# 手动执行 flutter config --android-studio-dir $MY_ANDROID_STUDIO_DIR
# flutter doctor --verbose
# echo $ANDROID_HOME && echo $ANDROID_SDK_ROOT
# flutter doctor --android-licenses
# $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --list_installed
PUB_HOSTED_URL = "https://pub.flutter-io.cn";
FLUTTER_STORAGE_BASE_URL = "https://storage.flutter-io.cn";
CXX = "${pkgs.clang_19}/bin/clang++";
};
};
};
#programs.adb.enable = true;
}
|