Skip to content
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

installation script incorrectly prompting version types #245

Open
the1gofer opened this issue Feb 17, 2022 · 2 comments
Open

installation script incorrectly prompting version types #245

the1gofer opened this issue Feb 17, 2022 · 2 comments

Comments

@the1gofer
Copy link

Fresh instal, it said python 3.9 was less than the manditory 3.7, and that Docker isn't up to date, even after the script updated docker and rebooted.

@Paraphraser
Copy link
Contributor

Please see This Project is Dormant - which will point you to the SensorsIot/IOTstack fork.

But before you race off to do that, please be aware that "installation" is currently a bit of a minefield. There are many moving parts - IOTstack, Raspbian Buster/Bullseye, 32-bit vs 64-bit OS variants, docker itself, and variants of docker-compose. And home assistant.

A few examples:

  • If you run Buster then a backport is needed for libseccomp2 to avoid Alpine-based containers either refusing to build or crashing. That problem goes away if you choose Bullseye but if any container needs camera support, it might not yet be "Bullseye ready".
  • Most containers seem happy with 64-bit Bullseye but, occasionally, you get reports suggesting that isn't universal. Mainstream containers (eg Portainer, Mosquitto, Influx, NodeRED, Grafana, PiHole, WireGuard) are OK but I know that OctoPrint/Docker doesn't like 64-bit.
  • If you let the menu install docker it gets it "right" but the way the menu installs docker-compose (using apt) gets an out-of-date version which somehow futzes with docker's version number (no idea how). That confuses the menu into thinking docker is out-of-date (a pull request is pending to address that) and, then, if you try to update docker-compose it breaks docker and everything needs to be blown away and reinstalled. That also nukes any Supervised Home Assistant.
  • docker-compose is now on its third variation on the theme. The version installed via apt was the starting point. Then came a version installed by pip. Now it's a platform-specific compiled binary fetched using wget or curl and copied to the right place. I refer to this as "modern" docker-compose. It's actually a plug-in so the commands docker-compose and docker compose are synonymous.
  • If supervised home assistant is in the mix, the IOTstack mechanisms for installing that are totally broken (the folks at HA keep moving the goalposts). It can be done but it really needs to be done at build time rather than provided as a menu option which implies it can be installed as an afterthought. Pull requests are in to remove all mention of HA from the IOTstack menu.

Also, if you've been using gcgarner, the menu you're used to is now referred to as "old menu". It's still there. You just need to git checkout old-menu. The menu on the master branch is "new menu". The two have been slowly converging. I think the only real difference now is old menu uses environment files in the services directory whereas new menu stores environment variables inline in docker-compose.yml. Personally, I prefer the old menu UI but I keep all my environment variables inline in the compose file.

So, after giving yourself time to digest that small horror story, maybe also look at PiBuilder which is agnostic on Buster/Bullseye, 32/64-bit, clones SensorsIot/IOTstack, installs docker, docker-compose and dependencies correctly (and in a way that keeps the menu happy), and can also install Supervised Home Assistant.

If you find yourself thinking that it might be about time to start from a clean slate with 64-bit Bullseye and use PiBuilder to get a running system, you might also like to look at IOTstackBackup. PiBuilder installs IOTstackBackup but you'll probably want to install it on your existing system so you can run a backup before you rebuild.

Hope this helps.

@the1gofer
Copy link
Author

sorry i was running the correct one, just posted this int he wrong spot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants