On Mon, Jan 07, 2008 at 06:31:16AM -0500, Richard Stallman wrote: | > But what about the different case where the company permits | > redistribution of the binary firmware, but does not release source | > code. Would OpenBSD distribute the firmware in that case? | | Of course and going by your description it is nothing but hardware at | that point | | No, that description refers to a different case. | | so there is no ethics violation (whatever that means since | you refuse to explain it). It is just like micro code and a circuit. | | I think firmware is equivalent to a circuit if it is inside the | hardware and users don't install software there. | | Here we are talking about firmware which users always do install. | (That is the reason why anyone would consider distributing it with an | operating system.) So that is not equivalent to a circuit.
Richard, You say your actions are based on ethics. You recommend certain systems (eg gNewSense) because they are 'ethical' and you do not recommend others (eg OpenBSD) because they are not (they don't behave), in your view, ethical. Initially, you could not recommend OpenBSD because the ports system "recommends" the use of non-free software. Despite the fact that many here (on this list) do not consider this to be a "recommendation" I agree that it is in line with your stated views. And even though your views are to me (and many others on this list) in sharp contradiction with your actions (supporting non-free systems in the copyleft software packages GCC and Emacs), you consider these to be quite different situations (yet you admit that supporting non-free systems in free software and grants legitimacy to these non-free systems). I'll repeat again here that I am not opposing supporting non-free systems in free software packages. Now you have found a second reason for not recommending OpenBSD. It (legally) distributes binary firmwares for certain pieces of hardware. Again, you make a distinction that many here say does not exist. There's been a trend in hardware development. First, hardware was just that : a couple of circuits connected on a pcb. Then, hardware got "firmware", a small bit of unchangeable software the hardware vendor integrated with the circuits. An upgrade of this firmware meant replacing the circuit holding this firmware. We moved from ROMs to EEPROMs, allowing people with specialized hardware to update this firmware without replacing actual hardware. Next step was a piece of non-volatile memory (flash memory of some sort) containing the firmware, easier to upgrade but not always required (since the hardware comes with firmware installed by default). Today, we see many pieces of hardware with a small amount of RAM where the device driver loads the firmware upon device attachment. Lets have a close look at the case where firmware is stored in non-volatile memory. You purchase an Intel EtherExpress PRO/100 network interface card. Firmware is in the hardware on a piece of flash memory. Yet, this firmware can be upgraded and OpenBSD will automatically do this if it detects older firmware on your NIC. You can choose another operating system that does not upgrade the firmware and the hardware may work fine for your use case. Should the firmware be free software ? It's inside the hardware and on your other operating system you are not installing software on it. Should hardware vendors go back to non-user-upgradeable firmware so you can recommend their hardware ? Even if the only reason they do it is because they do not want to distribute the firmware as free software, with full source under a permissive license yet still want your endorsement ? Your stance is that somewhere in this timeline of hardware development ethics came into play. At first, firmware does not need to be free software since it is hard for a user to change it (although determined users can (and in the past have) change(d) the firmware ROMs by themselves). Now that device drivers load firmware each time the machine boots you consider it an ethical issue. I conclude that what you consider ethical or not depends on how easy something is to accomplish. However, ethics has nothing to do with ease of action. To you it may be easy to copy software or to look at the source code and understand what it does, to take it, change it, and use it in its changed form. Very many computer users do not consider this easy at all. To them, a computer is still some sort of "magical device" enabling them to browse the internet, play a game or use productivity software. Yet, these "computer illiterates" should (according to your views) use free software because non-free software is unethical. You want to educate the user about the ethics of free software, give them freedoms they will not be able to exploit. This, I think, is what your views are. However, when people on this mailing list suggest that hardware should be 'open' or 'free', you claim this is not necessary because it is not easy to copy hardware. To you it may not be easy, just like "computer illiterates" can not change source code of a piece of free software to their liking. That does not change the ethics. If you really apply your ethics so loosely, I have little respect for them. You make a distinction between supporting non-free software based on how easy it is to switch operating systems. You make a distinction on the requirements for free source for firmwares based on how easy it is to load this firmware. You make a distinction on whether or not to use "open hardware" based on how easy it is to copy hardware. All very convenient for your agenda, but it has very little to do with ethics. I consider it unethical to base ethical decisions on how easy something is. In fact, I do not consider these ethical decisions at all. It's all politics. If my webserver is broken into by some mal-intended person, I don't care if the webserver ran Windows and the break in was very easy or OpenBSD where the break in was near impossible : I still consider it unethical to break into my webserver. I may be at fault for using such an insecure OS for a webserver but that doesn't change the ethics of the break in. Paul 'WEiRD' de Weerd -- >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+ +++++++++++>-]<.>++[<------------>-]<+.--------------.[-] http://www.weirdnet.nl/