Lack of interest Further enhancing Add-Ons, packing everything into a zip

This suggestion has been closed automatically because it did not receive enough votes over an extended period of time. If you wish to see this, please search for an open suggestion and, if you don't find any, post a new one.

Rigel Kentaurus

Well-known member
A nice to have would be that addons could be distributed in a nice zip file, that the user could just upload, and that's it.

As it stands now, the user has to upload the files individually to the server, in the correct places, while this is not particularly hard, it could be easier. Since we already upload an addon.xml file to actually install the mod, we might as well upload a .zip that contains both the php files and the xml file

Implementation wise, we already use library/ for almost everything, we could have another directory called addons/ which would be added to the php search path, and, ready, addons with auto-install without ever conflicting with the main code (an addon cannot upload a rogue XenForo_ControllerPublic since everything would go to a different directory). Since already data and internal_data are chmod 777 adding one more directory to that should not be that much of a problem

This would make installing and uninstalling addons a really pleasant experience. It could actually be one click to deleting the relevant files.
 
Upvote 1
This suggestion has been closed. Votes are no longer accepted.
The addons folder would need to be constantly scanned, which isn't really feasible.

What would be quite nice though, is if there were an addons folder as you described, and once an xml file is added a notification is added either throughout the admin panel or on the main page of it offering to either install the addon or delete the xml file. After installation the xml file would be discarded. Additionally the addon name, whether it is an upgrade, etc. would be read out of the xml on the fly and handled automatically.

Something for 1.2 perhaps :)
 
1. i requested this already, let's see if i can find the thread

2. i coded this already. That's why all my add-ons are in library/ragtek/addonid
if i create a new add-on, the system creates the folder + static file and asks me if a ineed controllerpublic,controlleradmin,model,dw directory
and then once i'm finished, i can create the zip export

it's still a very early alpha, so i can't release it.
 
1. i requested this already, let's see if i can find the thread

2. i coded this already. That's why all my add-ons are in library/ragtek/addonid
if i create a new add-on, the system creates the folder + static file and asks me if a ineed controllerpublic,controlleradmin,model,dw directory
and then once i'm finished, i can create the zip export

it's still a very early alpha, so i can't release it.

If I remember what happened with the AddOn Management solutions and template solutions in vb.org, they have a serious problem of adoption. So, this kind of feature is better suited in the core, where it is available to all add-on developers, instead of people having to install a separate add-on, only to manage their actual addons.

That said, I think it is awesome that you are doing something like that and I would love if it were released someday.
 
Id like to see some sort of API between users boards and the new resource management system soon coming.
A "click here to install" button... which would allow users to 1 click install mods from xenforo to their boards.
That sounds like the Apple Apps Store.

A nice to have would be that addons could be distributed in a nice zip file, that the user could just upload, and that's it.
Excellent idea.
As it stands now, the user has to upload the files individually to the server, in the correct places, while this is not particularly hard, it could be easier.
That's not good.
 
Nice. That looks like the complement of what I am asking for. Yours is for creating the zip file, mine is using that zip file to actually install the addon.
 
ups
i missed your point in the first post:(
I thought your talking about creating the zip^^
 
ups
i missed your point in the first post:(
I thought your talking about creating the zip^^

And, actually I did not think about generating the zip in the first place, and I think that makes complete sense... export as zip, import as zip. It is completely doable. And would get rid of the "package" and the "upload" stage of things. The installer already gets rids of the "execute queries" and the hooks of the "edit templates".

This could put us one step away of the "click here to install"
 
And, actually I did not think about generating the zip in the first place, and I think that makes complete sense... export as zip, import as zip. It is completely doable. And would get rid of the "package" and the "upload" stage of things. The installer already gets rids of the "execute queries" and the hooks of the "edit templates".

This could put us one step away of the "click here to install"
I've added this to our todo list for my addon helper framework(but i agree, if it should be in the core), because it's really a nice idea (for users who want this).
I would NEVER give the server write permissions to the add-on directories^^
 
I've added this to our todo list for my addon helper framework(but i agree, if it should be in the core), because it's really a nice idea (for users who want this).
I would NEVER give the server write permissions to the add-on directories^^

It could be properly sandboxed. As far as the write is concerned, I was thinking we could have a directory named "addons" in the XenForo installation (that is writable), that protects all other core files from being overwritten. Of course, XenForo would not find this by default because it only checks inside "library" for classes, but this is as easy as adding set_include_path(get_include_path() . PATH_SEPARATOR . './addons'); in the FrontController

Another solution could be, to restrict writes into a specific addon directory, creating a convention, of course, since one would need to name their classes the same as the addon-id, but that would protect an add-on from overwritting other add-on files.

Or, if that sounds unreasonable, the engine could just check if the file already exists and refuses to install the add-on if the existing file is not owned by the addon.
 
Top Bottom