A professional CLI tool to safely remove bloatware from Android devices with enhanced features and robust error handling
- π Automatic device detection with comprehensive device information
- π± Multi-vendor support (Google, MIUI/Xiaomi, and generic Android)
- οΏ½οΈ Safe operations - packages are disabled, not permanently removed
- π¦ Categorized packages with detailed descriptions
- π Backup creation before making any changes
- π¨ Beautiful colored interface with progress animations
- π Real-time progress tracking with visual progress bars
- π§ Interactive menu with multiple operation modes
- οΏ½ Comprehensive logging to timestamped log files
- πΌ Professional summary reports with detailed statistics
- β‘ Robust error handling with detailed error messages
- π Pre-flight checks for ADB installation and device connectivity
- π Package verification before attempting to disable
- οΏ½ Multiple confirmation prompts to prevent accidental execution
- π Detailed status reporting for each operation
- ADB (Android Debug Bridge) installed and accessible in PATH
- Bash shell (version 4.0 or higher recommended)
- USB debugging enabled on your Android device
- Device connected via USB cable
- Developer options enabled
# Ubuntu/Debian
sudo apt install android-tools-adb
# macOS (with Homebrew)
brew install android-platform-tools
# Arch Linux
sudo pacman -S android-tools
# Manual installation
# Download from: https://developer.android.com/studio/releases/platform-tools# Make script executable
chmod +x debloat.sh
# Run the script
./debloat.shWhen you run the script, you'll be presented with several options:
- [p] Proceed with debloating (full process)
- [s] Show detailed package list by category
- [b] Create backup only (no changes made)
- [q] Quit without making any changes
# Standard execution
./debloat.sh
# Check script syntax
bash -n debloat.sh
# View logs
cat logs/debloat_*.log
# View backup
cat backups/package_states_*.txt- Google Photos, Meet, YouTube Music
- Personal Safety, Feedback, Chrome
- Device Lock Controller, Parental Controls
- Google One, Assistant features
- MIUI Service Framework, Bug Report
- Mi Drop, Music Player, Cloud Service
- Mi Browser, System Ads, Analytics
- Mi Store, Wallpapers, Remote Controller
- Mi Home (Smart Home)
- WPS Office, NFC Service
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Android Debloater v2.0.0 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β Manufacturer: Samsung
β Model: Galaxy S21
β Android: 13
β Build: TP1A.220624.014
β Security Patch: 2024-01-01
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Progress: [ββββββββββββββββββββββββββββββββββββββββ] 100% (25/25)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SUMMARY REPORT β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β Script Version: 2.0.0
β Execution Time: 0m 15s
β Started At: 2024-06-17 14:30:15
β Completed At: 2024-06-17 14:30:30
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β PACKAGE STATISTICS β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β β Successfully Disabled: 18
β βΉ Already Disabled: 3
β β Not Found/Skipped: 4
β β Failed: 0
β π¦ Total Packages: 25
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£
β β OPERATION SUCCESSFUL β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- Automatic backup of current package states before any changes
- Timestamped backup files in
./backups/directory - Includes device information and package states
- Multiple confirmation prompts
- Package existence verification
- Device connectivity validation
- ADB installation checks
- Packages are disabled, not permanently removed
- Can be re-enabled through Android settings
- System stability is maintained
android-debloater/
βββ debloat.sh # Main script
βββ README.md # Documentation
βββ logs/ # Execution logs (auto-created)
β βββ debloat_YYYYMMDD_HHMMSS.log
βββ backups/ # Package state backups (auto-created)
βββ package_states_YYYYMMDD_HHMMSS.txt
"ADB is not installed"
# Install ADB using your package manager
sudo apt install android-tools-adb # Ubuntu/Debian
brew install android-platform-tools # macOS"No Android device connected"
- Ensure USB debugging is enabled
- Try different USB cable/port
- Check device authorization:
adb devices
"Package not found" warnings
- Normal behavior - not all packages exist on every device
- Different manufacturers include different bloatware
# Check ADB connection
adb devices
# Check package list
adb shell pm list packages | grep -i "package_name"
# Manual package disable
adb shell pm disable-user --user 0 "package.name"
# View detailed logs
tail -f logs/debloat_*.log- β¨ Complete rewrite with enhanced features
- π¨ Beautiful colored interface with progress animations
- π‘οΈ Robust error handling and safety checks
- π¦ Categorized packages with descriptions
- π Comprehensive logging and backup system
- π§ Interactive menu with multiple options
- π Professional summary reports
- Basic package disabling functionality
- Simple progress bar
- Basic error handling
MIT License - see LICENSE file for details
Contributions are welcome! Please feel free to submit pull requests or open issues for:
- Additional package definitions
- Bug fixes
- Feature enhancements
- Documentation improvements
This tool modifies system package states on your Android device. While the operations are non-destructive (packages can be re-enabled), use at your own risk. Always ensure you have a backup of important data before running any system modification tools.
Feel free to submit issues and pull requests.