ioquake / launch

The launcher for ioquake3.
Other
37 stars 16 forks source link

Update notifications #12

Open Manuel-K opened 8 years ago

Manuel-K commented 8 years ago

I've started implementing an update notifier. I think it's a nice compromise, the user get's informed about a new version, but none of his files get changed automatically. I wanted to know if you are interested, before I clean up the code and make a pull request.

At the moment the current version is hard coded in the launcher and it's compared against a json file downloaded over http. If the version denoted by the json file is newer, than a string from the json file is displayed in the launcher's status bar.

I think there should be an option to disable this functionality, because some people don't like programs that phone home, even if the contact is read-only.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

NuclearMonster commented 8 years ago

I understand that notifications of updates instead of automatic download and application of updates, and disabling options to check for updates, are attractive to some technically savvy people. But, In order to meet the goals of this project the launcher/updater must update both itself and ioquake3 automatically. The savvy user could disable this by not using this launcher/updater and instead compiling ioquake3 or using another version of ioquake3 without the launcher by downloading a test build directly. None of these are what launch is here to solve.

This project must solve the problems of an ioquake3 user that isn't technically savvy, or interested in our development, enough to keep both launch and ioquake3 up to date and enable easy access to features that are otherwise buried in wikis, forums, and README files. Most major programs that aren't distributed via Steam these days do things like this.

Manuel-K commented 8 years ago

Calibre only pushes the user towards the download page.

Okay. I've added some stuff to download files, but I haven't plugged it together with the unzip functions. I think we need to add another executable to update the launcher because (if I'm not completely mistaken) it isn't possible to replace a running Windows program. I'm not sure how to integrate the download progress into the gui. Do you think a progress bar element in the status bar would be a good idea? Should we ask the user if he/she/it/whatever wants to install the updates?

Should I even spend time on this?

NuclearMonster commented 8 years ago

I appreciate your work, it's my fault for not creating a more solid specification for the launcher ahead of time.

Calibre is not the most user-friendly software in the world. Take a look at a launcher like the one downloaded from http://us.battle.net/en/app/ for an example of what I'm looking for. Since Blizzard have more control over the in-game UI they don't have to put in the configuration aspects, but it should be a good starting point for design decisions like progress bars and the like.