Salt errors with a debian based management dispvm

Thanks to good work by @ephile, we have identified an issue with the
updated salt and salt-common packages.
If you use a Debian based management_disposable, (default-mgmt-dvm by
default), then some salt states will fail when these packages are
installed.
In particular, states that use file.managed to copy files in to target
templates or qubes will fail.

The templates ship with Salt version 3006.4-2, which works fine. If you
update to salt 3006.5-1, the states will fail. The solution is to put a
Hold on the Salt and Salt-common packages - you can do this in aptitude
by selecting the package and marking it with = , or you can use
sudo apt-mark hold salt salt-common at the command line in the
template.
Now when you update the template the troublesome updated packages will
not be installed.

If you have already updated the template, then you can downgrade the
packages to the working one:
sudo apt install salt=3006.4-2

Thanks for this info.

Considering you say “identified an issue”, i.e. assuming it is yet to be fixed, how will we know when to “unhold” the particular package?

You can track the issue here:

I (or some other kind soul) will announce it here, with instructions on
how to unhold packages.

I never presume to speak for the Qubes team.
When I comment in the Forum I speak for myself.

Thank you both!

It was @ephile who did all the hard work.

I never presume to speak for the Qubes team. When I comment in the Forum I speak for myself.

It might be a good idea to have a short temporary note about all that in the relevant section of the docs.

So that people can find this more easily, the error message I was getting was:

file.managed: Source file salt://file not found in saltenv ‘user’

Function: file.managed
  Result: False
 Comment: Source file salt://file not found in saltenv 'user'

I’m still having this issue on SALT 3007.1. sudo apt install salt=3006.4-2 failed because package salt was not found. sudo apt install salt-common=3006.4-2 failed because that version was not available. So instead I just switched the default-mgmt-dvm back to Fedora:

Solution

qvm-prefs default-mgmt-dvm template fedora-41-xfce

Having to switch to fedora rather sucks if you don’t have fedora templates but do have a slow connection.

On attempting to issue the ‘sudo apt install salt=3006.4-2’ in debian-13-minimal (and debian-13) I get: “Error: unable to locate package salt.”

(I’m having to do this via qvm-run because debian-13-minimal is not set up for passwordless sudo out of the box.)

salt is not packaged in official repositories.
If you want full saltstack follow the official instructions - if you
just want to use in Qubes install packages from deb.qubes-os.org - at
least salt-ssh,salt-common,qubes-mgmt-salt-vm-connect

I never presume to speak for the Qubes team.
When I comment in the Forum I speak for myself.

I ended up biting the bullet and installing the full fedora-42 template.

At which point I ran into a lot of other problems trying to use debian-13-minimal based VMs. I don’t even know where to begin to describe them however–and some issues might be due to my setup–so I’ll have to work on it a bit more before I have intelligent questions to ask (and they won’t be in this thread).

Last time around I upgraded to debian-12 then upgraded to 4.2. This time I suspect I’ll have to do it the other way around; 4.3 then debian-13.