Releases: ImL1s/termux-flutter-wsl
Flutter 3.44.0 for Termux ARM64
Flutter 3.44.0 for Termux ARM64
Flutter 3.44.0 / Dart 3.12 for Android-bionic ARM64 hosts.
This release updates the Termux Flutter SDK package to Flutter 3.44.0 and fixes the new Dart/Flutter Tools/Gradle assumptions that broke Android-as-host environments.
Package
| Item | Value |
|---|---|
| Package | flutter_3.44.0_aarch64.deb |
| Size | 666,366,556 bytes (~636 MiB) |
| SHA256 | b8af08d26ee4ae4b3dcf1aab4ee6b05965529587ddf1bc9b936b48b5f01f9846 |
| Flutter | 3.44.0 |
| Flutter Tools Dart | 3.12.1 |
| Dart VM | post-install dartvm resolves to Dart 3.12.1 (android_arm64) |
| Target host | Termux / Android bionic / ARM64 |
Install
pkg update -y
pkg install -y x11-repo wget openjdk-21
wget https://github.com/ImL1s/termux-flutter-wsl/releases/download/v3.44.0/flutter_3.44.0_aarch64.deb
dpkg -i flutter_3.44.0_aarch64.deb
apt --fix-broken install -y
bash $PREFIX/share/flutter/post_install.sh
source $PREFIX/etc/profile.d/flutter.sh
flutter doctor -vVerified
Device smoke on Samsung SM-X716B / Android 16 / ARM64 Termux:
| Command | Result |
|---|---|
flutter --version |
✅ Flutter 3.44.0 |
dart --version |
✅ Dart 3.12.1 on android_arm64 |
dartvm --version |
✅ Dart 3.12.0 on linux_arm64 |
flutter doctor -v |
✅ completes; unknown channel / no connected device are expected warnings |
flutter create --platforms=android,linux |
✅ |
flutter build apk --release --target-platform android-arm64 --no-tree-shake-icons |
✅ ARM64 APK produced |
flutter build linux --release |
✅ ARM64 Linux bundle produced |
| deb artifact validator | ✅ dart, dartvm, dartaotruntime executable |
Highlights
Flutter 3.44 / Dart 3.12 update
- Updated package metadata and patches for Flutter 3.44.0.
- Handles Dart 3.10+ tool split by packaging both CLI
dartand enginedartvm/dartaotruntime. - Keeps Flutter CLI on Termux JIT Dart while preserving engine VM tools for snapshots.
Android/Termux host fixes
Flutter Tools still assumes host OS is macOS/Linux/Windows. On Termux, Dart reports Platform.operatingSystem == "android". This release maps Android host lookups to Linux ARM64 artifacts for:
- font-subset artifacts
- engine artifact host platform lookup
- current host platform detection
- Chrome/device-discovery lookup paths
APK build fixes
- ARM64-only APK default remains enforced.
post_install.shnow provides Flutter 3.44'sPLATFORM_ABI_LISTin the ARM64-only Gradle plugin template.- Stale Flutter Gradle included-build caches are cleared after plugin source changes.
- NDK wrapper setup detects current clang runtime paths and patches CMake host-tag assumptions.
Linux desktop build fixes
flutter build linuxis allowed on Termux host.tool_backend.shshebang is rewritten for Termux.- Projects should add
set(CMAKE_SYSTEM_NAME Linux)at the top oflinux/CMakeLists.txt.
Maintainer automation
- GitHub-hosted PR CI now runs lightweight repository sanity checks without touching self-hosted hardware.
- Manual self-hosted workflows cover the full
.debbuild and Windows+ADB Termux tablet smoke test. scripts/ci/check_repo.py,scripts/device/run_termux_smoke.ps1, anddocs/CI_CD.mddocument and enforce the release/device validation contract.
Required per-project Android settings
# android/gradle.properties
android.aapt2FromMavenOverride=/data/data/com.termux/files/usr/bin/aapt2// android/app/build.gradle.kts
android {
compileSdk = 34
defaultConfig {
targetSdk = 34
ndk { abiFilters += listOf("arm64-v8a") }
}
}Build with:
flutter build apk --release --target-platform android-arm64 --no-tree-shake-iconsKnown limitations
- Android APK targets are ARM64-only (
android-arm64/arm64-v8a). flutter runfor Android requires ADB pairing/connection from inside Termux.- Some Flutter doctor warnings about unknown channel/source are expected for this repackaged SDK.
- Termux aapt2 currently requires projects to compile against API 34 even though Android SDK Platform 36 is installed for Flutter metadata compatibility.
Previous releases
v3.41.5 (2026-04-13)
- Flutter SDK upgraded to 3.41.5 (Dart 3.11.3).
- Added
flutter build linuxsupport. - Fixed post-install sed delimiter and flutter_tools snapshot invalidation.
v3.35.0 (2026-01-07)
- First public release.
- APK build and hot reload support for ARM64 Termux.
Flutter 3.41.5 for Termux ARM64
Flutter 3.41.5 for Termux (ARM64)
世界首個在 Termux ARM64 上運行的完整 Flutter 開發環境
安裝
方法 1: 一鍵安裝(推薦)
curl -sL https://raw.githubusercontent.com/ImL1s/termux-flutter-wsl/master/install_flutter_complete.sh -o ~/install.sh && bash ~/install.sh方法 2: 只安裝 Flutter(不含 Android SDK)
curl -sL https://raw.githubusercontent.com/ImL1s/termux-flutter-wsl/master/scripts/install/install_termux_flutter.sh -o ~/install.sh && bash ~/install.sh方法 3: 手動安裝
# 1. 下載並安裝 deb
wget https://github.com/ImL1s/termux-flutter-wsl/releases/download/v3.41.5/flutter_3.41.5_aarch64.deb
dpkg -i flutter_3.41.5_aarch64.deb
apt --fix-broken install -y
# 2. 執行 post-install 腳本
bash $PREFIX/share/flutter/post_install.sh
# 3. 設置環境變數
source $PREFIX/etc/profile.d/flutter.sh
# 4. 驗證安裝
flutter doctor功能狀態
| 功能 | 狀態 | 備註 |
|---|---|---|
flutter doctor |
✅ 已驗證 | |
flutter create |
✅ 已驗證 | |
flutter build apk --release |
✅ 已驗證 | 151.6MB |
flutter build apk --debug |
✅ 已驗證 | |
flutter build linux --release |
✅ 已驗證 | ARM64 ELF |
flutter run (Android) |
✅ 已驗證 | Hot Reload 支援 |
系統需求
- Android 11+ (API 30+)
- ARM64 (aarch64) 架構
- Termux 從 F-Droid 安裝
- 約 2GB 儲存空間
APK 構建配置
每個 Flutter 專案需要修改以下配置:
android/app/build.gradle.kts:
android {
compileSdk = 34
defaultConfig {
targetSdk = 34
ndk {
abiFilters += listOf("arm64-v8a")
}
}
}android/gradle.properties:
android.aapt2FromMavenOverride=/data/data/com.termux/files/usr/bin/aapt2Linux Desktop 構建
在 linux/CMakeLists.txt 第一行加入:
set(CMAKE_SYSTEM_NAME Linux)然後執行:
flutter build linux --releaseflutter run(Hot Reload)
# 1. 啟用無線調試(設定 → 開發者選項 → 無線調試)
# 2. 配對(首次)
adb pair 127.0.0.1:<配對端口> <配對碼>
# 3. 連接
adb connect 127.0.0.1:<連接端口>
# 4. 運行
flutter run已知限制
- 僅支援
android-arm64目標(不支援 android-arm、android-x64) - 需要手動執行 post_install.sh 配置環境
更新內容
v3.41.5 (2026-04-13)
- Flutter SDK 升級至 3.41.5 (Dart 3.11.3)
- 新增
flutter build linux支援(post_install.sh 自動 patch) - 修復
post_install.shsed 分隔符衝突 - 修復
build.pysync 目錄複製問題 - 強制刪除 flutter_tools.stamp/snapshot 確保 patch 生效
- E2E 測試腳本
gh_e2e_test.sh
v3.35.0 (2026-01-07)
- 首次公開發布
- 完整支援 APK 構建(debug/profile/release)
flutter run+ Hot Reload 支援
致謝
- mumumusuc/termux-flutter - 原始構建工具
- lzhiyong/termux-ndk - ARM64 預編譯 Android NDK
Flutter 3.41.5 for Termux ARM64
Flutter 3.41.5 for Termux (ARM64)
What's New
- Flutter 3.41.5 (Dart 3.11.3) - upgraded from 3.35.0
- Linux triple-mode builds: flutter build linux now supports --debug, --release, and --profile
- Full build matrix verified (6/6): Linux debug/release/profile + APK debug/release/profile
Bug Fixes
- Fixed flutter build linux --release/--profile failure (missing engine artifacts)
- Fixed utils.py MODE ordering bug that corrupted dart-sdk snapshots
Installation
# In Termux
pkg update && pkg install x11-repo wget openjdk-21
wget https://github.com/ImL1s/termux-flutter-wsl/releases/download/3.41.5/flutter_3.41.5_aarch64.deb
dpkg -i flutter_3.41.5_aarch64.deb
apt --fix-broken install -y
bash $PREFIX/share/flutter/post_install.sh
source $PREFIX/etc/profile.d/flutter.sh
flutter --versionVerified Features
| Feature | Status |
|---|---|
| flutter build linux --debug | ✅ |
| flutter build linux --release | ✅ |
| flutter build linux --profile | ✅ |
| flutter build apk --debug | ✅ |
| flutter build apk --release | ✅ |
| flutter build apk --profile | ✅ |
| flutter run (Hot Reload) | ✅ |
Requirements
- Termux on ARM64 device
- Android 14+ recommended
- ~700MB disk space
Flutter 3.35.0 for Termux ARM64
Flutter 3.35.0 for Termux ARM64
Cross-compiled Flutter SDK that runs natively on Termux (Android/Bionic ARM64).
Features
- flutter build apk (ARM64 only)
- flutter build linux
- flutter run with Hot Reload
- Linux desktop support via Termux X11
Installation
# Download and install
curl -LO https://github.com/ImL1s/termux-flutter-wsl/releases/download/v3.35.0-termux/flutter_3.35.0_aarch64.deb
dpkg -i flutter_3.35.0_aarch64.deb
apt-get install -f
# Configure for APK builds
bash $PREFIX/share/flutter/post_install.sh
# Verify
source $PREFIX/etc/profile.d/flutter.sh
flutter doctor -vKnown Limitations
- APK builds only support ARM64 (android-arm64-v8a)
- Linux desktop uses debug mode only
- Profile mode not yet supported
See CHANGELOG.md for details.
Flutter 3.35.0
Flutter 3.35.0 for Termux (ARM64)
世界首個在 Termux ARM64 上運行的完整 Flutter 開發環境
安裝
方法 1: 一鍵安裝(推薦)
curl -sL https://raw.githubusercontent.com/ImL1s/termux-flutter-wsl/master/scripts/install.sh | bash方法 2: 手動安裝
# 1. 下載並安裝 deb
wget https://github.com/ImL1s/termux-flutter-wsl/releases/download/3.35.0/flutter_3.35.0_aarch64.deb
dpkg -i flutter_3.35.0_aarch64.deb
apt --fix-broken install -y
# 2. 執行 post-install 腳本配置 APK 構建環境
bash $PREFIX/share/flutter/post_install.sh
# 3. 設置環境變數
source $PREFIX/etc/profile.d/flutter.sh
# 4. 驗證安裝
flutter doctor功能狀態
| 功能 | 狀態 | 備註 |
|---|---|---|
flutter doctor |
✅ 已驗證 | |
flutter create |
✅ 已驗證 | |
flutter build apk --release |
✅ 已驗證 | 需執行 post_install.sh |
flutter build apk --debug |
✅ 已驗證 | |
flutter build apk --profile |
✅ 已驗證 | |
flutter build linux |
✅ 已驗證 | 需 Termux:X11 |
flutter run -d linux |
✅ 已驗證 | 需 Termux:X11 |
flutter run (Android) |
✅ 已驗證 | 需執行 post_install.sh |
系統需求
- Android 11+ (API 30+)
- ARM64 (aarch64) 架構
- Termux 從 F-Droid 安裝
- 約 2GB 儲存空間
APK 構建配置
每個 Flutter 專案需要修改以下配置:
android/app/build.gradle.kts:
android {
compileSdk = 34
defaultConfig {
targetSdk = 34
ndk {
abiFilters += listOf("arm64-v8a")
}
}
}android/gradle.properties:
android.aapt2FromMavenOverride=/data/data/com.termux/files/usr/bin/aapt2在本機 Android 設備上運行 (flutter run)
-
啟用無線調試
- 設定 → 開發者選項 → 無線調試 → 開啟
-
配對設備(首次)
# 點擊「使用配對碼配對設備」 adb pair 127.0.0.1:<配對端口> <配對碼>
-
連接設備
# 使用無線調試頁面顯示的連接端口(不是配對端口) adb connect 127.0.0.1:<連接端口>
-
運行
flutter run
已知限制
- 僅支援
android-arm64目標(不支援 android-arm、android-x64) - 需要手動執行 post_install.sh 配置環境(包含 hot reload 支援)
技術說明
這是首個成功在 ARM64 Termux 上運行的 Flutter 開發環境。技術挑戰包括:
- Bionic linker TLS 對齊問題
- Android NDK 交叉編譯配置
- gen_snapshot 32-bit 目標不支援(BoringSSL 編譯錯誤)
詳見 BUILD_GUIDE.md。
更新內容
v3.35.0 (2025-12-29)
- 首次公開發布
- Flutter SDK 3.35.0
- 完整支援 APK 構建(debug/release/profile)
- 完整支援 Linux 桌面構建
- 包含 post_install.sh 自動配置腳本
- 支援無線 ADB 調試
致謝
- mumumusuc/termux-flutter - 原始構建工具
- ArtifexSoftware/aspect-ratio-less-flutter - 構建參考
Flutter 3.35.0
🎉 Flutter 3.35.0 for Termux (ARM64)
🏆 首創:原生支援 flutter build apk
據我們所知,本專案是目前唯一能在 ARM64 Termux 上原生執行 flutter build apk --release 的解決方案!
| 專案 | flutter build apk |
方式 |
|---|---|---|
| 本專案 | ✅ 支援 | 交叉編譯 gen_snapshot |
| Flutter 官方 | ❌ 不支援 | "arm64 hosts is currently not supported" |
| mumumusuc/termux-flutter | ❌ 不支援 | 只有 flutter run -d linux |
| 其他方案 | 效能較差 |
✨ 功能
- ✅
flutter build apk --release- 直接在 Termux 構建 Android APK - ✅
flutter build linux- 構建 Linux 桌面應用 - ✅
flutter run -d linux- 在 Termux:X11 運行桌面應用
🆕 v3.35.0 更新
- 🚀 無需
--target-platform參數! 直接flutter build apk --release即可 - 📦 新增
libflutter_linux_gtk.so支援 Linux 桌面 - ☕ 更新依賴:openjdk-17 → openjdk-21
- 🤖 支援 Android 16
📥 一鍵安裝
curl -sL https://raw.githubusercontent.com/ImL1s/termux-flutter-wsl/master/install_termux_flutter.sh | bash📋 系統需求
- ARM64 設備 (aarch64)
- Android 11+ (API 30+)
- Termux(從 F-Droid 安裝)
- ~2GB 儲存空間
📖 文檔
完整使用指南請參閱 README