I believe I have a right to computing freedom, and actively try to use free software on my personal computer and on servers I develop on and deploy to. I have EOMA68 laptop and desktop housings[0] coming, hopefully in the spring. I am also about to build a server with a motherboard that is supported by Libreboot[1] and processors that work fine without microcode updates.
I use Android phones and tablets, but as long as they have non-free components, I will never accept the "convergence" paradigm. If I can't have freedom all of the time, at least I won't surrender it all of the time.
I ask because my perspective is that the convergence effort started a long time ago...perhaps as early as Canonical's original controversial release of the Unity desktop...and these efforts by larger players are more or less followers (albeit higher powered followers with larger market reach).
This being the case, I actually support the "convergence" paradigm...particularly Ubuntu's efforts but even from players like Microsoft...since I see convergence as a way of cracking open (to some extent) the walled gardens mobile devices have become.
But I wonder if there is some part of the Ubuntu Edge that was "closed" and I didn't notice.
Do you have access to the firmware code in your keyboard? Your monitor?
I'm not criticizing your decision, and it's certainly yours to make, but people (and also Stallman) draw such very strange lines of demarcation about this stuff.
The distinction is very simple. Either it's hardware or it's software.
If the firmware is written to flash once and then can no longer be updated by the vendor or the user then the firmware is treated as hardware, even by RMS.
>What is the boundary, in digital devices, between hardware and software? It follows from the definitions. Software is the operational part of a device that can be copied and changed in a computer; hardware is the operational part that can't be. This is the right way to make the distinction because it relates to the practical consequences.
>There is a gray area between hardware and software that contains firmware that can be upgraded or replaced, but is not meant ever to be upgraded or replaced once the product is sold. In conceptual terms, the gray area is rather narrow. In practice, it is important because many products fall in it. We can treat that firmware as hardware with a small stretch.
You raise a good point, which prompts a genuine question: does having a free OS and BIOS help safeguard against "rogue" peripherals (since the system knows what they're supposed to do)?
The system doesn't, though, not really. I mean, consider something running over Thunderbolt. A device that doesn't even tell you it supports Thunderbolt (and triggers it via USB3 alternate modes) then has direct, unimpeded access to the physical memory space of the computer. PCMCIA cards, PCI cards, FireWire...USB, itself is more intermediated--but that's also why latency is higher. You can disable DMA in the BIOS, but then lots of devices won't work at all.
If you're doing free-all-the-stuff for principle, I think it gets un-comfy drawing the line at stuff that runs on x86 and ARM ('specially as your monitor probably has an ARM in it anyway). If you're doing it for security, I think you must strive for peripheral openness too, or you're mostly wasting your time.
I believe computing freedom is a right people should assert, and I should inform them why they should assert it, but I don't go as far as saying it's unethical to use non-free devices and/or software. At least not when non-free is more readily available and, from the perspective of the average user, more "convenient" than free.
Personally, I like Debian because it removes non-free blobs from the kernel (and I check the license on a package before I install it). But let's say Ubuntu was the only available GNU+Linux distribution. I would still choose it over Windows or MacOS because mostly free is better than completely non-free, and I would rather support Ubuntu (or Android, for that matter) than enable and give money to Microsoft or Apple.
As for peripherals, from a practical point of view, doesn't the type of peripheral matter? A monitor or printer (output devices) going rogue seem far less dangerous than a rogue webcam, for example.
If the monitor speaks Thunderbolt, then it can DMA your system memory and going rogue is a game-over situation.
Personally, I don't really care at all about RMS's weird definition of freedom and I use what's best for accomplishing my goals. But drawing arbitrary lines of "freedom" has always made even less sense to me.
Some devices give access to that stuff, I believe. See the upcoming Pyra for a fully-open hardware Linux PC that's about the size of a Nintendo DS. And see Keyboard.IO for a fully-open keyboard, including source code, hardware design, etc.
Though it is a good question that raises a lot of questions of what things we're using have source in them that we can't touch that we don't normally think about. I don't think I'd ever thought about firmware in a monitor or keyboard.
I use Android phones and tablets, but as long as they have non-free components, I will never accept the "convergence" paradigm. If I can't have freedom all of the time, at least I won't surrender it all of the time.
[0] https://www.crowdsupply.com/eoma68/micro-desktop
[1]https://libreboot.org