Hard to work with errors when trying to get HAOS (Home Assistant OS) to run in Incus

I am new to Incus, so forgive me if I do something wrong. So I am using IncusOS and want to deploy it in Incus.

I found the official HAOs guide that seems to be it, but I always get different errors…

So STRs:

  1. Download the qcow2 image linked on said page. (Current link: https://github.com/home-assistant/operating-system/releases/download/17.3/haos_ova-17.3.qcow2.xz)
  2. Notice it is actually a .qcow2.xz file, which raises the question whether it should be extracted?
  3. Anyway, tried without extracting (via the web GUI) and
  4. The HAOS website has no specific details for Incus, but the usual instructions mention that you should disable SecureBoot for it (and increase the resources somewhat), which I found options for.
  5. IIRC I used the “Upload custom ISO” dialog, which looked as if i was a good fit for me.

.xz file boots into that

Somehow it does not really boot, but shows a lot of errors?

Unpacked file

Okay, so I thought maybe it is because it should be “un-archived” and I extracted the file haos_ova-17.3.qcow2 locally (it’s more than 1 GB!). Interestingly, now, following the steps above does not quite work at all, because if I upload it as a custom ISO I just get an error directly while doing that (which is unexpected IMHO):

request declared a Content-Length of 1056571392 but only wrote 1056570715 bytes

IMHO, even if I am doing something wrong here this error message does not help much. It indicates this is maybe a network error(?), but I tried multiple times and I can reproduce it. With this one file, it always shows that error.

Resources

I saw Incus vm image request: HomeAssistant OS for arm64 (Raspberry Pi) on images.linuxcontainers.org - #3 by johannstieger and Importing Home Assistant as a Virtual Machine in Incus | Manuel cortez

I now see I may need to add some metadata and pack it again etc. But do I really? After all, the metadata is just some description stuff etc. Except of maybe os: Debian, but does not it boil down to “just run some ISO” as I would run it from an USB drive?
If not, I would at least thought that the GUI of Incus could ask for these values interactively, instead of letting me chase errors here…

System

incus 202606030722
Version 7.1-ui-0.19

You’r uploading a qcow2 that’s a harddisk of a VM not an Installer ISO (CD/DVD).

Do you have the incus cli installed? If so use that and the import howto you linked.

Yeah, you’d want to run incus-migrate on a system somewhere to load the .qcow2 from.

Otherwise a .qcow2 can be used as an image, but you’ll need to make a .tar.xz metadata tarball alongside it.

Hmm okay? I linked much, but I guess it’s this?

So there is no way the incus-ui (GUI) can upload the same (and just maybe “package” it on the IncusOS server itself directly)? I need to use the CLI? And “re-package” that image?
As said, I found this very confusing/convoluted – IMHO. (I have no experience with Incus nor your main “competitioner” aka Proxmox, but I would imagine it being simpler here.)

Ah okay another new command for me to learn (that is not mentioned in the blog post I linked BTW).

Maybe you’d want to add a tutorial for “How to add your first image” respectively “How to boot your first VM”. It apparently, involves some steps, one needs to learn first so… :person_shrugging:
After all, the tutorial page is the first page you’ll arrive at the docs when finishing the “Getting started” docs.

How to import physical or virtual machines to Incus instances - Incus documentation covers incus-migrate over in the Incus documentation.