There's already a "non-free" section under official "dists" ([0] for stable). It's just not added to the ISOs. Netinstall directly asks that whether you want non-free enabled during installation too.
The only thing is whether building CDs with it or not. Actually there are Zip files containing all firmware for a release, which can be added to a USB drive and added during install, but it's not well documented.
Maybe, this Zip files can be made more prominent, and using them can be better documented. Yes, it's not including firmware in the CD, but it's a good compromise.
What about a nice tool (akin to GRML2USB) which writes the ISO to USB and leaves a mountable FAT32 partition where user can drop in the firmware.zip file, so it becomes self contained if user wants?
https://cdimage.debian.org/cdimage/unofficial/non-free/image...
The blog post is putting the idea of adding the firmware blobs into the official ISO files, and as a Debian user, I'm not comfortable with that.
So, I'm offering another trade-off: "Make inclusion of firmware blobs to installation media on the fly easier, keep firmware off the official ISOs". It's a bit of a DIY solution, but it doesn't need flexing policies, DFSG and the values Debian is standing for.
It's a thin but important line to cross for me.
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.
Wouldn't this imply per-seat IP licenses for things like embedded H.264 software fallback decoding in GPU drivers? I.e. the reason that Ubuntu (that doesn't really care about "proprietary" software by itself) still doesn't ship media codecs on the CD, nor driver blobs that could include them?
Enabling it should display a big scary warning about handing over partial control of your machine to greedy faceless megacorps who will throw you under the bus in a heartbeat if that makes them money. Maybe add an illustration of a robot terminator, to really drive the point home.
Yes, I agree that a default Debian configuration should be clean. But I also know the reality of needing at least Atheros (Wifi), Intel (Ethernet), and NVIDIA firmware blobs to get my tower to boot correctly. Not including any firmware repository on the CD or on a fully installed system is just a recipe for users to get frustrated while they are trying to follow a half-outdated tutorial on one of those spammy tech support blogs.
So in my opinion, the most common blobs should be cached by default, but not activated by default. If the machine boots without them, they can be deleted upon first reboot. If not, we can let the user decide if they are willing to compromise their principles in order to boot the system ;)