The new update tool is named qubes-vm-update
:
usage: qubes-vm-update [-h] [--max-concurrency MAX_CONCURRENCY] [--restart] [--no-cleanup] [--targets TARGETS | --all | --update-if-stale UPDATE_IF_STALE] [--skip SKIP] [--templates] [--standalones] [--app]
[--dry-run] [--log LOG] [--no-refresh] [--force-upgrade] [--leave-obsolete] [--show-output | --quiet] [--no-progress]
options:
-h, --help show this help message and exit
--max-concurrency MAX_CONCURRENCY
Maximum number of VMs configured simultaneously (default: number of cpus)
--restart Restart AppVMs whose template has been updated.
--no-cleanup Do not remove updater files from target qube
--targets TARGETS Comma separated list of VMs to target
--all Target all non-disposable VMs (TemplateVMs and AppVMs)
--update-if-stale UPDATE_IF_STALE
DEFAULT. Target all TemplateVMs with known updates or for which last update check was more than N days ago. (default: 7)
--skip SKIP Comma separated list of VMs to be skipped, works with all other options.
--templates Target all TemplatesVMs
--standalones Target all StandaloneVMs
--app Target all AppVMs
--dry-run Just print what happens.
--log LOG Provide logging level. Values: DEBUG, INFO (default) WARNING, ERROR, CRITICAL
--no-refresh Do not refresh available packages before upgrading
--force-upgrade Try upgrade even if errors are encountered (like a refresh error)
--leave-obsolete Do not remove obsolete packages during upgrading
--show-output Show output of management commands
--quiet Do not print anything to stdout
--no-progress Do not show upgrading progress.
It’s similar to qubesctl
. You can target specific qubes and set the max concurrency for example.
As for why it was changed, I can’t answer for the developers, but I suspect it was done to remove the salt dependency and all the problems associated with it (deprecated dependencies related to salt and distro patches breaking things, for example).