Updates for modules from OpenTeacher

Registered by Milan Boers

The module manager will need an interface to update the modules.
There also has to be an easy way to install downloaded modules, or uninstall them.

Blueprint information

Status:
Not started
Approver:
Milan Boers
Priority:
Medium
Drafter:
OpenTeacher Maintainers
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for 3.x
Implementation:
Not started
Milestone target:
None

Related branches

Sprints

Whiteboard

New plan - IF this is done, just a simple link to the downloads page if there's a new version. Could be done via the Launchpad API, or by adding a version at e.g. the OT Web Services api or similar.

OLD:

GPG handling:
Command: gpg(.exe) --status-fd 1 --homedir gpghome --verify updates.json.asc updates.json
If verifying succeeded, the exit code is 0.
If public key was not found, the exit code is 2.

Verifying also succeeds when the key is imported, but not trusted. Since this is local, and we use our own gpghome, I don't believe this matters. We can treat all imported keys as trusted, and all unknown keys as untrusted. This is what the current revision does.

This will change the way OpenTeacher is distributed.
~milanboers proposes we do this:
- When we have enough stable new modules (modules that were not in any previous releases), or there are changes to the module manager, we release a new OpenTeacher version.
- Bugfixes and important updates of modules are pushed through the update manager.

~marten-de-vries says:
- All updates are pushed through the update manager, we only release versions now and then to make the updates after the download not too big.

~Guus asks:
- Will translations also be updated trough the manager?
~marten-de-vries: Yes!

Discussion points:
- Do we alert the user when an update is available, do they have to look for theirselves, or do we secretly automatically push them? Linux users are not used to updates within applications.

By default the user gets asked, there's an option to automatically (not) install updates the next time.

--
While this essentially worked (and I guess still works), it does depend on the module directory being writable. That means, we need to change the packagers quite a lot. Also, I still think Linux users don't like this. Maybe we should think about some alternate solutions:
1)
- use repositories for linux distro's
- use a small script that downloads new MSI's and upgrades them for windows
- something similar for mac?

Should be quite a lot easier now that we have automated packagers.

2)
Do nothing. Essentially what we're doing now for already quite some releases :P.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.