Upgrading Debian 10 Template to Unstable

I installed a fresh version of the Debian 10 template, and I want to upgrade it to unstable (Sid). I changed all instances of “buster” to sid in /etc/apt/sources.list (and the files in /etc/apt/sources.list.d), then did:

apt update && apt dist-upgrade

About 35% of the way through the installation, the terminal crashes and disappears. Further, I can’t get a new terminal back using:
qvm-run debian-10 xterm (from dom0).

The installation process goes by pretty fast, but I think it crashes somewhere around unpacking core-gui (or something like that). This happens every time with a fresh install.

The same thing happens if I try to upgrade to testing, rather than unstable.

Does anyone either know what I’m doing wrong, or have experience in getting this to work?

Assuming the debian-10 template is really old, you can try first updating all debian-10 packages so you get the latest qubes integration packages. Then clone it as debian-unstable and upgrade the clone to unstable.

This was how I got my debian-11 template, but it was a long time ago…

Thanks. Will give it a try.

Sigh. Still doesn’t work. On the other hand, I can now definitely see that everything fails when it’s unpacking qubes-gui-agent.

Maybe try upgrading from sudo xl console <templatename> (login as user).

does the update really fail? I’d just let it run for a few minutes, then gracefully shut it down and restart. The only thing that happens is that the gui-agent is shut down or restarted, and so the connection to the terminal window is lost and it disappears. but it should still proceed with updating.

well qubes offers bullseye packages, and with a little hastle its possible to upgrade to this. sometimes i use sid to install/upgrade singular packages (like firefox) and then go right back to bullseye.

so without at least having the qubes bullseye packages also installed i think sid wont work, i think the breaking change is python2 to python3 where also qubes related packages may disappear

Solved! The bullseye trick did it.

Here’s my sources.list:

deb https://deb.debian.org/debian bullseye main contrib non-free
#deb-src https://deb.debian.org/debian buster main contrib non-free

deb http://security.debian.org/debian-security bullseye-security main contrib non-free
#deb-src https://deb.debian.org/debian-security buster/updates main contrib non-free

Here’s my qubes-r4.list:

#Main qubes updates repository
deb [arch=amd64] https://deb.qubes-os.org/r4.0/vm bullseye main