[GNU-linux-libre] Freedom issues with non-free firmware in external files
There is an ongoing discussion at the FSFLA and SolAR lists[1] to decide if the ability of the linux kernel to request non-free firmware should be removed or changed, if the whole drivers should be deleted, or if it is enough to remove the offending firmware files and discourage its use. As this issue affects all distros, and the conversation was also generating some complaints from the list administrators, I'd like to start a new thread here. I'll try to summarize the ideas in a neutral way: -Linux includes some -GPL'd- modules that load firmware files into the devices. Most of that files are non free, and most of them are required to get the device working. All the free distros exclude that files. -Older linux-libre versions -still in use in several distros- remove the non-free blobs embedded in .c and .h files. External non free firmware files are also deleted. Other cleaned linux versions work this way. -Newest linux-libre versions remove not only the embedded blobs, but also the ability of the modules to request non-free firmware files.[2] The questions that came from that include: -Is enough to remove the non-free firmware files from the distro and discourage its use? -Should GPL modules that are useless without the non-free firmware files be removed? -Should they be kept, but disabling the file load call? -What is enough to comply with the Guidelines for Free System Distributions? [3] Note that this issue was already discussed in January by Richard Stallman, Alexandre Oliva et. al. at the linux-libre lists[4], leading Alexandre to implement one of the discussed solutions in the linux-libre deblobber. Other solutions are possible, so this new thread should focus on what is _enough_ to achieve a fully free kernel. 1: http://lists.ourproject.org/pipermail/solar-general/2009-August/ http://www.fsfla.org/pipermail/discusion/2009-August/ 2: http://www.fsfla.org/svnwiki/selibre/linux-libre/#2009-03-21 - gen2 - 2.6.28-libre1 released at [[http://www.fsf.org/associate/meetings/2009/| Libre Planet 2009]] 3: http://www.gnu.org/philosophy/free-system-distribution-guidelines.html 4: http://www.fsfla.org/pipermail/linux-libre/2009-January/thread.html
Re: [GNU-linux-libre] Freedom issues with non-free firmware in external files
or only print info about what is missing? The vanilla kernel prints an error about the missing files if the request fails. For the case of non-free blobs, linux-libre now prints a /*DEBLOBBED*/ message, and the files are not actually requested. Ututo now also prints a special message. If a driver needs a non-free firmware file to work, removing it renders the driver useless, so you can remove it. Having non working drivers looks pointless to me, and can -maybe in a subtle way- cause harm. could you tell us about this subtle harm? Then the maintainer of the freed version of the kernel can stop removing that module. and the people will need to upgrade, a lot of additional work is there another way to detect that hardware? All hardware can be detected. That part doesn't matter. can is different than doing it. Why do you think that do not matter is not usefull to know what hardware do not have frre software to work with? Yes, but how is that related to the load call thing? is related to the module modules are a way to know if the hardware exists and is working. -What is enough to comply with the Guidelines for Free System Distributions? [3] is this free guideline fine? Is ok for me, but maybe it needs some clarifications (like this issue). its not weel organized, have a lot of confusing parts, etc but the principal issue is its central argument we have free software definition, a huge agreement about that, why try to impose additional conditions? why to speak about trademarks and non functional non-free works we are talking about a free distribution with non free material, why? For example debian is more restrictive on that is free-linux something usefull? or the removal can be done by a script running over a normal kernel? I'm not sure if I'm getting your question. :| do the world need free-linux? we have free gnu/linux system without blobs a long time before that project exists. do free distros must have non-free-software-having-hardware detection procedures and user warnings? Please, explain non-free-software-having-hardware detection procedures capability to detect and warn user about hardware without free software -- Diego Saravia diego.sara...@gmail.com NO FUNCIONA-d...@unsa.edu.ar
Re: [GNU-linux-libre] Freedom issues with non-free firmware in external files
El vie, 14-08-2009 a las 16:46 -0300, Diego Saravia escribió: or only print info about what is missing? The vanilla kernel prints an error about the missing files if the request fails. For the case of non-free blobs, linux-libre now prints a /*DEBLOBBED*/ message, and the files are not actually requested. Ututo now also prints a special message. Nice. What does it say? If a driver needs a non-free firmware file to work, removing it renders the driver useless, so you can remove it. Having non working drivers looks pointless to me, and can -maybe in a subtle way- cause harm. could you tell us about this subtle harm? E.g. someone can tell your users how to make the driver work, by recommending to use the non-free file, thus harming their freedom. It's not you who is causing the harm, but the one who recommends the file. But if the driver is removed, you are not even allowing that to happen. Then the maintainer of the freed version of the kernel can stop removing that module. and the people will need to upgrade, a lot of additional work How can you provide your users with a new driver without an upgrade? is there another way to detect that hardware? All hardware can be detected. That part doesn't matter. can is different than doing it. Why do you think that do not matter I think you are using detecting in a different way than I do. The kernel does not need the modules to know if a piece of hardware is present. No matter if you remove the module, it can be detected. is not usefull to know what hardware do not have frre software to work with? Yes, but how is that related to the load call thing? is related to the module modules are a way to know if the hardware exists and is working. You can't tell if -let's say- a ipw2100 card is broken unless you use the non-free firmware. I wouldn't care if it's broken, it doesn't work with free software anyway, so it is always broken. -What is enough to comply with the Guidelines for Free System Distributions? [3] is this free guideline fine? Is ok for me, but maybe it needs some clarifications (like this issue). its not weel organized, have a lot of confusing parts, etc but the principal issue is its central argument we have free software definition, a huge agreement about that, why try to impose additional conditions? I don't see the guidelines being imposed. I see them as an useful set of recommendations -not everyone is aware of the issues of a free distro-, and it can be useful for non-free distros that might like to go libre. Additional positions should be taken every time a new threat appears. why to speak about trademarks and non functional non-free works we are talking about a free distribution with non free material, why? For example debian is more restrictive on that Everyone has a viewpoint, that is why they are called guidelines, and that is why I think we should talk about them. Including non-modifiable art is ok to me. Trademarks and patents are important issues that every distro needs to be aware of. is free-linux something usefull? or the removal can be done by a script running over a normal kernel? I'm not sure if I'm getting your question. :| do the world need free-linux? That is a rude question. If you don't like it, don't use it, it's not a requirement. I mentioned it as an example implementation of a freed kernel, and it is used by several projects in this list, so it makes the task of cleaning more easy for a lot of hackers including myself. do free distros must have non-free-software-having-hardware detection procedures and user warnings? Please, explain non-free-software-having-hardware detection procedures capability to detect and warn user about hardware without free software I think it is a nice feature, that allows us to tell the user about the perils of non-free software. I also think it shouldn't be mandatory.