Assuming I am on Jetson Xavier 4.0.0, does every upgrade of JetPack require me to reformat and reflash, then re-install all the packages I installed? Or is there an ‘upgrade’ process that doe snot require me to reformat?
Flash will reformat. You can clone to save content, but you shouldn’t restore a clone of one release into the other release.
Other than “/boot” content, if you have edited the “rootfs/” directory of the driver package prior to flash, then those changes will propagate to the Jetson. Not entirely convenient, but for example I find this useful with ssh keys, passwords, time zone settings, network settings, customizations to home directories, so on. I have an “overlay” directory I’ve created on the host PC which preserves permissions and numeric IDs…then a recursive copy into a sample rootfs causes the freshly flashed Jetson to have all of that.
Such changes won’t reflect dpkg/apt updates or additions…sorry, there isn’t much you can do about that for an L4T version increment. Clones are still useful though since restoring a clone to the same release would imply everything is preserved, even package updates.