According to Qubes 4.3, qubes-vm-update include next flag:
--leave-obsolete Do not remove updater and cache files from target qube
GUI version of Qubes update have no access to toggle that.
In usage case of many templates based on same original OS template with small modification, actual use of “–leave-obsolete” flag save significant amount of network traffic and time.
Anyone can mention downsides for use of “–leave-obsolete” flag? Any security risks?
Looking at the code it seems to run apt upgrade with dist_upgrade set to False.
From description:
If the parameter dist_upgrade is True, new dependencies will be
installed as well (and conflicting packages may be removed). The
default value is False.
The equivalent of apt-get dist-upgrade?
--leave-obsolete also prevents removal of obsolete kernels.
In case of dnf if disables obsoletes configuration option.
I think it’s all it does, see yourself if you want to know more:
IMHO, You look at process within update proxy, named disposable sys-firewall by default. We should focus on how it serve update process.
–leave-obsolete flag order update proxy to keep cache and downloaded data between different interactions with separated templates.
Obsolete packages are going to stay on template1 and temlpate2, not update proxy. If you want proxy to cache packages you need either unman’s apt-cacher or its alternative.