Skip to content

Agenda Tech 1.0.2 — un build reproductible

Choose a tag to compare

@gitubpatrice gitubpatrice released this 14 Aug 19:35
· 54 commits to main since this release

Agenda Tech 1.0.2 — un build que vous pouvez refaire vous-même

Aucun changement fonctionnel. L'application se comporte exactement comme la 1.0.1. Ce qui
change est la façon dont elle est construite — et ce que ça vous permet de vérifier.

Le build est désormais reproductible

N'importe qui peut cloner ce dépôt au tag v1.0.2, lancer la construction, et obtenir le même
APK que celui publié ici, octet pour octet
. Pas « équivalent » : identique.

Ce n'était pas le cas avant, et pour une raison invisible depuis le code : settings.gradle.kts
déclarait le plugin foojay-resolver-convention, inutilisé ici puisque le projet compile en
Java 17 sans demander la moindre toolchain. Mais sa seule présence changeait le binaire — R8
attribuait d'autres noms d'obfuscation et comptait sept champs de plus, et le profil de démarrage
qui en dérive suivait. Sur 1481 fichiers dans l'APK, trois différaient.

Pourquoi ça compte pour vous

F-Droid reconstruit les applications depuis les sources. Quand le résultat correspond au binaire
signé par l'auteur, F-Droid peut distribuer ce binaire-là au lieu de le resigner avec sa propre
clé. Concrètement : la même application des deux côtés, et une mise à jour qui passe sans avoir à
désinstaller. Sans reproductibilité, ce choix est perdu définitivement à la première publication.

Vérifier par vous-même

git clone https://github.com/gitubpatrice/AGENDA-TECH && cd AGENDA-TECH
git checkout v1.0.2 && ./gradlew clean assembleRelease

Agenda Tech 1.0.2 — a build you can reproduce yourself

No functional change. The app behaves exactly as 1.0.1 does. What changed is how it is built,
and what that lets you check.

The build is now reproducible: clone this repository at v1.0.2, build it, and you get the
very same APK published here, byte for byte. The obstacle was an unused
foojay-resolver-convention plugin in settings.gradle.kts — its mere presence changed R8's
output, and with it the ART profile. Three files out of 1481 differed.

This is what allows F-Droid to distribute the build we signed ourselves rather than re-signing it
with its own key: the same app from either source, and updates that keep working. That choice is
lost for good at first publication if the build is not reproducible.


Certificat de signature (inchangé) : 538bff8ab3162017038d031909fd4e06159f30a3371867f9e1d1bc146c9a1d04

Si vous ne savez pas quel fichier prendre, prenez agenda-tech-universel-1.0.2.apk.
If you are unsure which file to take, take agenda-tech-universel-1.0.2.apk.