This has been the case since the SI chipsets in 2012. I'm not sure if the fault lies fully with the driver, maybe the hardware doesn't allow querying the state of the engine firmware before enabling the engine.
At /usr/share/X11/xorg.conf.d/10-radeon.conf:
Section "Device"
identifier "Radeon"
Driver "modesetting"
EndSection
Bugs may arise, maybe it could be a good idea to disable the Composite
extension too.TTY works well before and after KMS.
Then select "expert mode", enable "non-free" repo, maybe "backports", go through base install only, reboot, re-enable USB-tethering a last time on the phone, install needed network card firmware, reboot, disconnect phone, run "tasksel", select whatever you want to install to finish install.
Having done this "detour" for many years now, it's "automatic" for me, and takes barely 3 minutes longer than the "normal" install from the IsoWithNonFree. I usually want "backports" enabled, so going into "expert mode" is required anyway.
Like I said, each thing is just "fix this one thing by compromising principles." If you do that with all the UX problems you literally end up with ChromeOS. Different distros are on different places along the spectrum between Debian and ChromeOS. Ubuntu is further along for example, so you get applications in containers and other things like that.
This is an immediate and direct contradiction.
The choice is literally between the non free firmware or your wifi and ethernet cards will not work.
That's why I believe the most common firmware .deb packages should be cached during installation so that they are on-disk in case they are needed.
Back in my early Linux days I had an issue where the default Ubuntu/Debian installer would come up with a garbled display and I'd have to use `vga=...` or `nomodeset` (or similar, can't remember) to get a proper console going. Once installed I would install a package and it would "just work".
A way to directly boot into an environment with non-free firmware available could help and the user doesn't lose any more freedom if they're already determined to use non-free firmware post-install anyway.