I noted before even getting my Gemini that it appears to be impossible for now to use Debian testing proper, as there seem to be some special packages that aren't available there. (Correct me if I'm wrong, of course!)
I can live with having stretch as the basis, but there are some packages that I'd need newer packages of, for example texlive, which has an old 2016 version in stretch. I also have trouble with i3 window manager, which may or may not be solvable with the packages (may ask in the i3-related thread separately).
So I thought, I'd use apt-pinning to make stretch-backports and/or testing packages available without updating the whole system.
Unfortunately, that doesn't seem to be how it works, even with only stretch-backports the system does not boot up properly after apt upgrade. I was still able to get into it via Linux Deploy from Android, but the normal Linux boot just sat on the splash screen for half an hour, until I decided to just shut down the device.
I have for now decided that I cannot use the native Linux productively with this restriction and am trying to get workable Linux Deploy chroot + XSDL x-server setup running in Android. (This has its own issues with getting the keymap to work properly, unfortunately, but I'll try and find the appropriate thread for asking about that when I find some more time). However, ideally I'd like to be able to use the native Linux without fearing not to get back in. Does anyone know of a way to get newer packages working without breaking the device? Or could anyone pinpoint what is causing the problems when trying to update so as to try and build around the relevant packages that must not be updated?