16 puntos por xguru 2024-02-15 | 3 comentarios | Compartir por WhatsApp
  • Herramienta de actualización de software segura y confiable para macOS
  • Se desarrolla desde 2014, y desde la v2 lanzada en 2021 agregó soporte para una arquitectura moderna
  • Seamless: al usarlo, utiliza el nombre y el ícono de tu propia app sin mencionar Sparkle
  • Seguro: las actualizaciones se verifican usando firmas EdDSA y firma de código de Apple. Desde la v2, es compatible con aplicaciones en sandbox
  • Rápido: soporta actualizaciones delta que parchean solo los archivos modificados e instalación atomic-safe
  • Instalación fácil y sencilla: no requiere código en la app y solo necesita archivos estáticos en un servidor web
  • Personalizable: admite conectar una UI personalizada para las actualizaciones
  • Flexible: soporta aplicaciones, instaladores de paquetes, paneles de preferencias y otros plugins. La v2 soporta actualizaciones de bundles externos
  • Maneja permisos y aislamiento, y solicita autenticación automáticamente cuando es necesario
  • Usa un Appcast basado en RSS para las notas de lanzamiento. Appcast es el estándar de facto compatible con rastreadores de actualizaciones de terceros y sitios web
  • Permanece oculto hasta la segunda ejecución para dar una buena primera impresión
  • Verdadera autoactualización: los usuarios pueden elegir descargar e instalar automáticamente todas las actualizaciones en segundo plano
  • Se pueden usar canales para actualizaciones beta (desde la v2), hacer despliegues graduales a los usuarios y marcar actualizaciones como importantes o mayores

3 comentarios

 
yjiq150 2024-02-15

También existe una implementación de código abierto para Windows hecha siguiendo la forma de funcionamiento de Sparkle. Aún no soporta todas las funciones, pero sí las básicas.

https://winsparkle.org/

 
xguru 2024-02-15

Oh, qué bien. Gracias por la información.

 
xguru 2024-02-15

Opiniones de Hacker News

  • Como usuario de Mac, siento nostalgia por la época en que usaba principalmente software nativo descargable, cuando a menudo usaba programas con una UX consistente.
  • Cada vez que aparecía la ventana modal de "hay una actualización disponible" de Sparkle, sentía la alegría de que el software estaba mejorando y disfrutaba leer el registro de cambios. Los actualizadores ajenos de otro software daban miedo porque había que navegar otra UI y quizá reiniciar de inmediato.
  • Sparkle es un salvavidas que ahorra muchísimo tiempo. Como desarrollador independiente de apps, puedo usar Sparkle para lanzar con confianza sin pasar por la revisión de la App Store. La nueva versión, con actualizaciones delta y banderas para actualizaciones críticas, es increíble y perfecta.
  • Me hizo recordar Growl. (Sitio oficial de Growl)
  • Hace unos 15 años, cuando salió Sparkle, desarrollé dos apps independientes para Mac. Fue un gusto agregarlo al proyecto, era un modelo del que se podía aprender gran programación de frameworks Cocoa, y como usuario sigue dejándome satisfecho. Es un gran caso de éxito independiente en Mac.
  • Ahora ejecuto el comando brew update; brew upgrade para actualizar todo, incluidos los casks.
  • Llevo casi 15 años usando Sparkle en mi app y he realizado millones de actualizaciones. Siempre ha funcionado a la perfección; es un proyecto realmente excelente y sigue muy activo.
  • Reconocí de inmediato la captura de pantalla del README.md. Gracias a este hilo por fin supe el nombre del software que proporciona actualizaciones a muchas apps que uso todos los días. Muchísimas gracias a todos los que han contribuido a Sparkle.
  • Me pregunto si existe un sistema de actualizaciones como Sparkle que funcione tanto en Mac como en Windows (desarrollo software en C++/Qt). ¿Será posible no tener que integrar un sistema distinto para cada SO? También me preocupa que el framework de actualizaciones pueda convertirse en una vía para acciones maliciosas.
  • Es un artículo sobre cómo configurar Sparkle en tu propia aplicación. Creo que lo encontré en un hilo anterior sobre Sparkle. (Artículo de troz.net sobre la configuración de Sparkle)