Le très répandu Sparkle a besoin d'aide pour se mettre à jour

Stéphane Moussie |

Quand une application Mac vous informe automatiquement qu'une mise à jour est disponible pour elle, c'est bien souvent le framework Sparkle qui est responsable de cette notification. Ironie du sort, ce composant, extrêmement répandu dans les applications distribuées en dehors du Mac App Store1, est en attente de mise à jour depuis un moment.

Boîte de dialogue de mise à jour de VLC, avec Sparkle sous le capot.

Son développeur a récemment fait savoir qu'il n'avait « plus assez d'énergie pour accorder l'attention nécessaire à ce projet. » Or, comme il l'indique lui-même, Sparkle est important pour la sécurité et la santé des applications hors Mac App Store.

Une faille de sécurité dans Sparkle, c'est une faille de sécurité dans des centaines d'applications. Le risque n'a rien de virtuel, le phénomène s'est produit en 2016.

C'est pour cette raison que le développeur Kornel en appelle à ses pairs pour reprendre le flambeau. Le framework étant open source, tous les contributeurs sont les bienvenus. Ils sont une poignée à avoir manifesté leur intérêt pour le moment.

Une version 2.0 est en gestation depuis plusieurs années. Celle-ci doit introduire une architecture moderne et plus sécurisée, la prise en charge du sandboxing, et la personnalisation de la boîte de dialogue, entre autres choses.


  1. Si vous êtes curieux, tapez la ligne de commande suivante dans le Terminal pour découvrir quelles sont vos applications qui utilisent Sparkle :  ↩

  2. find /Applications -path '*Autoupdate.app/Contents/Info.plist' -exec echo {} ; -exec grep -A1 CFBundleShortVersionString '{}' ; | grep -v CFBundleShortVersionString


avatar robindumontchaponet | 

Plutôt :

find /Applications -name Sparkle.framework | awk -F'/' '{print $3}' | awk -F'.' '{print $1}'

Non ?

avatar huexley | 

+1 point pour Gryffondor

avatar jerome74 | 

Ou plutôt:
find /Applications -path '*Autoupdate.app/Contents/Info.plist' -exec echo "{}" \; -exec grep -A1 CFBundleShortVersionString "{}" \; | grep -v CFBundleShortVersionString
ce qui donne la version de Sparkle contenue dans chaque application

avatar Christophe Laporte | 

Essai

avatar BeePotato | 

Notons que les solutions de recherche de Sparkle à base de « find /Applications … » ne vont étudiers que les applis présentes dans le dossier Applications à la racine du disque dur.
Tout le monde ne rangeant pas forcément toutes ses applications dans ce dossier, ça vaut le coup d’être signalé.

CONNEXION UTILISATEUR