1 |
Am 04.01.23 um 23:00 schrieb m1027:
|
2 |
> |
3 |
> Wow, wasn't aware of catalyst at all. What a beast in terms of |
4 |
> control. |
5 |
> |
6 |
> (FYI: I enjoyed the links on catalyst you sent me directly. |
7 |
> Unfortunatelly I cannot answer you directly due to the default TLS |
8 |
> guarantee kicked in by my provider: "TLS is required, but was not |
9 |
> offered by host". That's usually to be fixed on the receiving side.) |
10 |
> |
11 |
> While being able to build exact environments with catalyst I wonder |
12 |
> how it could help fixing the issue of my original post. To sum up: |
13 |
> Whenever we need to deliver a updated app to customers whose OS is |
14 |
> too old (but updating it is too risky), we could either a) keep |
15 |
> evenly outdated dev build OSes around forever (oh no!), or b) post |
16 |
> our newly built app in a container (leaving the lovely native |
17 |
> world); and both ignore the fact that customers wish maintenance of |
18 |
> the entire OS actually, too. So, ideally, there is c): In a |
19 |
> hypothetic case we would prepare a entire OS incl. our app (maybe |
20 |
> via catalyst?) which would require a bootloader-like mini-OS on the |
21 |
> customer's side, to receive updates over the internet, switch the OS |
22 |
> at boot time, and fallback. I was recently playing with systemd-boot |
23 |
> and it's interesting try-boot feature. |
24 |
|
25 |
So essentially it sounds like you want something similar to Yocto / Poky
|
26 |
/ Petalinux for the non-embedded world (and based on Gentoo of course;
|
27 |
it sounds like catalyst is something like that)?
|
28 |
|
29 |
Petalinux / Yocto is essentially a cross compiling environment with
|
30 |
rootfs, etc. And after everything has been built, the rootfs is just
|
31 |
packaged into a flashable ext4-image or something. So your devs wouldn't
|
32 |
need to work on a (slightly) outdated system, just use the (in this case
|
33 |
non-)cross-compiling environment with its own, separate rootfs. Is,
|
34 |
e.g., crossdev able to build a non-cross, native compiler? It already
|
35 |
provides a rootfs-folder and a separate emerge-config, etc...
|
36 |
|
37 |
Just throwing crazy ideas around, what about using net-boot for your
|
38 |
customer? This way they just need to store an image somewhere and can
|
39 |
update it whenever necessary. Or (ab-)using an initramfs. Or u-boot
|
40 |
bootloader, just like in the embedded world. Depending on the size of
|
41 |
the actual OS/rootfs, taking ideas from e.g. Android with their A/B
|
42 |
bootslots (i.e. two root-partitions or something, where one is active
|
43 |
and the other can be updated with clever scripts, after a reboot they
|
44 |
are swapped). |