domingo, 26 de marzo de 2023

Instalador de Debian ahora incluye software no libre

A partir de ahora Debian GNU/Linux, va a ser tan fácil de instalar como cualquier otra distribución que incluya software propietario, como por ejemplo: Ubuntu, Mint, etc.. Ya no vamos a tener problemas a la hora de instalar Debian GNU/Linux con el WIFI, o la tarjeta gráfica o la tarjeta de sonido. Pues a partir de ahora Debian incluye software no libre en el instalador (debian-installer)




El proyecto Debian a partir de Debian 12 (Bookworm) ha realizado un cambio muy importante en la forma en que maneja el software propietario (no libre), incluirá firmware propietario (no libre) para facilitar la instalación con adaptadores WIFI, tarjetas gráficas, etc.

En Debian las decisiones de diseño del sistema operativo, se hace de manera democrática, tomando las decisiones a través de votación entre todos miembros de la comunidad de Debian (actualmente mas de 1000 desarrolladores).

La principal razón para no incluir firmware propietario (no libre) es que algunos fabricantes de hardware, se niegan a proporcionar detalles del hardware, por tanto es muy difícil crear controladores libres para dicho hardware. Por este motivo, solo estaban disponibles los controladores binarios (creados por el propio fabricante), en la imagen iso no-free (ya no es necesaria generar dicha imagen). Mientras que otros sistemas operativos derivados de Debian como Ubuntu, Mint, etc.. si proporcionan estos controladores binarios (no libre).

Cuando se redactó el Contrato Social de Debian (5 de junio de 1997) sobre el desarrollo de Debian, la gran mayoría de las conexiones a internet en dicha época eran ethernet (por cable). Actualmente las cosas han cambiado, y ahora también se usan las conexiones WIFI.

Hasta Debian 11 (Bullseye), la comunidad de Debian, en su contrato social, no se permitía incluir firmware no libre, es mas complicado (no imposible) el poder usar dicho hardware (como la conexión Wi-Fi, la tarjeta gráfica, etc.), durante el proceso de instalación. Hasta Debian 11
(Bullseye) tiene un instalador no oficial, que  incluía firmware propietario (no libre), y era el recomendado, para hardware reciente (ya que facilitaba la instalación). 




 

Cambio en el Contrato Social

Después escuchar a los nuevos usuarios que se quejaban y frustraban sus intentos de instalar Debian, de que el instalador (debian-installer) no reconociera sus adaptadores WIFI. Decidieron de forma democrática votar si cambiaban el contrato social, y añadían una nueva opción en el instalador.

La votación duró dos semanas y las opciones eran:

Opción 1: Solamente un instalador, incluyendo el firmware no libre.
Opción 2: Recomendar un instalador que contenga firmware no libre.
Opción 3: Permitir la presentación de instaladores no libres junto al libre.
Opción 4: El instalador con software no libre no forma parte de Debian.
Opción 5: Cambiar el Contrato Social (CS) para el firmware no libre en el instalador, y mantener un solo instalador.
Opción 6: Cambiar el Contrato Social (CS) para el firmware no libre en el instalador, y mantener ambos instaladores.
Opción 7: Ninguna de las anteriores.


La opción ganadora fue la 5: Cambiar el Contrato Social (CS) para el firmware no libre en el instalador, y mantener un solo instalador.

Con esto se actualiza el contrato social, a las nuevas necesidades de hardware y a la época actual, solucionando el problema con hardware WIFI, tarjetas gráficas, etc...

 


 

 

Añadir non-free-firmware
 

Como dije antes, el proyecto Debian tomó la decisión, de crear un nuevo componente de repositorio: non-free-firmware,  que no es firmware libre e incluir su contenido en los medios de instalación de Debian para facilitar las cosas a los usuarios.
 

Esta sección se puede aplicar a las versiones: actual estable (stable) Debian 11 (Bullseye) y a la anterior estable (old-stable) llamada: Debian 10 (Buster, pero no esta habilitada para versiones anteriores, ya que no tienen mantenimiento ni soporte. 

 

Archivo sources.list
 

Veamos el archivo sources.list que se encuentra en la ruta: /etc/apt, desde el punto de vista de un usuario del sistema.


Para el acceso normal mediante HTTP el archivo está definido en el archivo: /etc/apt/sources.list de la siguiente manera.
 

Por ejemplo: El actual stable = bullseye.

deb http://deb.debian.org/debian/ bullseye main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian/ bullseye main non-free-firmware contrib non-free

deb http://security.debian.org/debian-security bullseye-security main non-free-firmware contrib non-free
deb-src http://security.debian.org/debian-security bullseye-security main non-free-firmware contrib non-free

 
Entre el nombre de publicación bullseye o el nombre de la distribución estable se aconseja usar el primero para evitar sorpresas cuando se libere la nueva distribución estable.

El significado de /etc/apt/sources.list está documentado en el manual de: sources.list solo verems los puntos más importantes:
 

- la línea deb se define para paquetes binarios.
- la línea deb-src se define para los paquetes de código fuente.
- el primer elemento:
http://deb.debian.org/debian/  es la URL raíz del archivo de Debian.
- el segundo elemento es el nombre de la distribución: bien el nombre de la distribución (bullseye) o el nombre de publicación (stable).
- el tercero y siguientes son la relación de nombres de las secciones:
main non-free-firmware contrib non-free.
 

Las líneas deb-src pueden ser omitadas de forma segura (o comentadas añadiendo # al comienzo de la línea) haciendo que aptitude no tenga acceso a la metainformación de las fuentes. La URL puede utilizar los protocolos: http://, ftp://, file://, ….

Si en el ejemplo anterior se sustituye bullseye por sid
(unstable) para pasar a desarrollo, no se necesita la línea para las actualizaciones de seguridad deb: http://security.debian.org/ … en /etc/apt/sources.list. Esto es debido a que no hay área de actualizaciones de seguridad en sid (unstable). 

 

Secciones de paquetes:
 

- main: cumplen con DFSG y sin dependencias con non-free
- non-free-firmware: no cumple con DFSG, se requiere firmware para una experiencia razonable de instalación del sistema
- contrib: cumplen con DFSG pero con dependencias con non-free
- non-free: no compatible con DFSG y no es non-free-firmware




 

Enlaces relacionados con este manual

Contrato social de Debian

Opciones de la votación de firmware no libre en el instalador

Resultados de la votación de firmware no libre en el instalador

Versiones de Debian

El instalador de Debian: debian-installer 

Firmware en Debian

Gestión de paquetes en Debian