# GNU Linux-libre

GNU Linux-libre é um núcleo de sistema operacional e um pacote do Projeto GNU mantido a partir de versões modificadas do núcleo do Linux. O objetivo do projeto é remover do núcleo do Linux qualquer tipo de programa que não inclui seu código-fonte correspondente, tem seu código-fonte ofuscado ou que foi publicado sob uma licença privativa.
As porções que não apresentam código-fonte são denominadas "blobs binários" e são sobretudo compostos de firmware privativo, que, ainda que em geral redistribuíveis, não oferecem ao usuário a liberdade para modificar ou estudar seus componentes. O Linux-libre é um exemplo proeminente de software livre.

## História

O núcleo Linux começou a incluir blobs binários em 1996. O esforço para removê-los começou em 2006 com as ferramentas "find-firmware" e "gen-kernel" da distribuição GNU gNewSense. Esta tarefa foi levada adiante pela distribuição BLAG em 2007 com o script "deblob", e assim o Linux-libre nasceu.
O GNU Linux-libre foi publicado originalmente pela Fundação Software Livre América Latina (FSFLA), e então apoiado pela Free Software Foundation (FSF) como um componente valioso para distribuições GNU/Linux totalmente livres. O Linux-libre tornou-se um pacote GNU em março de 2012. O mantenedor do projeto é Alexandre Oliva.

## Remoção de firmware privativo
### Métodos

O processo de remoção faz uso de um script chamado "deblob-main". Este script é inspirado no que é utilizado pelo gNewSense. Jeff Moe fez modificações subsequentes para atingir certos requerimentos e assim permitir o uso pela distribuição BLAG. Há ainda outro script nomeado "deblob-check", que verifica se o arquivo do núcleo ou um patch ainda contém software que suspeita-se ser privativo.

### Efeitos

Além do efeito primário desejado de rodar um sistema usando apenas software livre, as consequências práticas da remoção de firmware privativo de dispositivos tem efeitos positivos e negativos.
As vantagens incluem a extração de programas que não podem ser nem auditados em busca de bugs, vulnerabilidades e operações maliciosas (como backdoors), nem consertados pelos desenvolvedores do núcleo do Linux. É factível que o sistema inteiro seja comprometido por conta de um único programa malicioso no firmware, e sem a possibilidade de realizar uma auditoria no firmware provido pelo fabricante, mesmo um pequeno bug pode minar a segurança do sistema.
Por outro lado, a remoção de firmware privativo do núcleo acarreta em perda de funcionalidade em certas máquinas ou em periféricos se não houver um substituto livre disponível. Este problema afeta certas placas de som, vídeo, rede, sintonizadores de televisão e outros aparatos. Quando possível, um firmware substituto é utilizado, como as placas de rede sem fio ath5k e ath9k.

## Disponibilidade

O código-fonte e os pacotes pré-compilados do núcleo do Linux sem blobs estão disponíveis diretamente das distribuições que usam os scripts do Linux-libre. O subprojeto Freed-ora prepara e mantém pacotes RPM baseados no núcleo do Fedora. Há também pacotes pré-compilados para Debian e distribuições derivadas como Ubuntu.

## Distribuições

Distribuições nas quais o GNU Linux-libre é o núcleo padrão utilizado:
* Dragora GNU/Linux
* dyne:bolic
* gNewSense (descontinuado)
* Musix GNU+Linux (descontinuado)
* Parabola GNU/Linux-libre
* PureOS
* Trisquel
Distribuições nas quais o Linux é o núcleo padrão mas que propõem o GNU Linux-libre como alternativa:
* Arch Linux
* Canaima
* Gentoo Linux