Add ADB APK sideload tool
This commit is contained in:
62
README.md
Normal file
62
README.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# adb-sideload-free-apps
|
||||
|
||||
Install free Android apps via ADB from F-Droid, GitHub Releases, or GitLab Releases.
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.11+
|
||||
- `adb` (Android Debug Bridge) in PATH
|
||||
- `apkanalyzer` (Android SDK tools) in PATH
|
||||
|
||||
## Quick start
|
||||
|
||||
```bash
|
||||
python -m pip install -e .
|
||||
cp config.example.toml config.toml
|
||||
# Edit config.toml to add your apps
|
||||
python -m sideload
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
sideload [APP] [--list] [--device SERIAL] [--dry-run] [--config PATH]
|
||||
```
|
||||
|
||||
- `APP` — app name from config (omit for interactive selection)
|
||||
- `--list` — list configured apps
|
||||
- `--device`, `-s` — ADB device serial
|
||||
- `--dry-run` — resolve, download, validate without installing
|
||||
- `--config`, `-c` — path to config.toml (default: ./config.toml)
|
||||
|
||||
## Configuration
|
||||
|
||||
See `config.example.toml`. Supported sources:
|
||||
|
||||
| Source | Required fields |
|
||||
| -------- | ---------------------------- |
|
||||
| `fdroid` | `url` (page F-Droid) |
|
||||
| `github` | `url` (repository) |
|
||||
| `gitlab` | `url` (projet) |
|
||||
|
||||
Every application also requires `name` and `package`. For GitHub and GitLab,
|
||||
set `asset_pattern` when a release contains more than one suitable APK. Debug,
|
||||
test and unsigned APKs are rejected by default.
|
||||
|
||||
`apkanalyzer` is mandatory and must be available in `PATH`. It is provided by
|
||||
the Android SDK command-line tools.
|
||||
|
||||
For Wi-Fi ADB, configure an explicit address after enabling wireless debugging:
|
||||
|
||||
```toml
|
||||
[adb]
|
||||
mode = "wifi"
|
||||
address = "192.168.1.42:5555"
|
||||
```
|
||||
|
||||
## Testing
|
||||
|
||||
```bash
|
||||
pip install pytest
|
||||
python -m pytest tests/ -v
|
||||
```
|
||||
Reference in New Issue
Block a user