-
Notifications
You must be signed in to change notification settings - Fork 26
Update rpi instructions #415
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
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for kairos-io ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
* Use COS_OEM * Add image creation using Auroraboot Signed-off-by: Jimmy Jones <[email protected]>
--platform linux/arm64 -v $PWD/build/:/output \ | ||
kairos.docker.scarf.sh/kairos/auroraboot:latest \ | ||
--debug --set "disable_http_server=true" --set "disable_netboot=true" \ | ||
--set "state_dir=/output" --set "disk.raw=true" \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I couldn't find the disk.raw
parameter in the Auroraboot documentation or the source code.
Shouldn't this be disk.efi=true
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
disk.raw
was used before and we transitioned to disk.efi
but its still possible to set disk.raw
and it will transform it automatically for backwards compatibility :) https://github.com/kairos-io/AuroraBoot/blob/69bccf942277af0de137764b812f17adfaaf8762/internal/config/config.go#L101
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah I see, thank you very much. I only checked:
https://github.com/kairos-io/AuroraBoot/blob/69bccf942277af0de137764b812f17adfaaf8762/pkg/schema/config.go#L48
$ OEM=$(blkid -L COS_OEM) | ||
$ mkdir /tmp/oem | ||
$ sudo mount $OEM /tmp/oem | ||
$ sudo cp cloud-config.yaml /tmp/oem/90_custom.yaml | ||
$ sudo umount /tmp/oem |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the cloud-config was referenced already in the AuroraBoot command and backed into the raw image is this still needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently there are two options - auroraboot and using the raw images. I think using the raw images is too hard (kairos-io/kairos#3453) and auroraboot is much better, so would prefer to remove this section entirely
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think what @ElKiwos meant was that if the instructions were followed, this line embeds the config in the image. This step here will be replacing that file, thus it's redundant. Maybe we should explain it a bit. E.g. "if you didn't embed the config in the image, then you can add it here like this" or something like that.
Create `build` directory and add `cloud-config.yaml`, then run: | ||
|
||
```bash | ||
docker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For me this command fails for find the /dev/loop0
device unless I pass this arg too:
--device /dev/loop0
I don't remember having to do this in the past, so although it seems reasonable to have to add this, I assume it's something on my system that made it a requirement now and it's not the case for everybody. If the command works for you as it is, let's keep it without the arg until I figure out what's different on my system.
Updated instructions based on my experiments with a Raspberry Pi, following https://kairos.io/blog/2025/03/18/how-i-automated-my-doorbell-with-kairos-and-you-can-too/
COS_PERSISTENT
didn't exist in the image extracted fromquay.io/kairos/opensuse:leap-15.6-standard-arm64-rpi4-v3.3.1-k3sv1.32.1-k3s1
, I needed to add thecloud-config
intoCOS_OEM
Fixes kairos-io/kairos#3445