Runtime Requirements
To run Muun Wallet on an Android device, the following minimum specifications are required:Android Version
Android 5.0 (Lollipop) or higherAPI Level 21+
Google Services
Google Play Services requiredFor Firebase and Play Integrity
SDK Configuration
The app is configured with the following SDK levels:The minimum SDK of 21 corresponds to Android 5.0 (Lollipop), released in 2014. This ensures broad device compatibility while maintaining modern Android features.
Build Requirements
Local Development Build
To build Muun Wallet locally, you need the following tools installed:OpenJDK
Golang
Version: = 1.24.x (exact version required)Download from golang.org/dl
Android NDK
Version: >= 22Download from Android NDK DownloadsImportant: Set the
ANDROID_NDK_HOME environment variable:Docker
Version: >= 28Download from Docker Install Docs
Docker must be running before executing build scripts.
Kotlin Configuration
The project uses Kotlin with the following JVM target:Reproducible Build Requirements
For reproducible builds and APK verification:Docker Resources
- Docker Version: >= 18.09
- RAM: At least 16 GB allocated to Docker
- Disk Space: At least 60 GB free
APK Verification Tools
To verify an existing APK installation:- Docker: >= 18.09 (with 16 GB RAM and 60 GB disk)
- ADB: Android Debug Bridge
Build Dependencies
Core Libraries
Muun depends on several key Android libraries:Navigation
WorkManager
Firebase
gRPC
Bitcoin & Cryptography
The wallet includes native cryptographic libraries:- libwallet: Custom Bitcoin and Lightning library (Rust + Go)
- Protobuf: Version 4.29.3 for protocol buffers
- BitcoinJ: For Bitcoin operations (via common module)
The native libraries must be built before assembling the APK. See the Quick Start guide for build instructions.
Development Tools
Optional Tools
These tools are useful for development but not required for building:- Android Studio: Latest stable version recommended
- Git: For version control
- Gradle: Included via wrapper (
./gradlew)
Debug Tools
The debug build includes additional development tools:These tools are automatically excluded from release builds to minimize APK size.