All Projects → sparkle-project → Sparkle

sparkle-project / Sparkle

Licence: other
A software update framework for macOS

Programming Languages

swift
15916 projects
objective c
16641 projects - #2 most used programming language
shell
77523 projects
ruby
36898 projects - #4 most used programming language
python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to Sparkle

rauc-hawkbit-updater
The RAUC hawkBit updater is a simple commandline tool/daemon that runs on your target and interfaces between RAUC and hawkBit's DDI API.
Stars: ✭ 40 (-99.29%)
Mutual labels:  update, software-update
Pyupdater
Pyinstaller auto-update library
Stars: ✭ 300 (-94.7%)
Mutual labels:  update, framework
Githubupdates
Cocoa framework to install application updates from GitHub releases.
Stars: ✭ 393 (-93.06%)
Mutual labels:  update, framework
Velocityx
A minimalist Flutter framework for rapidly building custom designs.
Stars: ✭ 595 (-89.49%)
Mutual labels:  framework
Aosf
AOSF:全称为Android Open Source Framework,即Android优秀开源框架汇总。包含:网络请求okhttp,图片下载glide,数据库greenDAO,链式框架RxJava,组件路由ARouter,消息传递通信EventBus,热更新Tinker,插件化框架Replugin,文件下载FileDownloaer,图片选择PhotoPicker,图片滤镜/毛玻璃等特效处理,GIF图片展示控件,图片九宫格控件NineGridView,对话框Dialog,导航指示器ViewpagerIndicator,进度条ProgressWheel,下拉刷新SmartRefreshLayout,key-value高效数据存储MMKV等,应有尽有。
Stars: ✭ 601 (-89.39%)
Mutual labels:  framework
Microservices Framework Benchmark
Raw benchmarks on throughput, latency and transfer of Hello World on popular microservices frameworks
Stars: ✭ 615 (-89.14%)
Mutual labels:  framework
Awesome Nextjs
📔 📚 A curated list of awesome resources : books, videos, articles about using Next.js (A minimalistic framework for universal server-rendered React applications)
Stars: ✭ 6,812 (+20.31%)
Mutual labels:  framework
Displayjs
A simple JavaScript framework for building ambitious UIs 😊
Stars: ✭ 590 (-89.58%)
Mutual labels:  framework
Spock
Another Haskell web framework for rapid development
Stars: ✭ 623 (-89%)
Mutual labels:  framework
Humhub
HumHub is an Open Source Enterprise Social Network. Easy to install, intuitive to use and extendable with countless freely available modules.
Stars: ✭ 5,586 (-1.34%)
Mutual labels:  framework
Nerv
A blazing fast React alternative, compatible with IE8 and React 16.
Stars: ✭ 5,409 (-4.47%)
Mutual labels:  framework
Inkline
Inkline is the customizable Vue.js UI/UX Library designed for creating flawless responsive websites.
Stars: ✭ 606 (-89.3%)
Mutual labels:  framework
Androidnote
🔥 Android 进阶笔记,包含常用的技术框架、博客社区、书籍等。
Stars: ✭ 614 (-89.16%)
Mutual labels:  framework
Laravel Initializer
A convenient way to initialize your application
Stars: ✭ 597 (-89.46%)
Mutual labels:  update
Reconspider
🔎 Most Advanced Open Source Intelligence (OSINT) Framework for scanning IP Address, Emails, Websites, Organizations.
Stars: ✭ 621 (-89.03%)
Mutual labels:  framework
Noahv
An efficient front-end application framework based on vue.js
Stars: ✭ 593 (-89.53%)
Mutual labels:  framework
Cofoundry
Cofoundry is an extensible and flexible .NET Core CMS & application framework focusing on code first development
Stars: ✭ 621 (-89.03%)
Mutual labels:  framework
Restlet Framework Java
Leading REST API framework for Java
Stars: ✭ 612 (-89.19%)
Mutual labels:  framework
Orsserialport
Serial port library for Objective-C and Swift macOS apps
Stars: ✭ 609 (-89.24%)
Mutual labels:  framework
Lass
👧 Lass scaffolds a modern package boilerplate for Node.js
Stars: ✭ 615 (-89.14%)
Mutual labels:  framework

Sparkle 2 Build Status SwiftPM Carthage compatible CocoaPods

Secure and reliable software update framework for macOS.

Sparkle shows familiar update window with release notes

This is the upcoming new version of Sparkle. Major new features are support for sandboxing, custom user interfaces, updating external bundles, and a more modern architecture which includes faster and more reliable installs.

Sparkle 2 is currently in beta, but is almost ready for official release. Applications, typically sandboxed, have already been using it in production though. Pre-releases can be found on the Sparkle's Releases. More nightly builds can be downloaded by selecting a recent workflow run and downloading the corresponding Sparkle-distribution artifact.

The current status of Sparkle is tracked by its roadmap.

Please visit Sparkle's website for up to date documentation on using and migrating over to Sparkle 2. Refer to Changelog for a more detailed list of changes. More internal design documents can be found in Documentation.

Features

  • Seamless. There's no mention of Sparkle; your icons and app name are used.
  • Secure. Updates are verified using EdDSA signatures and Apple Code Signing. Supports Sandboxed applications in Sparkle 2.
  • Fast. Supports delta updates which only patch files that have changed and atomic-safe installs.
  • Easy to install. Sparkle requires no code in your app, and only needs static files on a web server.
  • Customizable. Sparkle 2 supports plugging in a custom UI for updates.
  • Supports applications, package installers, preference panes, and other plug-ins.
  • Handles permissions, quarantine, and automatically asks for authentication if needed.
  • Uses RSS-based appcasts for release information. Appcasts are a de-facto standard supported by 3rd party update-tracking programs and websites.
  • Stays hidden until second launch for better first impressions.
  • Truly self-updating — the user can choose to automatically download and install all updates in the background.
  • Ability to use channels for beta updates (in Sparkle 2), add phased rollouts to users, and mark updates as critical or major.
  • Progress and status notifications for the host app.

Requirements

  • Runtime: macOS 10.11 or greater
  • Build: Latest major Xcode (stable or beta, whichever is latest) and one major version less.
  • HTTPS server for serving updates (see App Transport Security)

Usage

See getting started guide. No code is necessary, but a bit of Xcode configuration is required.

Development

This repository uses git submodules, and will not build unless you clone recursively. Also, GitHub-provided ZIP/tar archives are broken due to GitHub not supporting git submodules properly.

git clone https://github.com/sparkle-project/Sparkle
git submodule update --init --recursive

Troubleshooting

  • Please check Console.app for logs under your application. Sparkle prints detailed information there about all problems it encounters. It often also suggests solutions to the problems, so please read Sparkle's log messages carefully.

  • Use the generate_appcast tool which creates appcast files, correct signatures, and delta updates automatically.

  • Make sure the URL specified in SUFeedURL is valid (typos/404s are a common error!), and that it uses modern TLS (test it).

API symbols

Sparkle is built with -fvisibility=hidden -fvisibility-inlines-hidden which means no symbols are exported by default. If you are adding a symbol to the public API you must decorate the declaration with the SU_EXPORT macro (grep the source code for examples).

Building the distribution package

cd to the root of the Sparkle source tree and run make release. Sparkle-VERSION.tar.xz (or .bz2) will be created in a temporary directory and revealed in Finder after the build has completed.

Alternatively, build the Distribution scheme in the Xcode UI.

Code of Conduct

We pledge to have an open and welcoming environment. See our Code of Conduct.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].