Community Hass.io Add-on: IDE, based on Cloud9

Thatā€™ll teach me to work on HASS late at night and first thing in the morningā€¦ In my head, I had that because I was on my LAN I didnā€™t have to setup a NAT rule for it, even though i was accessing via the hassx.duckdns.org url, I added the rule in and now all working fine, thanks for the help!

1 Like

Someone already opened a bug and it is confirmed for ARM devicesā€¦
https://github.com/hassio-addons/addon-ide/issues/2

Iā€™m probably doing something basic wrong, but all I get in the IDE panel is a copy of my overview. Any idea why?
I am using DuckDNS, I have forwarded port 8321 in my router and I have tried restarting the addon and Hassio. I have this in my configuration.yaml;

panel_iframe:
  ide:
    title: IDE
    icon: mdi:code-braces
    url: https://mydomain.duckdns.org:8321

Not sure what the answer to your problem is but I find it much more useful to use both this and Configurator directly in their own browser window/s.

This means you still have HA in itā€™s own window for reference and they are still there when you reboot HA to see the results of your changesā€¦ or to correct whatever you buggered up :slight_smile:

2 Likes

Thanks. That actually makes a lot of sense.

:tada: Release v0.2.0

This release is exciting, at least, for me it is. Iā€™ve been working on this for months! And for you? Well, a couple of thingsā€¦

So what did change? Iā€™ve updated the workflows of the Community Hass.io Add-ons project. Things include:

  • Replaced CircleCI and CodeClimate. We are now using GitLab CI, backed by a couple of custom servers building and testing these add-ons.
  • All add-ons are now scanned during built and release by Clair to prevent security issues in our add-ons.
  • All add-ons are constantly scanned and monitored by Anchore.io. We will be notified immediately in case of security issues occur. (Major thanks to Anchore.io for helping us out!)
  • The add-ons repository is now entirely generated and automatically synced with all the add-ons. This ensures repositories are in sync, never forgotten and releases are almost instantly.
  • The base images that these add-ons are built on are entirely revised.
  • All add-ons have been updated to follow the Docker best practices. These are checked on every code change by GitLab CI.
  • All add-ons had maintenance. All software is updated to the latest and greatest and the documentation has been revisited.
  • There are now 2 bots in place on the GitHub project. The Add-ons Assistant is helping us out with the GitHub issues and pull requests and the AddonsBot is fully active taking care of updating code across the different GitHub Repositories.
  • We now have Edge & Beta add-ons repositories available. This allows everybody to test the latest and greatest (in case you donā€™t care about stability that much, or just wanna help out!)
  • Iā€™ve removed all the PayPal, Bitcoin, ā€¦ buttons. If youā€™d like to show your appreciation, then please, just buy me a coffee.

So thatā€™s quite a lot, right? So what changed in this specific add-on?

Full Changelog

Added

  • Adds .yamllint configuration
  • Adds all architectures to add-on config
  • Adds Probot configuration
  • Pins down Cloud9 core version
  • Adds initial add-on README template
  • Adds Gitlab CI

Fixed

  • Fixes Markdownlint warning in License
  • Fixes hadolint warnings

Changed

  • Replaces Changelog with GitHub releases
  • Upgrades add-on base image to v1.4.1
  • Updates README
  • More efficient cloning of oh-my-zsh source
  • Updates forum link for add-on
  • Updates maintaince to 2018

Removed

  • Removes CodeClimate
  • Removes CircleCI
  • Drops support for armhf and aarch64

Yes, Iā€™ve dropped support for armhf & aarch64, which results in this add-on is no longer supported on the Raspberry Pi.

I really did not want to, but I feel like I do not have any option left. Iā€™ve tried many, many, many times to get it stable on these platforms, but never succeeded. The build times on these platforms is also enormous (a couple of hours), to find out afterwards it didnā€™t solve the problem. Iā€™d rather ship a stable add-on.

Secondly, because of the ongoing issues on the arm based platforms, the add-on did not move forward a lot. So, with this no longer being an issue, I can continue on improving the add-on and giving it the attention it deserves.

ā€¦but most of us are using Hass.io on a RPi3ā€¦ :open_mouth: This is my main add-on because its so awesome

EDIT: so i guess i should just not update this add-on from now onā€¦

1 Like

Great shame but I understand why :sob::sob: I do hope you keep looking for ways to remedy this

:frowning: Sad to see this. Ah well I have other options for remote editing.

my solution for now is just to not update itā€¦ the problem will come when we are forced to start from scratch when HassIO is swapped to the new underlying OS

Needed separate repository with version 0.1.0 for RPi

yeah good point. so we donā€™t accidentally update! (or when people do a fresh install)

ARM canā€™t update it said:

ERROR (SyncWorker_16) [hassio.docker.interface] Canā€™t install hassioaddons/ide-armhf:0.2.0 -> 404 Client Error: Not Found (ā€œmanifest for hassioaddons/ide-armhf:0.2.0 not foundā€).

so the issue will be that we also cant install it again if we need to run a fresh HassIO installā€¦ like you say, would be nice to have a repository for the old version. @frenck think you would mind leaving an old version for us for a while as a separate repository? Also, what would be the plan going forward with regard to the upcoming OS change? Would a version for that support RPi? or that platform not to be continued at all in any capacity?

