Req alternative to prevent abuse of <requires> in addon.xml
#1
So a lot of skins abuse the <requires> tag to bulk install add-ons they support. However, this prevents users from disabling those add-ons if they have that skin installed.

Only addons absolutely essential to skin functioning should be in <requires> tags - like script.skinshortcuts or script.favourites. Addons that are auto run services really should not be in here - e.g. TvTunes, NextUp, LRCLyrics. Having these types of addons in <requires> tags means that every skin then needs to add a skin setting to disable these addons rather than users just disabling/uninstalling the actual addon. Absolutely no skin is going to require NextUp, TvTunes or LRClyrics -- they just support the features they supply.

Basically, I want an additional tag that installs other add-ons used by the skin but aren't absolutely essential. Something like <preinstall>
This would prevent abusing the <requires> tag whilst also allowing skins to preinstall certain add-ons that are important for the overall skin *experience* (e.g. NextUp in fTV).
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#2
This would be great, I don't know how many times I've tried to uninstall TV tunes but couldn't because it was required by a skin I was testing.
Reply
#3
+1
Great idea
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#4
This is a really really good idea. Smile
Reply
#5
+1
Have you tried using the optional flag?

Code:
<import addon="plugin.program.super.favourites" optional="true"/>
Image Lunatixz - Kodi / Beta repository
Image PseudoTV - Forum | Website | Youtube | Help?
Reply
#6
(2015-07-03, 13:17)Lunatixz Wrote: +1
Have you tried using the optional flag?

Code:
<import addon="plugin.program.super.favourites" optional="true"/>

Tried it, doesn't work
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#7
(2015-07-03, 13:35)sualfred Wrote:
(2015-07-03, 13:17)Lunatixz Wrote: +1
Have you tried using the optional flag?

Code:
<import addon="plugin.program.super.favourites" optional="true"/>

Tried it, doesn't work

the optional was added at some point but not sure that ever worked like it was supposed to or maybe is broken atm
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#8
If it can be fixed then we have the answer covered correct?
Reply
#9
(2015-07-03, 13:52)Martijn Wrote:
(2015-07-03, 13:35)sualfred Wrote:
(2015-07-03, 13:17)Lunatixz Wrote: +1
Have you tried using the optional flag?

Code:
<import addon="plugin.program.super.favourites" optional="true"/>

Tried it, doesn't work

the optional was added at some point but not sure that ever worked like it was supposed to or maybe is broken atm

iirc this would/should allow you to disable the installed add-on again. Also it wouldn't mark the main add-on broken if dependency was missing.


i really question what the additional tag would gain.
either you install the extra add-on or you don't. having it optional or not it would just pull in that add-on and start it. Installing it and setting it disabled doesn't make sense either (i think)

On first skin install:
the only way i would see this working that when you install an addon it gives the dependencies which are requered and the user has to accept these.
For the additional ones you could have a multi-select dialog which the user has the option to not install the nice-to-have ones.

At each skin upgrade the optional ones must be ignored.

The above should be the same for all add-ons and not just skins. Problem here is to not overload the user with additional info and option on which he can't even judge if he wants it or not. This is a general problem as all add-ons installed as dependency are forced and cannot be disabled when some add-on is still in use that "wants' it.

I agree with you all that skins/add-ons shouldn't install by default any other might be useful or nice to have.
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#10
Is there a built in function that can install addons from the skin? That way a button in skin settings can be used to quickly install supported addons (or from startup.xml)

Personally I think requires should only be used for absolutely essential addons that the skin would break without and leave the rest up to users. However, the evidence points to it continuing to be abused. I've even had one modder refuse to remove an unnecessary dependency after I politely requested that they do so.
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#11
(2015-07-04, 02:48)jurialmunkey Wrote: Is there a built in function that can install addons from the skin? That way a button in skin settings can be used to quickly install supported addons (or from startup.xml)

Personally I think requires should only be used for absolutely essential addons that the skin would break without and leave the rest up to users. However, the evidence points to it continuing to be abused. I've even had one modder refuse to remove an unnecessary dependency after I politely requested that they do so.
I dont know how many skins "abuse" that tag really, but in general the team seems to agree that we should enforce a pretty strict policy for this to only allow "needed" add-ons (self-installing service add-ons are the main issue here IMO, that should perhaps be disallowed completely)
And no, there is no builtin, you will get asked for installation when opening the plugin path of not-installed add-on for example though afaik.
Donate: https://kodi.tv/contribute/donate (foundation), 146Gr48FqHM7TPB9q33HHv6uWpgQqdz1yk (BTC personal)
Estuary: Kodis new default skin - ExtendedInfo Script - KodiDevKit
Reply
#12
The trouble is letting the user know there are other addons available that will enhance their experience in the first place. Wink
Reply
#13
I call it the "Feature Discovery" issue :D

The current way Kodi is, for skins and even the core program, it's hard for users to know what else is possible by installing add-ons, or even built-in features that require a change in settings.
Reply
#14
Hence the need for an optional install flag...
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#15
You can have all the fucking flags you like but its self control and awareness that will win the day.
Reply

Logout Mark Read Team Forum Stats Members Help
alternative to prevent abuse of <requires> in addon.xml0