16 pontos por xguru 2024-02-15 | 3 comentários | Compartilhar no WhatsApp
  • Ferramenta de atualização de software segura e estável para macOS
  • Em desenvolvimento desde 2014 e, a partir da v2 lançada em 2021, adicionou suporte a arquiteturas modernas
  • Seamless: ao usar, utiliza o nome/ícone do seu próprio app sem mencionar o Sparkle
  • Seguro: as atualizações são verificadas usando assinaturas EdDSA e assinatura de código da Apple. A partir da v2, há suporte para aplicações em sandbox
  • Rápido: oferece suporte a atualizações delta, que aplicam patch apenas nos arquivos alterados, e instalação atomic-safe
  • Instalação fácil e simples: não requer código no app, bastando apenas arquivos estáticos em um servidor web
  • Personalizável: oferece suporte à integração de UI personalizada para atualizações
  • Flexível: oferece suporte a aplicações, instaladores de pacote, painéis de preferências e outros plugins. A v2 oferece suporte a atualização de bundles externos
  • Lida com permissões e isolamento, solicitando autenticação automaticamente quando necessário
  • Usa Appcast baseado em RSS para notas de versão. O Appcast é o padrão de fato suportado por rastreadores de atualização e sites de terceiros
  • Fica oculto até a segunda execução para causar uma boa primeira impressão
  • Verdadeira autoatualização - o usuário pode escolher baixar e instalar automaticamente todas as atualizações em segundo plano
  • É possível usar canais para atualizações beta (a partir da v2), fazer rollout gradual para usuários e marcar atualizações como importantes ou principais

3 comentários

 
yjiq150 2024-02-15

Também existe uma implementação open source para Windows criada seguindo a forma como o Sparkle funciona. Ela ainda não oferece suporte a todos os recursos, mas já suporta os recursos básicos.

https://winsparkle.org/

 
xguru 2024-02-15

Ah, legal. Obrigado pela informação.

 
xguru 2024-02-15

Comentários do Hacker News

  • Como usuário de Mac, sinto nostalgia da época em que eu usava principalmente softwares nativos baixáveis e frequentemente utilizava programas com uma UX consistente.
  • Sempre que aparecia a janela modal de "atualização disponível" do Sparkle, eu ficava feliz por ver que o software estava melhorando e gostava de ler o changelog. Os atualizadores estranhos de outros programas davam medo, porque era preciso navegar por outra UI e talvez reiniciar imediatamente.
  • O Sparkle é um salvador que economiza muito tempo. Como desenvolvedor independente de apps, consigo lançar com confiança sem depender da revisão da App Store usando o Sparkle. A nova versão com atualizações delta e sinalizadores para atualizações críticas é incrível e perfeita.
  • Isso me faz lembrar do Growl. (site oficial do Growl)
  • Cerca de 15 anos atrás, quando o Sparkle foi lançado, desenvolvi dois apps independentes para Mac. Foi prazeroso adicioná-lo ao projeto, serviu como modelo para aprender ótima programação de frameworks Cocoa e, como usuário, ainda é algo satisfatório. É um grande caso de sucesso independente no Mac.
  • Hoje em dia, atualizo tudo executando o comando brew update; brew upgrade, incluindo os casks.
  • Uso o Sparkle no app há quase 15 anos e já fiz milhões de atualizações. Sempre funcionou perfeitamente, é realmente um projeto excelente e continua muito ativo.
  • Reconheci imediatamente a captura de tela do README.md. Graças a esta thread, descobri o nome do software que fornece atualizações para muitos apps que uso todos os dias. Muito obrigado a todos que contribuíram para o Sparkle.
  • Fico me perguntando se existe um sistema de atualização como o Sparkle que rode tanto em Mac quanto em Windows (desenvolvo software em C++/Qt). Será que dá para evitar integrar um sistema separado para cada OS? Também me preocupo que um framework de atualização possa se tornar um caminho para ações maliciosas.
  • Este é um texto sobre como configurar o Sparkle na própria aplicação. Acho que encontrei isso em uma thread anterior sobre o Sparkle. (artigo da troz.net sobre configuração do Sparkle)