Is there a way to upgrade ResinOS without flashing the image again?
This was asked on our Gitter presence, and I’m copying it here as it seems like a question that many people could benefit from the answer to.
Is there a way to upgrade ResinOS without flashing the image again?
This was asked on our Gitter presence, and I’m copying it here as it seems like a question that many people could benefit from the answer to.
Why yes, thank you for asking.
We’ve got a well scripted, but not yet automated, process that we call ResinHUP. You ask for it, provide a link to your devices, and a decent range of suitable times; we securely connect across to the supervisor and do some magic. There is work happening on making this a self-serve process.
Andrew.
@andrewl I think Max ( on Gitter ) is using unamanged resinOS
Yes I use unmanaged resinOS with resin local <command>
. I have only one device and since I use it for my home automatisation it is not reachable from outside my lan (internet).
It would be nice to have a kind of resin local update
command with which I could update my device.
I’ve just taken a look through our documentation to see what I could find and the ResinHUP procedure pretty much relies on having the Supervisor OS which, being unmanaged, you don’t.
I’m think there must be a way to use your existing OS to create a new partition, flash ResinOS to it, copy the relevant data across and chose to boot from it; I just wouldn’t like to guarantee what that would be.
I do not understand what a SupervisorOS is.
As far as i can tell the architecture document on https://resinos.io/docs/architecture/ describes an upgrade procedure. Maybe there is no unmanaged command for it - yet - but the partition resin-update
exists.
What I would have expected is a kind of resin local update
which would look for a new version of resin-root
and, in case there is a new version, download and extract it to resin-update
, make that partition the new one and reboot to the new version.
Yeah, the document does contain a couple of teasers doesn’t it; just enough to hint that the capability is there, but not enough to actually unlock it!
So, what happens next?
Should I open a ticket on github for this functionality?
That would be great! I was going to do so once the right-here-right-now problems were resolved; but if it comes from you it’s more likely to represent what you want, and will include you in the communications loop out-of-the-box.
I’m not sure if I should make the request on https://github.com/resin-io/resin-cli or on https://github.com/resin-os/resin-device-toolbox.
ATM it is quite confusing what the official CLI for resinOS is going to be: rdt or resin-cli
We’re currently refactoring our repositories there to separate the SDK from the UI, to facilitate development of other interfaces (I dream of a WebUI one day, where you have a text editor inside the Resin Application Webpage). I’d put this feature request in resin-cli and if the toolkit doesn’t support it then we’ll spawn a pre-requisite ticket.
Opened issue https://github.com/resin-io/resin-cli/issues/483
@andrei might share some insights here. Do we have a way to upgrade unmanaged resinOS?
No, currently hostOS updates are only available for managed images.
Has anyone come up with a way to do this? I have an unmanaged image and would like to support hostOS updates.