33 lines
1.6 KiB
JSON
33 lines
1.6 KiB
JSON
|
|
{
|
||
|
|
"$schema": "https://raw.githubusercontent.com/jetify-com/devbox/main/packages/devbox.schema.json",
|
||
|
|
"packages": [
|
||
|
|
"nixpkgs#git",
|
||
|
|
"path:./android/nix-android-sdk#android-sdk",
|
||
|
|
"nixpkgs#android-tools",
|
||
|
|
"nixpkgs#openjdk17",
|
||
|
|
"just@latest",
|
||
|
|
"openssl@latest",
|
||
|
|
"flutter@3.35.7-sdk-links"
|
||
|
|
],
|
||
|
|
"env": {
|
||
|
|
"ANDROID_SDK_ROOT": "$DEVBOX_PACKAGES_DIR/share/android-sdk",
|
||
|
|
"ANDROID_HOME": "$DEVBOX_PACKAGES_DIR/share/android-sdk"
|
||
|
|
},
|
||
|
|
"nix_config": {
|
||
|
|
"allow-unfree": "true"
|
||
|
|
},
|
||
|
|
"shell": {
|
||
|
|
"init_hook": [
|
||
|
|
"flutter --version",
|
||
|
|
"if command -v android >/dev/null 2>&1; then export ANDROID_HOME=$(command -v android | sed -E 's|(.*libexec/android-sdk).*|\\1|'); fi",
|
||
|
|
"if [ -n \"$ANDROID_HOME\" ]; then export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$PATH; fi"
|
||
|
|
],
|
||
|
|
"scripts": {
|
||
|
|
"doctor": "flutter doctor -v",
|
||
|
|
"link-android-tools": "if [ -n \"$ANDROID_HOME\" ] && [ ! -d \"$ANDROID_HOME/cmdline-tools/latest\" ] && [ -d \"$ANDROID_HOME/cmdline-tools/8.0\" ]; then ln -s \"$ANDROID_HOME/cmdline-tools/8.0\" \"$ANDROID_HOME/cmdline-tools/latest\"; fi",
|
||
|
|
"studio-config": "./android/nix-android-sdk/android-studio-devbox-config.sh",
|
||
|
|
"studio": "PROJECT_DIR=${DEVBOX_PROJECT_ROOT:-$(pwd)}; if command -v android-studio >/dev/null 2>&1; then android-studio \"$PROJECT_DIR\" >/dev/null 2>&1 &\nelif [ -x \"$HOME/.local/share/JetBrains/Toolbox/apps/android-studio/bin/studio.sh\" ]; then \"$HOME/.local/share/JetBrains/Toolbox/apps/android-studio/bin/studio.sh\" \"$PROJECT_DIR\" >/dev/null 2>&1 &\nelse echo \"Android Studio not found. Install it via JetBrains Toolbox.\" >&2; exit 1; fi"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|