sábado, 3 de marzo de 2012

Firmware, la pesadilla del debutante

Hay dos cosas en este mundo de Linux que cuando vienen juntas, pueden provocar un enorme trauma para quienes desean pasarse a GNU/Linux.

1) Saber que necesitas firmware no libre para hacer andar un componente del hardware.
2) Escuchar un buen discurso de Richard M. Stallman

En el curso de Arquitectura de Computadores aprendí lo que era una Unidad de Control Microprogramada. Estas utilizan un bloque de instrucciones en micro assembler con el que implementan los controles que hace la unidad. Ese bloque de instrucciones es el firmware y este reside en una memoria ROM. Un ejemplo de firmware es el BIOS, que es un firmware para activar una máquina desde su encendido y prepara el entorno para la carga de un Sistema Operativo en la RAM.

Ahora, muchos dispositivos necesitan de firmware que no es libre. Y acá no pasa con el software no libre, con el que uno tiene muchas más alternativas como para poder elegir no instalarlo. No, acá nos metemos con las capas más bajas de la arquitectura de la computadora (u ordenador como dicen los españoles), con un dispositivo del hardware que no funcionará hasta que instales ese firmware.

Y de aquí se pasa a la cuestión de si en verdad se necesita ese dispositivo o no. Si no se necesita, no se instala el firmware y ya está. Pero si se necesita usarlo (y frecuentemente), acá se anteponen 2 actitudes muy distintas por parte de la comunidad linuxera y que voy a mencionar:

La primera es la de la comunidad de la distribución Trisquel GNU/Linux. Trisquel es una distribución 100% libre (no tiene en sus repositorios NADA, de software privativo) la cual es avalada por la FSF. Miren las respuestas que estos dan para el caso de una controladora inalámbrica marca Broadcom (cuyos drivers son libres pero no su firmware)


Alguien se ofreció a dar una solución "no libre" y lo han criticado. Es lógico. Ante la situación de la no existencia de una alternativa libre para algo, se presentan dos males (para Stallman) y se tiene que elegir entre uno de ellos. Los de Trisquel proponen el primer mal: joderse esperando hasta que haya una alternativa libre. También podrían elegir buscar otro controlador inalámbrico que sea libre y joderse instalándolo (y si es una notebook, más jodido todavía).

Ahora veamos la misma situación con el mismo controlador Broadcom, pero en Debian, una distribución que desde Squeeze usa un kernel libre, pero que no es avalada por la FSF puesto que mantiene repositorios donde se puede instalar software no libre (aunque no están habilitados por defecto).


La solución que sugieren está en una de estas dos páginas wiki


Acá los de Debian proponen el segundo mal: Instalar el firmware, sabiendo que no es libre, sabiendo que si falla es culpa de Broadcom y que los de Debian en lo único que pueden ayudar es en adaptarlo a su distribución un poco.

Yo personalmente, tengo una notebook. No la construí sino que la compré hace un año. La suelo llevar a todos lados puesto que trabajo mucho con ella. Venía con Windows 7 instalado (el cual conservo aún, aunque lo uso cada vez menos) y con un montón de chirimbolos que no necesitaba. Con ella instalé Ubuntu y gracias a la aplicación jockey-gtk (mejor conocida como Drivers Adicionales) pude conocer que mi computadora tiene una controladora Broadcom.............no del mismo modelo descrito antes, pero Broadcom (y por suerte, el único firmware no libre de mi máquina). Estoy completamente seguro que si hubiera elegido el primer mal, hubiese sido tortuoso para mí mantener el ritmo de facultad puesto que la comunicación por internet se vuelve indispensable. Pero la necesidad imperó sobre la "pureza" y elegí el segundo mal.

Hoy, tengo la misma máquina pero uso un "Debian para novatos" que usa sus repositorios y lo vuelve algo más amigable. Me conecto a internet con mi Broadcom y no tengo problemas con su uso. Eso si, conocí mejor a mi computadora más que nada y también adquirí la costumbre de investigar que hardware tiene una notebook antes de comprarla. Igual si no consigo la suficiente información, no me hago mala sangre. Total, las computadoras están carísimas y "no da como para hacerse el exquisito". Ahora, si te querés hacer el exquisito igual y hacer feliz a la FSF, construíte tu propia compu. Te recomiendo este sitio para tener info sobre el hardware.


