-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[marketplace] Future of Eclipse IoT Marketplace #6673
Comments
Good question. I'm not sure if it really is a requirement. However since it's outside our control we don't know what will happen with the market place and so we should have a replacement. I've seen @kaikreuzer mention this already. If I remember correctly the idea was to create a repository as a replacement. I think initially we could simply create a xml file using the same format as the current market place as an replacement. Where people can simply create pull requests for changes. (Although I would suggest some changes to the format). I guess we can always make it fancier. So if we would have a replacement we only need to adapt the current market place binding to the new situation. I don't know if someone has already plans, but if we would start with a simpel xml file based on the current format I can give it a start. |
Yes, we have to remove it - as a non-Eclipse project, we must not rely on it any longer. What @Hilbrand describes pretty much matches my ideas: Have a dedicated repo where updates can be done through PRs. XML might indeed not be the best format, maybe something like YAML could make sense. Best if we structure entries to be in dedicated files with maybe one index created automatically - this would reduce merge conflicts. |
When thinking about making an addon repository, would it not be a good idea to start on something someone has already built or at least look at other projects that solved the same issue? I think I read @cdjackson suggesting that the UI for the users should be less confusing (having all addons in the same place) which also suggests that the underlying technology could be similar. Here are some of the things that I though could be useful for the package management for OH:
If Github was used as the package hosting it would be nice if the configuration of addon repositories acted like APT repositories for linux for users:
This way it would be relativly simple to manage binding updates that are not bound to the version of the core. 2.5.x releases or packages would work on 2.5.x cores and autoupdate. 2.x core releases would mean breaking changes for addons. There could be a UI that shows updates and/or a There are multiple projects that allow (albeit mostly developer focused) to download packages from github repositories. We should be able to steel some ideas from them, and other package management systems/addon systems. Projects that I know if that uses GitHub as the package repository:
|
A few quick comments:
|
@petero-dk & @benalexau, many thanks for your input here! Hence the main question is, what metadata would we require (id, label, description, screenshots, version ranges, url,...) and what format shall we choose for storing that metadata, so that it is easy for people to maintain it through simple PRs. As mentioned above, I could imagine that we simply say that every entry should be done as a separate YAML file in a folder that corresponds to the add-on category (binding, voice, persistence,...). At least this could be a simple starting point for this feature. |
Here are a few ideas used by Home assistant.
|
Here is a proposal for the new market place extension. The idea is a marketplace is a git repository.
Each directory contains a {
"name": "openHAB Marketplace Add-ons",
"url": "https://openhab.community/addons",
"maintainer": "John Do"
} The {
"name" : "Example",
"description" : "This is an example binding.",
"url" : "http://mydomain",
"license" : "EPL-2.0 ",
"maintainer" : "My Name",
"package_type" : "bundle",
"package_format": "kar",
"packages" : [
{
"version" : "1.0",
"version_compatibility" : {
"from" : "2.5.0",
"to" : "2.5.*"
},
"package_url" : "https://mydomain/mydownloads/my.cool.binding-1.0.kar",
"readme_url" : "https://mydomain/mycoolbinding/1.0/readme.html",
},
{
"version" : "2.0",
"version_compatibility" : {
"from" : "3.0",
},
"package_url" : "https://mydomain/mydownloads/my.cool.binding-2.0.kar",
"readme_url" : "https://mydomain/mycoolbinding/2.0/readme.html",
}
]
} My questions are:
I'm working on a poc for this approach so any feedback would be great. P.s. the approach and structure is not completely original, but inspired by another add-on repository 😉 |
Nice proposal.
first and last being useful to filter/search on. |
What happends with the Eclipse IoT Marketplace in openHAB 3.x? Can we continue to use it or are we required to find a replacement solution. Any plans for this already?
Concrete question to the code of this repository: Should we remove the Eclipse IoT Marketplace Add-on from the master / 3.x branch?
The text was updated successfully, but these errors were encountered: