jueves 14 de diciembre, 2006

El Kernel, los Módulos, y la GPL

Ricardo Galli comenta hoy sobre una discusión que se está llevando a cabo entre los desarrolladores del kernel Linux. El tema es si el kernel debería prohibir el uso de módulos propietarios. Un plan, discutido hoy, es que a partir de un año, solo módulos que sean liberados bajo la GPL podrán ser usados con el kernel.

Ricardo expresa apoyo por la idea, como lo hacen otros en la comunidad de Software Libre. Y no es sin razón: empresas como Nvidia, ATI, y muchas otras, mantienen el código de los controladores, y peor aún, las especificaciones que permiten escribir ese código, bajo secreto permanente. Y hasta ahora, los intentos para que ofrezcan unos o las otras han fallado. Al hacer que el kernel rechace módulos que no son GPL, la idea sería generar presión para que esas empresas liberen los módulos o las especificaciones.

La intención de generar presión es muy entendible, pero la forma, en este caso, es muy mala idea. En parte, porque ignora un hecho muy simple sobre la GPL: esta licencia tiene que ver con la distribución de programas, no su uso. Yo siempre soy libre de bajar cualquier programa GPL de la red, modificarlo como se me de la gana (incluyendo escribir software propietario que interactúe con él) y ejecutar el resultado. Independiente de lo que haga, no violo la GPL. Es cuando quiero distribuir el software que la GPL es violada. Un programa no puede conocer la intención de distribución del programador, y por lo tanto, el que el módulo sea rechazado por el kernel por no ser GPL no tiene sentido. Muchas empresas, incluyendo Google y muchas otras, usan versiones modificadas de software GPL que nunca distribuyen. Y esa es una de las cuatro libertades fundamentales que la GPL quiere proteger, nos guste o no.

En vez de crear una barrera artificial para la interacción de programas libres con aquéllos que son cerrados, deberíamos, como se discutió en la lista, buscar argumentos (que los hay, como expliqué antes) de porque el código abierto es un mejor modelo, especialmente cuando se trata del kernel, y porque deberíamos usar módulos abiertos. Es un camino más difícil, y probablemente más largo, pero que dará frutos sin caer en prácticas como esta que se propuso, que más suena a algo que se le podría haber ocurrido a ya sabemos quien*.

*Empieza con M y termina con oft.

P.S.: Esta discusión es, creo, un poco bizantina, porque por lo que he leído, la idea que critico ha sido rechazada.

~

4 Comentarios »

  1. Muy bien explicado, aunque cuando nos metemos en temas «legales» la cosa se complica mucho y es difícil entenderla.

    Yo pienso, básicamente, que esos módulos añadidos al kernel deberían ser GPL para poder ser examinados a fondo por terceras partes.

    Simplemente por temas de seguridad y que no comprometan al equipo en el que corre. :-)

    corsaria — 17 de diciembre de 2006 @ 5:29 am
  2. Y para no cerrar puertas, porque no que cada cual decida si quiere añadir modulos propietarios, mas que nada porque si no existe y lo necesitas, que alternativa usarás para que tu equipo funcione ??

    David Carrero Fdez-Baillo — 17 de diciembre de 2006 @ 6:03 am
  3. Corsaria,

    Tienes razón, porque un tema es si los módulos binarios son trabajos «derivados» o no. Y ahí la cosa se puede poner difícil, aunque eso es independiente de lo que discutimos acá.

    Y claro, ojalá todos los módulos fueran GPL, por lo de la seguridad que dices tú, pero no aceptarlos es tomar una decisión por el usuario, y quitarle una de sus libertades.

    Por otro lado, en la práctica nada (bueno, la DMCA en EEUU) que uno pueda simplemente sacar esa parte del código, para, como dice David, dejar que el usuario elija. Pero parece que la decisión ha sido más simple, y se decidió en contra de incluir esto del kernel.

    Saludos!

    Carlos — 17 de diciembre de 2006 @ 7:07 pm
  4. *Empieza con M y termina con oft.

    hummm, nop se

    Moft!?

    jejejejeje :P

    jag2kn

    jag2kn — 22 de marzo de 2007 @ 12:31 am

Los contenidos de este blog están publicados bajo una licencia Creative Commons Atribución-Compartir-Igual. (c) 2005-2020 El Diablo en los Detalles | Usando WordPress y una versión modificada de Barecity.