Filtrás por "apto para trabajar con software libre" y listo. Corre a tu responsabilidad el que quede todo funcionando bien.

PD: La segunda wiki de Debian fue la que me sirvió para instalar el firmware de Broadcom. Mi modelo es el 4322.

11 comentarios:

  1. La de peleas que he tenido yo tambien con la bcm 4322...siempre habia instalado el privativo (el wl si mal no recuerdo), pero con el kernel 3, dejo de funcionarme, le instalé el b43...y genial, como siempre.

    Lo mismo me pasó con el de la grafica, que pase del fglrx (creo) al otro libre, y me ve perfecta.

    ResponderEliminar
  2. yo trate con ututo pero no me respondía el acpi , me parece que se encarga del adecuado apagado, reinicio y suspensión del PC, cada vez que quería reiniciar o apagar se me colgaba el equipo xd, de trisquel la escuche me parece que está basada en ubuntu y es ciclic release y claro está avalada por la FSF , yo me baje una iso de parabola que es un archlinux libre sin programas no libres en sus repositorios , por tiempo no pude probarla me he quedado con las ganas pero ya debe haber una nueva iso , cuando esté libre puede bajar la nueva y comparar con la anterior para darme una idea de como avanza el proyecto, pero regresando al tema es cierto que uno se enfrenta al problema de que una distro libre no satisface las necesidades inmediatas de un usuario y mas cuando no tiene cuidado con el hardware que compra, así que no critico la actitud de las comunidades como trisquel simplemente que una distro se ajusta mejor a las necesidades de un usuario que otras distros xd. Saludos , por cierto ese debian para novatos es "linux mint lmde" xd.

    ResponderEliminar
    Respuestas
    1. Si, LMDE es el Debian para novatos. Al menos desde que Ubuntu tomó su propio camino.

      Eliminar
    2. bueno es cierto , linux mint lmde es amigable no se necesita de un conocimiento alto en sistemas gnu linux para poder usarlo , si vienes de ubuntu pues lo aprendido allí se puede usar en lmde además ambas son hijas de mamá Debian.

      Por cierto por qué no te animaste por usar Debian xd, yo trate hace un tiempo atrás usar debian 5 estable , la verdad estable como roca pero las aplicaciones eran un poco pasadas pero diré que se podía solventar activando los repos testing y luego desactivandolos pero eso algunas veces rompía algo, así que bueno podría haber optado por debian testing pero luego deje de usar distros con paquetería deb y me pase a mandriva y otros , luego conocí a linux mint lmde combinada muy bien lo bueno de ubuntu, lo mejor de debian y sobre todo la innovación que se ofrece para esta distro con los nuevos escritorios mate y cinnamon xd, saludos.

      Eliminar
    3. No me animé a usar debian por 3 razones

      1) Si bien llevo 5 años conociendo y trabajando en GNU/Linux, desde setiembre del año pasado es que lo uso de forma casi ininterrumpida. Y en diciembre cuando decidí instalar LMDE, todavía le tenía miedo a Debian (ahora despues de 3 meses, tengo menos miedo porque LMDE me lo está curando)

      2) ¿Te fijaste la cantidad de isos que tiene Debian para instalar? más de 50 cds estables (equivalente a 9 DVDs) y yo no se cual elegir.

      3) Ya en un año viene Wheezy y no tengo apuro (y seguro que viene con gnome 3.2 o superior, jajajaja). Si aguanto este año con LMDE, voy a estar perfecto.

      Eliminar
    4. jajajjajajajajaja, lo de los DVDs mola xd, si pues me parece que es el 1er DVD el que tiene el instalador , yo pienso que si tengo ya mi linux mint lmde, para qué usar debian testing, pero sabes hace un par de días mate mi pclinux enlightenment con ecomorph , toquetee algo que no debía tocar y pantalla blanca xd, podría probar usar un debian testing con enlightenment eso sí sería interesante , pero será mas adelante por tiempo no puedo hacer el experimento o quiźa me anime por un arch con e17, eso es lo bueno de gnu linux parece que no hay limites xd.

      Por cierto las razones que has expuesto me parecen validas, en especial la tercera xd.

      Eliminar
  3. Excelente artículo este de Diazepan. Tiene mucho calado y dá mucho para pensar.En especial para un novato. Creo que la problemática, en este caso, sobre el software libre y demás, repercute en la mayoría de muchos casos sobre la conciencia y el honor de la persona.a mas de otras muchas cosas.A este respecto yo tengo mis ideas claras que no voy a exponer aquí y ahora,aunque pensar. . . las estoy pensando en este mismo momento.Excelente artículo, repito y gracias por el mismo.
    Editado por Kikilovem.

    ResponderEliminar
  4. Como bien indicas, la gran pesadilla del principiante en sistemas operativos linux es los controladores de los adaptadores inalámbricos, y otros aparatos para poder conectarse a internet. Este es un apartado que en muy pocos sitios se explica adecuadamente. Te tienes que buscar la vida y al final, muchas personas que quieren cambiarse a sistemas linux optan por volver a windows por la dificultad en este tema. Si de alguna forma se solventara, los s.o. linux alcanzarían, en mi humilde opinión, mucha más popularidad, pues no tendría sentido el pirateo teniendo esta alternativa libre y gratuita.

    ResponderEliminar
    Respuestas
    1. hay gente que a pesar de que se le dice de las bondades del software libre y del open source pues no quieren probar y optan por un sistema comercial cerrado ya sea legal o pirata, nada se puede hacer mas que desearles bien.Es muy difícil que cambien su paradigma por ejemplo sistema operativo = windows , no existe otra cosa que me sirva , a menos que sea windows + aplicaciones de empresas de terceros (programas legales o ilegales).

      Eliminar
  5. A mí me da lo mismo que un firmware sea libre o no mientras me funcione, yo no sé leer el código y por tanto no puedo contribuir

    ResponderEliminar
  6. Já, este fue uno de mis problemas cuando me animé a instalar por mí solo Debian en mi pc; y no tenía la más mínima idea de lo que hacía... Me puse muy contento cuando lo logré pero me llevé un susto y una bronca enorme al descubrir que no podía usar el wi fi porque no tenía el firmware correspondiente. Me puse a buscar por internet, como me recomendó un amigo, aquel que me llevó al mundo del software libre, pero no entendía nada: hablaban sobre repositorios y esas cosas (llevaba dos semanas con Ubuntu y sabía muy poco sobre estas cosas ya que mi amigo se encargaba de dejármela a punto). En fin, me enseñó a instalar el firmware, una Broadcom si mal no recuerdo, y Debian anduvo joya hasta hace un tiempo, cuando le pasé mi netbook a mi hermano y yo me compré otra.
    Ahora, en la nueva quería instalar Debian y lo hice, y volví a toparme con el mismo problema: no necesitaba el firmware, en este caso de una Realtek, para mi desgracia no logré hallar ninguna solución y mi amigo se volvió hace varios meses a sus pagos, a más de 400 kilómetros de distancia. Fue allí cuando me decidí por instalar Linux Mint, que ya conocía de mi vieja pc, pero no me convenció el Gnome 3 y luego di con LMDE: desde entonces no abandono esta maravillosa distro...

    Otro problema que encontré: mi hermano se enamoró de cómo corre mi compu con LMDE y los efectos del Compiz y me pidió que le instalase Linux en su compu. Lo hice como siempre pero al final me topé con un problema que por desgracia no pude solucionar, su notebook tiene una placa de vídeo SYS y no pude hallarle los drivers para hacerla correr bien. Tuve que desistir y volver a dejarle Windows Seven frustrado. Y si hubieran visto su cara: todavía quiere tener Linux en su máquina pero nos encontramos estancado debido a estos pequeños problemas que nos dejan los fabricantes de componentes.
    PD: me dijeron que las SYS son la peor mierda que hay :)
    Me pasé un poco escribiendo pero quería contar un resumen de mis comienzos y mi llegada a este maravilloso blog que voy leyendo todos los días (los estoy llenando de comentarios, perdón).

    ResponderEliminar