docs: add French documentation
This commit is contained in:
91
README.fr.md
Normal file
91
README.fr.md
Normal file
@@ -0,0 +1,91 @@
|
||||
# adb-sideload-free-apps
|
||||
|
||||
Installer des applications Android libres avec ADB depuis F-Droid, les releases GitHub,
|
||||
GitLab ou Codeberg, ou des pages HTTPS génériques.
|
||||
|
||||
[English](README.md)
|
||||
|
||||
## Prérequis
|
||||
|
||||
- Python 3.11 ou supérieur
|
||||
- `adb` (Android Debug Bridge) dans le `PATH`
|
||||
- `aapt2` ou `aapt` (Android SDK Build Tools) dans le `PATH`
|
||||
|
||||
## Démarrage rapide
|
||||
|
||||
```bash
|
||||
python -m pip install -e .
|
||||
cp config.example.toml config.toml
|
||||
# Modifier config.toml pour ajouter les applications
|
||||
python -m sideload
|
||||
```
|
||||
|
||||
## Utilisation
|
||||
|
||||
```text
|
||||
sideload [APP] [--list] [--update-all] [--device SERIAL] [--dry-run] [--config PATH]
|
||||
```
|
||||
|
||||
- `APP` : nom de l’application dans la configuration (omettre pour la sélection interactive)
|
||||
- `--list` : lister les applications configurées
|
||||
- `--device`, `-s` : numéro de série du périphérique ADB
|
||||
- `--dry-run` : résoudre, télécharger et valider sans installer
|
||||
- `--update-all` : inspecter toutes les applications configurées sur un périphérique choisi
|
||||
une seule fois et mettre à jour uniquement les applications installées dont l’APK distant
|
||||
possède un `versionCode` supérieur (incompatible avec `APP` et `--list`)
|
||||
- `--config`, `-c` : chemin vers `config.toml` (par défaut : `./config.toml`)
|
||||
|
||||
`--update-all` sélectionne le périphérique ADB une seule fois, puis vérifie chaque paquet
|
||||
configuré avec `adb shell dumpsys package`. Les applications absentes du périphérique sont
|
||||
signalées et ignorées sans téléchargement. Une application installée est mise à jour
|
||||
uniquement lorsque l’APK distant validé possède un `versionCode` strictement supérieur ; les
|
||||
versions égales ou inférieures sont ignorées. Une erreur sur une application n’interrompt pas
|
||||
le traitement des suivantes. La commande affiche un bilan et retourne un code non nul si une
|
||||
mise à jour a échoué.
|
||||
|
||||
## Configuration
|
||||
|
||||
Voir `config.example.toml`. Les sources prises en charge sont :
|
||||
|
||||
| Source | Champs requis |
|
||||
| --- | --- |
|
||||
| `fdroid` | `url` (page F-Droid) |
|
||||
| `github` | `url` (dépôt) |
|
||||
| `gitlab` | `url` (projet) |
|
||||
| `codeberg` | `url` (dépôt Codeberg) |
|
||||
| `generic` | `url`, `asset_pattern` (page ou répertoire HTTPS) |
|
||||
|
||||
Chaque application doit aussi définir `name` et `package`. Pour GitHub, GitLab et Codeberg,
|
||||
définir `asset_pattern` lorsqu’une release contient plusieurs APK compatibles. Les APK de
|
||||
debug, de test et non signés sont rejetés par défaut.
|
||||
|
||||
La source `generic` suit les liens HTML HTTPS depuis `url`. Utiliser
|
||||
`intermediate_patterns` dans l’ordre pour parcourir les répertoires ; lorsque plusieurs liens
|
||||
correspondent, un motif avec des groupes de capture numériques sélectionne le plus grand tuple
|
||||
numérique. `asset_pattern` est obligatoire et doit correspondre à un seul APK final. Les champs
|
||||
optionnels `headers` et `sha256` sont pris en charge ; les valeurs des en-têtes ne sont jamais
|
||||
écrites dans les logs.
|
||||
|
||||
`aapt2` valide l’identifiant du paquet APK avant l’installation, avec `aapt` comme solution de
|
||||
secours pour les anciennes versions des Android SDK Build Tools. Au moins un des deux outils
|
||||
doit être disponible dans le `PATH`. Le script refuse d’installer un APK si aucun outil ne peut
|
||||
le valider.
|
||||
|
||||
Avec `--update-all`, `aapt2 dump badging` (avec fallback `aapt dump badging`) lit également le
|
||||
`versionCode` de l’APK distant avant de décider si une installation est nécessaire.
|
||||
|
||||
Pour utiliser ADB en Wi-Fi, configurer une adresse explicite après avoir activé le débogage sans
|
||||
fil :
|
||||
|
||||
```toml
|
||||
[adb]
|
||||
mode = "wifi"
|
||||
address = "192.168.1.42:5555"
|
||||
```
|
||||
|
||||
## Tests
|
||||
|
||||
```bash
|
||||
pip install pytest
|
||||
python -m pytest tests/ -v
|
||||
```
|
||||
Reference in New Issue
Block a user