Newbie question about missing addons

Hi there.

Tech savvy and computer literate newbie here. Getting to grips with WebThings in docker on a Raspberry Pi 4.

I think the only non-standard things I have done is use a MacLAN network so that the gateway has it’s own IP address and that it does not have a subdomain (current problems registering for LE certificates).

Everything works with one exception - some of the addon’s are not available for me to add. In particular the DateTime addon.

Is this likely to be related to either the network connection or the certificate issue or is there something else going on that I do not know about?

I have been running WT using Docker on a rPI 2b+ w/o issue. The DateTime addon installed fine. Assume you have setup a persistent docker volume to store addons, logs, etc. across restarts.

Here is my docker start command. Note that /mnt/EdbergFS is also a USB stick that is mounted at boot. It eliminates writing to the SD card by WT (and other log files I’ve moved to the USB file system)

docker rm webthingsio-gateway

docker run -d --restart unless-stopped --net=host \
        -e TZ=America/Chicago \
        --device /dev/ttyACM0:/dev/ttyACM0 \
        --log-opt max-size=1m \
        --log-opt max-file=5 \
        -v /etc/timezone:/etc/timezone:ro \
        -v /mnt/EdbergFS/mozilla-iot:/home/node/.mozilla-iot \
        --name webthingsio-gateway webthingsio/gateway

I think some addon aren’t available on docker image maybe someone could confirme

When the gateway requests a list of add-ons it specifies the system architecture, gateway version and node and python versions available.

E.g. https://api.webthings.io:8443/addons?arch=linux-arm&version=1.1.0&node=64&python=2.7,3.7

It’s likely that the add-ons you’re looking for are not supported in your configuration.

I just check my RPI addon repository and it’s running DateTime v1.1.4. This was originally installed a long time ago when using Mozilla Gateway. Manually downloading the addons using the link that @bfrancis post did not return the adapter for me today…

I did a github compare between v1.1.4 and v1.1.6 and it indeed dropped support for python v3.7, which what is installed on my rpi.

image

One option may be to manually git and install v1.1.4 of the adapter or upgrade python on the rpi. I would be leary about upgrading python as it may cause other problems.

Wonder by DateTime dropped support for python 3.7?

I’ve filed an issue on the date-time add-on to ask whether Python 3.8 is really required https://github.com/WTIOAddons/date-time-adapter/issues/12

Thanks for documenting the issue and check if there is a technical reason DateTime can’t support v3.7

I wondered why the addon checker for DateTime (and others) can’t specify a minimum version of python rather than a list of approved versions which may eventually cause versioning issues in the way-future…

Hi all, my mistake. I had to go through some gyrations to get 3.7 to build but there is now a pull request with the fixed version 1.2.1 of date time adapter.

1 Like

This should be fixed now.

Thank you to @billfahle and @t1m1.

Hi Ben, I had a problem in the build I pushed. I am testing a fix right now. Sorry about that. I broke everyone, not just new installers.

For those who want a quick fix, here’s the scoop. Set up your gateway to accept ssh, then ssh into the gateway. Then:

cd ~/.webthings/addons
wget --no-check-certificate https://github.com/WTIOAddons/date-time-adapter/releases/download/v1.2.3/date-time-adapter-1.2.3-linux-arm-v3.7.tgz
gunzip -c date-time-adapter-1.2.3-linux-arm-v3.7.tgz | tar xvf -
rm -rf date-time-adapter
mv package date-time-adapter

Never mind the above, the pull request was accepted for 1.2.3.

Thanks for the headsup on this. " I think" mines ok now. I deleted the add-on then reinstalled it. :+1:

Thanks for this update. After manually installing, I see the new version of the Date/Time adapter in the Addons, but don’t have the ability to use it in Rules (it doesn’t show up in the available conditions). I’m running the 1.0.0 version of the Gateway. Should I update to the version on Github?

Sorry didn’t hit reply. Welcome to the community, webthings.io is the best solution out there, but unfortunately a well kept secret. Go to the things from the main menu hamburger, and choose + to add a new thing, the date time adapter will be there to choose. Save it. Now it should show up in things, and in rules.

Thanks for not embarrassing me more than what is unavoidable…

As it turns out, I screwed myself with a typo in setting the time zone.

Hi @bfrancis, do you know where the data for https://api.webthings.io:8443/addons?arch=linux-arm&version=1.1.0&node=64&python=2.7,3.7 is populated from or how it’s updated? It currently still lists version 1.2.1 for date-time-adapter, but 1.2.3 is the latest in the addon-list project.

I believe the list is filtered by addon-proxy.py, which pulls its data directly from the GitHub repo.

I’m actually seeing 1.2.3 in that list now. Is it possible you’re seeing a cached result?

How very strange. Maybe there is a router cache I didn’t know about. Safari, chrome, and curl all get the same result (and my pi version of webthings sees 1.2.1 as the version when you add an addon). I didn’t think it was possible to cache secure https data like that in the middle. I changed the URL slightly (dropped the 2.7, from python) and it still gets the same version number. Here’s a chunk of what I see when I click that link (still).

Blockquote
"“id”:“date-time-adapter”,“name”:“DateTime Adapter”,“description”:“A Date & Time adapter to create more advanced rules using sunrise, sunset, weekends, etc.”,“author”:“tomasy-wfahle”,“homepage_url”:“https://github.com/WTIOAddons/date-time-adapter",“license_url”:“https://raw.githubusercontent.com/WTIOAddons/date-time-adapter/main/LICENSE”,“version”:“1.2.1”,“url”:“https://github.com/WTIOAddons/date-time-adapter/releases/download/v1.2.1/date-time-adapter-1.2.1-linux-arm-v3.7.tgz”,“checksum”:“6f4bf5a7aa7250c0bc4e93bde4dca5bd82a30b933e1a4880011a6cf095273752”,“primary_type”:“adapter”},{“id”:“dingz-adapter”,“name”:“Dingz”,“description”:"Dingz support”,“author”:“Martin Giger”,“homepage_url”:“https://github.com/freaktechnik/dingz-adapter",“license_url”:"https://raw.githubusercontent.com/freaktechnik/dingz-
Blockquote

This eventually started working FYI.