Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates: user interface changes #303

Draft
wants to merge 25 commits into
base: master
Choose a base branch
from

Conversation

antonlacon
Copy link
Contributor

This builds on #301. Its commits are included here. @flubshi you're the only user I know of who may create their own custom releases.json instead of using custom to fill in the LE testing one if you wish to test this.

This adds a ReleaseChannel toggle that switches the releases.json it uses from looking at releases.libreelec.tv to test.libreelec.tv to a user defined custom URL ("stable", "testing", and "custom" respectively).

This does some menu element hiding/revealing based on which release channel is being used (ex: autoupdates only apply to the stable channel). It also refreshes the releases.json it checks for version and available builds when the release channel changes. This can be a noticeable delay if on slow wifi between changing the release channel and the menu reloading.

Other interface changes are locale updates and deleting the custom channel 2 and 3 (custom channel 1 becomes the value used for the custom release channel).

Autoupdate is disabled (stats shared, but it halts the check after submission) if not on the stable release. Screenshots follow:

Default (stable channel, autoupdates on):

screenshot00000

Stable channel, autoupdates off:

screenshot00001

Testing channel:

screenshot00002

Custom channel (URL would be shown if entered):

screenshot00003

Draft until others look at the strings before squashing and 301 goes in.

@chewitt
Copy link
Member

chewitt commented Jun 27, 2023

I'd ask that Automatic Updates sits underneath Available Versions so there's a logical progression between Channel > Release > Versions .. before we get to the update features that apply them. Otherwise (from a GUI perspective as I should never be allowed to review Python code) .. looks fab :)

@antonlacon
Copy link
Contributor Author

I tried it and I found having the automatic update toggle expanding options above it, instead of below it, to be odd.

I see the progression as "Will the system manage the updates? y/n" and then giving the user what their choices are when answering n.

@flubshi
Copy link
Contributor

flubshi commented Jun 29, 2023

I have used my custom URL when there was no official releases.json for testing. Since there was an official releases.json for testing, I switched to this URL channel.

But it would be nice to keep this feature, in case some "testing forks", like for instance Montellese "Media importing" would like to make use of it.

General review and cleanup of issues pointed out by pylint:

unexpected indent
could use f-strings
not inializing variables in init
redefining builtins
too broad exceptions
unneeded elses after returns
unneeded parantheses
== instead of is in evaluating True/False
unused function parameters
unused imports

Signed-off-by: Ian Leonard <[email protected]>
Addon will require Python >=3.9

Signed-off-by: Ian Leonard <[email protected]>
The release channel entry serves as a releases.json selector.

stable: use releases.libreelec.tv/releases.json (stable builds)
testing: use test.libreelec.tv/releases.json (nightly builds)
custom: use a user designated URL for releases.json

The 'custom' setting replaces the Show Custom Channels toggle.

Adds a set_release_channel() function to refresh available build channels.

Signed-off-by: Ian Leonard <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants