update readme

This commit is contained in:
2026-03-10 14:34:55 +05:00
parent 5b425fd0b7
commit 8a594618ef
6 changed files with 62 additions and 8 deletions

View File

@@ -1,15 +1,22 @@
# ISO Drive
# ISO Droid
Android app for mounting ISO/IMG files as USB mass storage or CD-ROM devices on rooted Android devices.
## Screenshots
Screenshots are available in the [docs/screenshots/](docs/screenshots/) directory.
## Features
- Mount ISO/IMG files as USB mass storage or CD-ROM
- Create blank IMG files for writable USB drives
- Read-only or read-write mount options
- Persistent notification with quick unmount button
- Browse and select ISO files from device storage
- Browse and select ISO/IMG files from device storage
- OS-specific icons for popular distributions (Linux, BSD, etc.)
- Download links to popular operating systems (Linux, BSD, Windows, Recovery tools)
- Material 3 dynamic theming
- Rename and delete files
- Material 3 dynamic theming with dark mode support
## Requirements
@@ -19,26 +26,73 @@ Android app for mounting ISO/IMG files as USB mass storage or CD-ROM devices on
## Installation
1. Install the [isodrive](https://github.com/nitanmarcel/isodrive) binary via the [Magisk module](https://github.com/nitanmarcel/isodrive-magisk/releases/latest) or manually
2. Install the ISO Drive APK
### Option 1: Install APK (Recommended)
1. Download the latest ISO Droid APK from releases
2. Install the APK
3. Grant root access when prompted
4. The app includes a bundled isodrive binary
5. Place your ISO/IMG files in `/sdcard/isodrive/` (or configure a different directory in settings)
### Option 2: Install with Magisk Module
1. Install the [isodrive Magisk module](https://github.com/nitanmarcel/isodrive-magisk/releases/latest)
2. Install the ISO Droid APK
3. Grant root access when prompted
4. Place your ISO/IMG files in `/sdcard/isodrive/` (or configure a different directory in settings)
## Building from Source
### Prerequisites
Before building the app, you need to obtain the `isodrive` binary:
1. The `isodrive` binary is compiled from [nitanmarcel/isodrive](https://github.com/nitanmarcel/isodrive)
2. Place the compiled binary at `app/src/main/assets/bin/isodrive` before building
3. The binary must be executable and compiled for the appropriate Android architecture
### Build Steps
```bash
# Clone the repository
git clone https://github.com/yourusername/ISODroid.git
cd ISODroid
# Ensure isodrive binary is present
ls -la app/src/main/assets/bin/isodrive
# Build the APK
./gradlew assembleRelease
```
## Usage
1. Open ISO Drive
1. Open ISO Droid
2. Select an ISO/IMG file from the list
3. Choose mount options (Mass Storage or CD-ROM, Read-Only or Read-Write)
4. Tap Mount
5. Connect your phone to a PC via USB - it will appear as a USB drive
5. Connect your phone to a PC via USB - it will appear as a USB drive/CD-ROM
6. Unmount via the app or notification when done
### Creating Custom IMG Files
1. Tap the "+" button in the top bar
2. Enter a filename and size
3. The app will create a blank IMG file that can be mounted as a writable USB drive
4. Format it on your PC after mounting (FAT32, exFAT, NTFS, etc.)
## Credits
- [isodrive](https://github.com/nitanmarcel/isodrive) by nitanmarcel - The CLI tool that powers ISO Drive
- [isodrive](https://github.com/nitanmarcel/isodrive) by nitanmarcel - The CLI tool that powers ISO Droid
- [ISODriveUT](https://github.com/fredldotme/ISODriveUT) by fredldotme - Original inspiration for isodrive
- OS icons from [Simple Icons](https://simpleicons.org/)
## Technical Details
ISO Droid uses the `isodrive` binary to interface with the Linux USB gadget subsystem. The app:
- Bundles the isodrive binary in `app/src/main/assets/bin/`
- Extracts and executes it with root permissions at runtime
- Supports both configfs (modern) and sysfs (legacy) USB gadget modes
- Dynamically detects available OS icons for file display
## License
MIT

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB