rizinorg/cutter

Create a software updater for Cutter

Open

#1,177 opened on Feb 8, 2019

View on GitHub
 (3 comments) (0 reactions) (0 assignees)C++ (1,123 forks)batch import
Build SystemEnhancementHelp Wanted

Repository metrics

Stars
 (14,852 stars)
PR merge metrics
 (Avg merge 13d 23h) (20 merged PRs in 30d)

Description

Is your feature request related to a problem? Please describe. Currently, in order to download the newest release of Cutter, one should visit our Github releases page, manually download the latest version and replace the one they currently have, with the newest. In addition, the user needs to replace any shortcut they have to point at the new one. This is not user-friendly to update Cutter because it gives the responsibility to the user and makes the whole process uncomfortable. It is for our good to have our users using the latest version of Cutter, in order to give them the best and newest experience. Also, it would reduce the number of people coming with bugs from older versions.

Describe the solution you'd like Like many other modern applications, we also need a cross-platform feature to auto-update and manually-update Cutter straight from the interface. There are many approaches to this, but in my opinion, we should give our user three options:

  1. Auto-Update and ask for restarting Cutter when comfortable for the user
  2. Announce a new version and let the user click the "Update now" button themselves
  3. Provide a check-for-update button (as we have now) and let the user click the "update now" button themselves

Further reading

Updaters: QSimpleUpdater - An implementation of an auto-updating system to be used with Qt projects QtAutoUpdater - [website] - A Qt library to automatically check for updates and install them

Updates and Installers - Qt Documentation Qt Installer Framework - Creating an installer - This tutorial describes how to create a simple installer for a small project Qt Installer Framework - Creating Online Installers Qt Installer Framework - Promoting Updates - Create online installers to be able to promote updates to end users who install your product.

Contributor guide