I canā€™t install this add on, I get errors

18-05-14 10:46:41 INFO (SyncWorker_14) [hassio.docker.interface] Update docker 0.2.7 with homeassistant/armhf-addon-configurator:0.3
18-05-14 10:46:41 INFO (SyncWorker_14) [hassio.docker.interface] Pull image homeassistant/armhf-addon-configurator tag 0.3.
18-05-14 10:47:22 INFO (SyncWorker_14) [hassio.docker.interface] Tag image homeassistant/armhf-addon-configurator with version 0.3 as latest
18-05-14 10:47:22 INFO (SyncWorker_14) [hassio.docker.interface] Stop homeassistant/armhf-addon-configurator docker application
18-05-14 10:47:24 INFO (SyncWorker_14) [hassio.docker.interface] Clean homeassistant/armhf-addon-configurator docker application
18-05-14 10:47:24 INFO (SyncWorker_14) [hassio.docker.interface] Cleanup docker images: ['homeassistant/armhf-addon-configurator:0.2.7']
18-05-14 10:47:29 INFO (SyncWorker_9) [hassio.docker.addon] Start docker addon homeassistant/armhf-addon-configurator with version 0.3
18-05-14 10:50:43 INFO (MainThread) [hassio.addons.git] Clone addon https://github.com/hassio-addons/repository repository
18-05-14 10:50:47 INFO (MainThread) [hassio.addons] Load addons: 33 all - 13 new - 0 remove
18-05-14 10:52:14 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf
18-05-14 10:53:20 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf
18-05-14 10:56:05 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf
18-05-14 10:56:17 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf
18-05-14 11:00:00 INFO (MainThread) [hassio.addons.git] Pull addon https://github.com/home-assistant/hassio-addons repository
18-05-14 11:00:00 INFO (MainThread) [hassio.addons.git] Pull addon https://github.com/hassio-addons/repository repository
18-05-14 11:00:02 INFO (MainThread) [hassio.addons] Load addons: 33 all - 0 new - 0 remove
18-05-14 11:00:20 INFO (SyncWorker_2) [hassio.docker.interface] Update docker 0.68.1 with homeassistant/raspberrypi3-homeassistant:0.69.1
18-05-14 11:00:20 INFO (SyncWorker_2) [hassio.docker.interface] Pull image homeassistant/raspberrypi3-homeassistant tag 0.69.1.
18-05-14 11:03:57 INFO (SyncWorker_2) [hassio.docker.interface] Tag image homeassistant/raspberrypi3-homeassistant with version 0.69.1 as latest
18-05-14 11:03:57 INFO (SyncWorker_2) [hassio.docker.interface] Stop homeassistant/raspberrypi3-homeassistant docker application
18-05-14 11:04:11 INFO (SyncWorker_2) [hassio.docker.interface] Clean homeassistant/raspberrypi3-homeassistant docker application
18-05-14 11:04:12 INFO (SyncWorker_2) [hassio.docker.interface] Cleanup docker images: ['homeassistant/raspberrypi3-homeassistant:0.68.1']
18-05-14 11:04:22 INFO (SyncWorker_13) [hassio.docker.homeassistant] Start homeassistant homeassistant/raspberrypi3-homeassistant with version 0.69.1
18-05-14 11:05:42 INFO (MainThread) [hassio.homeassistant] Detect a running Home-Assistant instance
18-05-14 11:08:48 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf
18-05-14 11:14:25 ERROR (MainThread) [hassio.addons.addon] Addon a0d7b954_ide not supported on armhf

probably related to this commit by @frenck :
https://github.com/hassio-addons/addon-ide/commit/f274771052850bd035eda6c7a672b4319f928dec

I just made some side repository to allow installing IDE version 0.1.0 for people like me with rpi3.

1 Like

I hope so too! I do have a plan, but that is not going to be short-term. I really needed to move forward for several reasons.

The plan includes adding actual ARM based servers (native ARM CPUā€™s) to the build system. Which will at least solve the building issues and build times. In order to do this, I need to make modifications to my build and publish pipelines to support ARM in the first place. This takes time, but is part of the plan anyways, since it would speedup the process of all my add-ons.

Good point, sorry m8.

Iā€™m not feeling comfortable with this, mainly because of CVEā€™s present in this version. Secondly, it will break (and already is a bit broken).

The new platform has nothing to do with the add-on issues.

Thank you for your reply sir, please scroll up a littleā€¦ Support for ARM (Raspberry Pi) has been dropped.

This will do, but be aware that things will break and please note that that version contains CVEā€™s.

Maybe I missed something, can you please give some more info regarding the CVEā€™s?

You might have missed the docker/binfmt story, but thereā€™s a way to build software for ARM (or any other platform, to that extent) on a regular x86 machines typically used by various hosted CI.

Trick involves using multi-arch base-images for docker, that already have all emulation embedded.
I wrote a short piece on similar topic here:

Thereā€™s multiple other references on the web, including guides how to exactly use CI systems with multi-arch capabilities.

Hope youā€™ll reconsider getting ARM support (-hf and -64) back.