<div dir="ltr"><div>Hi,</div><div><br></div><div>I've been experimenting with systemd-sysupdate, trying to understand how it works.</div><div><br></div><div>I created a Fedora 39 image<span class="gmail-ng">¹</span> with mkosi from the GitHub repo. It has 3 partitions:</div><div>1) esp</div><div>2) root</div><div>3) linux-generic (to put updates)</div><div><br></div><div>The root and third partition will be expanded on firstboot via systemd-growfs². I also configured the third partition to be automounted with udev rules.</div><div><br></div><div>I created a configuration file in /usr/lib/sysupdate.d: 10-root.conf</div><div>[Transfer]<br>ProtectVersion=%A<br><br>[Source]<br>Type=regular-file<br>Path=/run/media/system/UPDATES<br>MatchPattern=demo_@v.root-x86-64.raw<br><br>[Target]<br>Type=partition<br>Path=auto<br>MatchPartitionType=root<br></div><div><br></div><div>Let's say, first, I created version 0.1.0: demo_0.1.0.raw, then I created version 0.1.1 with SplitArtifacts=yes in mkosi.conf. So I had demo_0.1.1.esp.raw and demo_0.1.1.root-x86-64.raw. I put demo_0.1.1.root-x86-x64.raw to /run/media/system/UPDATES.</div><div><br></div><div>I ran /usr/lib/systemd/systemd-sysupdate list, it correctly showed the available update candidate. But then I ran /usr/lib/systemd/systemd-sysupdate update, it showed an error about the partition table.</div><div><br></div><div>"Partition table has less than two partition slots of the right type 4f68bce3-xxxx-yyyy-truncated (root-x86-64), refusing."</div><div><br></div><div>I've tried adding more 2 root partition slots, but still got the same error. I've also tried adding PaddingMinBytes/PaddingMaxBytes in /usr/lib/repart.d/.<br></div><div><br></div><div>Maybe I missed something here. How to correctly setup the partition table for systemd-sysupdate?<br><br></div><div>Thanks.</div><div><br></div><div>[1] I'm working on Debian stable based image, but unfortunately systemd-sysupdate is not available (not compiled). So I tried Fedora instead.<br></div><div>[2] Before systemd 255, the GrowFileSystem flag did not work as expected, but there is a workaround. Hopefully the patches will be backported.<br></div></div>