HowTo correctly remove a Smarthome/J binding?

Howto should I remove a Smarthome/J binding (like Viessmann or Amozon Echo Control)?

Uninstalling via UI does not remove the binding, although it shows like uninstalled on the UI.
Doing a

bundle:resolve

on Karaf has no effect.
Doing a

bundle:stop

sets the bundles in to “Resolved”. After that a new version could be installed, however the old ones are still present in the “bundle:list”.

Selecting “Show potentially incompatible Add-ons” didn’t help either!

I am out of ideas!

As a last ditch effort you can nuke it. Note this is not the “correct” way and there is a risk of damaging your system, take backups.

First stop OH.

I’m not entirely certain where marketplace add-ons are configured for installation as I’m not using any. So first I’d check $OH_USERDATA/config/org/openhab/addon.config and make sure it’s not listed there. If so remove it.

Next check $OH_USERDATA/jsondb and see if it’s listed in any of the files with “marketplace” in the name. If you find it, figure out the extent of the record and delete that record.

Finally, clear the cache.

For a less drastic option you can just straight to clear the cache and see if that handles it. But if it’s still listed as an add-on to install, OH will reinstall it.

1 Like

Usually they are features, and you can list the installed features:

openhab> feature:list | grep smarthomej
smarthomej-binding-tcpudp                         │ 4.0.0.SNAPSHOT   │ x        │ Started     │ org.smarthomej.binding.tcpudp-4.0.0-SNAPSHOT │ TCP/UDP Binding

The first column in the feature name. Uninstall it

feature:uninstall smarthomej-binding-tcpudp

and remove the repo (fifth column)

feature:repo-remove org.smarthomej.binding.tcpudp-4.0.0-SNAPSHOT

Usually this should work without this manual steps, but maybe there is a bug in the addon service code that prevents a correct uninstall. Unfortunately it does not happen on my system(s).

1 Like

Thank for your inputs!

@J-N-K
The command “feature-list” did show the actually used bundles only. After stopping the (old) bundles I was able to install the current ones. However the old one remained in the list (status “resolved”). Since “feature-list” did show the actually used ones only, I believe your suggested “feature:repo-remove” wouldn’t have worked.

@rlkoshak
I found nothing in the files, only the “clear-cache” made the change!
The old bundles are gone now.