Yeah that definitely fall in the category “butcher” a word.
Yup. Exactly.
“Home Assistant Easy”
The post you linked to doesn’t contain what you claimed I said.
“You wanted a community decision”
I had simply expressed my opinion that one of the best suggestions from the discussion in the Architecture repo was to ask the community for its input. You then asked me questions about deadlines and next steps in the selection process like I was privy to this information. Except, I’m not an organizer of this process, only an observer.
The person who is in a better position to answer your questions, SeanM, has already replied to you.
Understood. So what is your proposal to identify the four different installation methods, and their relative differences, without employing a “cheat sheet”?
Currently, the four installation methods are called (with no accompanying feature table):
- Home Assistant
- Home Assistant Supervised
- Home Assistant Container
- Home Assistant Core
How can we improve that?
Well, so far I like your table from post 95 best, possibly with an added column “who is it for?” (see post 106). And possibly the explanation for “supervised”.
I think that would keep the “Home Assistant” name for the product itself, and clarify the possible installation methods just great while keeping a lot of names as they are. Short, concise, tabular.
For a newcomer, the table would be an enormous help. Wish I had had that.
Thinking about it … the table is a cheat sheet, isn’t it? Still I think the names are good (Supervised OS, Supervised, Coretainer/Container, Core). Or even—schematizing it even more—Supervised OS, Supervised Container, Core Container, Core).
Btw, since I haven’t used Windows for more than 8 years: Is there a specific installation method for Windows users? Or would that either be “Supervised OS” (full box, extra hardware) or “Core” (run it under Python in Windows)?
And what about the MacOS X users? Core? Homebrew?
I added a Skill Level
column.
Name | Skill Level | Supervisor | Add-ons | Snapshots | OS | Docker | Method |
---|---|---|---|---|---|---|---|
Hub | Novice | Yes | Yes | Yes | Yes | Yes | Disk image (1) |
Hubian | Linux, Docker | Yes | Yes | Yes | No | Yes | Shell script (2) |
Coretainer | Linux, Docker | No | No | No | No | Yes | Docker container (3) |
Core | Linux | No | No | No | No | No | Python app (4) |
Note | Description |
---|---|
1 | Burn disk image, for your model of single-board computer, to SD card or as a Virtual Machine. |
2 | Execute shell script on an existing instance of Debian linux on a dedicated machine. |
3 | Install docker container in an existing docker environment. |
4 | Install python app, preferably in a virtual python environment. |
Installation is preferable on Linux; other operating systems can be mentioned in the documentation.
EDIT
-
I think the table makes it fairly clear that if one has no linux or docker skills, or no desire to learn or employ them, the optimal choice is the first installation method (Hub).
-
If you’re familiar with managing a linux system, but not docker, then you might want to use the second method (Hubian).
-
If you aren’t interested in the additional features offered by Hub/Hubian and have linux and docker skills, you have a choice of either Coretainer or Core.
Cheers. It’s getting forward.
Your edit: Exactly. That’s why the table is needed.
Does Hub (a node with a number of links that greatly exceeds the average) really fit? I immediately think of a network of HA instances when reading hub.
At this point in the discussion, I’m trying to establish a table that clarifies the features and intended audience for each installation method. I’m hoping that by seeing the table, it will inspire people to invent appropriate names.
What’s clear to me is that the first two are nearly identical in terms of available features (but not skills because the second one requires that you supply and manage the OS yourself). It’s this similarity that inspired me to choose names with a common theme.
I was partial to Supervised OS
and Supervised
to describe the first two methods. However, I have the impression the core team wants something ‘short and sweet’ and Supervised OS
isn’t that. So I’ve migrated to Hub
and Hubian
to identify the first two methods.
As for the third and fourth methods, the only suggested change is to make Container
into Coretainer
to emphasize it is just Core in a docker container.
This is about naming, you are now entering some other discussion, which is already covered in the ADR. If you don’t know how Docker works, the last installation method to use would be a Supervised installation type. It requires extensive knowledge of Linux, Docker, but also networking in general. It is not just an installation script, as it requires additional maintenance to your OS after that.
Some examples include: configuring and picking Docker storage and logging drivers and keeping up with software and kernel requirements for the future.
The amount of knowledge needed and strict requirements is highly underestimated in general for Supervised. Sure, it works right after running an installation script. But if anything changes or comes up after that, one needs to be able to maintain it as well.
Tutorials/scripts are easy… after that… that is what counts.
Noted. I added Docker
as a prerequisite skill for the second installation method.
I understand the reasoning here. If one doesn’t choose the first method, one is expected to have experience with managing the underlying operating system, docker environment, and networking.
Although that requirement hasn’t dissuaded thousands of users over the past 6+ years, going forward it’ll be far easier to attract new users if they aren’t obliged to learn new IT skills before they can begin using Home Assistant. Lowering the bar to entry is a good strategy.
exactly my point.
That’s why I mentioned we should maybe use a different perspective.
Either Homeassistant Suite is used, or any of the other install methods. Depending on one hardware, the homeassistant.io website should point the user to the correct installation method…
Hub and Hubian, well, no disrespect, but this really sounds like you are joking. The former table might have been best, lest not get lost in even wilder fantastic names… Coretainer is already over the edge for that matter, what not simply call it docker. That s what it is.
Secondly, I wouldn’t set the skill level like that. The fact anyone would use Homeassistant Suite doesn’t have anything to do with his/her skill level.
It might have more to do with the fact one likes the system to do (most) the work for, and enjoy the comfort of that… An inclination for ease has nothing to do with the ability to tweak and fiddle about.
No not joking. Nor I imagine are the other people who have suggested “Hub”.
As for “Hubian”, that’s simply a contraction of “Hub” and “Debian”. It’s the same technique that was used when “hassbian” was available. It’s also how openHAB refers to its installation method: “openhabian”. Until recently, it was also how the Raspberry Pi Foundation called their flavor of Debian OS: “Raspbian”. So, no, not a joke but a common practice.
I don’t know what metric you’re using that has this so-called “edge”. I’ve suggested Coretainer to replace Container simply to emphasize its relation to Core. If we apply your standard that it must be a literal representation, like “Docker” , then “Core” ought to be “Python”. I’m not suggesting we do that; I’m mentioning it only to show there’s room for 'theme" naming and not simply literal naming.
As for Skill Level, if one has extensive linux and docker skills, you are free to choose any of the four methods, including the first one. The fact it indicates “Novice” simply means you don’t need to know how to manage linux and docker to install, use, and administer it.
In contrast, if you choose one of the other three methods and have no knowledge of linux and docker, it will, if not immediately then eventually, cause administration problems.
EDIT
I used the word “Novice” to represent the minimal skills needed to follow instructions to burn an SD card and access the SBC via a browser. If there’s a better word to describe that minimal skill-set, please let me know.
Maybe add the word ‘needed’?
‘Skill level needed’
Just a thought…
EDIT or just ‘Skills needed’ and in the column put ‘Basic’?
I’ve simply added a footnote.
Name | Skill Level | Supervisor | Add-ons | Snapshots | OS | Docker | Method |
---|---|---|---|---|---|---|---|
Hub | Novice (1) | Yes | Yes | Yes | Yes | Yes | Disk image (2) |
Hubian | Linux, Docker | Yes | Yes | Yes | No | Yes | Shell script (3) |
Coretainer | Linux, Docker | No | No | No | No | Yes | Docker container (4) |
Core | Linux | No | No | No | No | No | Python app (5) |
Note | Description |
---|---|
1 | Ability to follow instructions to burn an SD card. |
2 | Burn disk image, for your model of single-board computer, to SD card or as a Virtual Machine. |
3 | Execute shell script on an existing instance of Debian linux on a dedicated machine. |
4 | Install docker container in an existing docker environment. |
5 | Install python app, preferably in a virtual python environment. |
You know that that is all in the ADRs already, right?
This topic was raised about the name, you are redoing all kinds of work done already… Which is way off topic actually. Just saying
Perhaps you can help me find the information I’ve summarized in the table. Where is it listed in the ADRs?
To be clear, I’m not trying to be difficult; I am genuinely having trouble locating the information. I’m unable to find it in the ADR directory: architecture/adr at master · home-assistant/architecture · GitHub
As for the PRs in that repo, I need guidance to find the full text of the proposed document. The links I follow seem to lead to fragments of the entire document: ADR: Home Assistant Container as supported installation method by balloob · Pull Request #393 · home-assistant/architecture · GitHub
Maybe everything I’ve summarized is already in the ADRs, but novices like me can’t find it.
Marius, I would agree as I think these names are not ideal, they just don’t speak to me, I’ve seen Taras’s explanation of hubian and I’m thankful for that as it meant nothing to me until then and just leaves me nonplussed since.
Somebody up thread likened this to naming a car and I like that. Though the Volvo 480 GLS leaves me shrugging, pretty much as do similar offerings from BMW, Mercedes and Audi. (I think that basically leaves us with Ford and GM as exemplars). I think the name (whatever it is) should be able to be placed on a banner, either speaking for itself or at least peak interest like the ‘Mango’ suggestion.
Going to do a handful of polls in this post in order to get a better idea of where things stand.
These polls are all multiple choice, so you can vote for more than one option in each. Voting does not necessarily mean it’s your first pick or favorite choice, simply that you find that name acceptable/OK.
We are not trying to crown a winner just yet with these polls, simply trimming the list of suggestions down and getting a better idea of the types of names people prefer.
If you do not like a certain category of naming, please vote for that in the poll, so the community knows where to better focus their naming efforts. Hopefully this is not too confusing
Names that indicate this method provides the whole solution:
Multiple choice allowed
- Home Assistant One
- Home Assistant All-In-One
- Home Assistant Suite
- Home Assistant Hub
- Home Assistant Complete
- Home Assistant Full
- Home Assistant Full Experience
- I like this category, but not these choices
- We should not use this category of naming
0 voters
Names that indicate it’s the easiest method for beginners:
Multiple choice allowed
- Home Assistant Easy
- Home Assistant Snap
- Home Assistant Appliance
- I like this category, but not these choices
- We should not use this category of naming
0 voters
Names that indicate this contains the operating system:
Multiple choice allowed
- Home Assistant OS
- Home Assistant Supervised OS
- Home Assistant Image
- Home Assistant JeOS
- I like this category, but not these choices
- We should not use this category of naming
0 voters
Familiar “streaming service” type names:
Multiple choice allowed
- Home Assistant Prime
- Home Assistant Plus
- Home Assistant Max
- I like this category, but not these choices
- We should not use this category of naming
0 voters
Other names:
Multiple choice allowed
Note: I intentionally left out the explanations here, to see if you can figure out the meaning on your own.
- Home Assistant Platinum
- Home Assistant Gold
- Home Assistant Genesis
- Home Assistant Unity
- Home Assistant Fuse
- Home Assistant Environment
- Home Assistant Source
- Home Assistant Essential
- I like this category, but not these choices
- We should not use this category of naming
0 voters
Obviously some suggestions weren’t covered by these polls, there were simply too many. These are by no means final choices, so please continue to suggest new names.
Again, we are not trying to pick a winner here, but trying to eliminate some suggestions and trim the list down to something more manageable and start getting some frontrunner choices.
Klogg, rather than belittle people by saying skill-level - novice (I’m not accusing anyone of this)
We should say - suitable for : - ‘everyone’
It just sounds more ‘inclusive’ than ‘exclusive’ .
@123
I would comment additionally that I run supervised under debian (cough ! Well Raspbian on my production machine actually) and I’m comfortable doing that but would not describe myself as a linux or container expert. So I think the terms should be softened to be more gradated showing an increase in skill level across at least the first three if not four. Most idiots (me) can follow instructions as required by option 2 and my Linux skills are gradually improving.
It’s been a long time (~30 years) since I last used del *. * on an old (brand new to me) dos 3.1 machine, then spent the next 7 hours rebuilding the whole machine from the accompanying floppies. (edit: I had to take the company PLC programming laptop onto site the next DAY )