Hoje eu to que tô, no estilo
Stallman.
Vamos por um
Slackware 100% Livre para rodar?
O Slackware é uma distribuição potente e que vem com um conjunto de softwares que, sem internet, você está bem abastecido. E nesse conjunto, alguns softwares proprietários e com licenças que não são do agrado do Stallman, estão presentes.
Depois de procurar e vagar por um tempo, eu achei uma alternativa para por o Slackware em estado Debian. Calma, sem
apt! Estou falando do estado livre que o Debian vem por padrão, os repositórios do mesmo são padronizados com o MAIN, que por sua vez só possuem softwares livres. Vamos fazer isso com o Slackware, por um repositório 100% Livre.
Então, como fazer essa mágica? Simples, vamos usar como base o Freenix, antigo Freeslack, que é baseado em Slackware, mas 100% Livre. O Freenix possui uma lista de pacotes não livres retirados da base do Slackware. Vamos usar esta base para tornar nosso Slackware 100% Livre.
Para começar, vamos precisar mexer na listas de repositório do Slackware e adicionar na última linha, o repositório do Freenix. Como root, executamos:
# echo '
# 100% Libre
https://freenix.net/fxp/freeslack64-14.2/
' >> /etc/slackpkg/mirrors
Se caso você já tenha uma instalação mais antiga do Slackware em seu HD, comente o antigo repositório e adicione # na frente do mesmo.
Após isso, vamos precisar alterar/adicionar a variável SLACKKEY presente em
/etc/slackpkg/slackpkg.conf. Vamos achar a variável SLACKKEY na linha 65. Se caso a antiga varíavel SLACKKEY não está comentada, comente. 2 mesmas variáveis entram em conflito.
SLACKKEY="Connie Dobbs (Free eXpansion Pack for Slackware)"
Após feito isso, precisamos atualizar a chave GPG do projeto em seguida atualizar a lista de repositório:
# slackpkg update gpg && slackpkg update
Repositório está em pé e agora chegou a hora mais divertida, desinstalar softwares não livres e com licenças, que não são bem vistas pela FSF. Como diria Júlio Neves: "se for em uma linha, é melhor ainda". E vamos fazer exatamente isso, vamos rodar o comando
removepkg com alguns pacotes:
# removepkg \
getty-ps \
lha \
unarj \
amp \
seamonkey-solibs \
bluez-firmware \
ipw2100 \
ipw2200 \
trn \
zd1211-firmware \
font-bh-ttf \
font-bh-type1 \
mozilla-thunderbird \
mozilla-firefox \
seamonkey \
xfractint \
xgames \
xv \
kernel-firmware \
kernel-generic \
kernel-huge \
kernel-modules \
kernel-headers \
kernel-source
Sim, o mozilla é livre, mas permite plugins não livres. Por tanto, você vai ficar sem browser. Você pode compilar e instalar o IceCat, presente no Slackbuilds. Ou, até mesmo ficar com o Firefox. A decisão é sua, só remova da lista. Porém, não ficará 100% Livre.
NOTA: o IceCat precisa de um processador potente para compilar, seu dual-core não vai dar conta do recado. Sinto-lhe informar, se você é do time "Pc Fraco", use um pacote pré compilado, busque no site do
SlackOnly esse pacote.
Próxima etapa, é instalar o
Linux Libre, o kernel Linux que foi removido todos os Blobs. Vamos fazer isso com o
slackpkg, agora estamos puxando do repositório do Freenix. :)
# slackpkg install \
linux-libre-headers \
linux-libre-image \
linux-libre-source
Passo feito? Ok, estamos na reta final, precisamos agora apontar o nosso novo kernel no "lilo.conf", porém, o Linux Libre Generic não vai rolar, não por enquanto. Vamos precisar apontar o Huge primeiramente, reiniciar a máquina para depois gerar os módulos e finalmente fazer o apontamento no "lilo.conf".
Abra o "lilo.conf" e adicione no final da linha:
image = /boot/vmlinuz-huge-4.4.172-gnu
root = /dev/sda1
label = Huge-Libre
read-only
Perceba que na chamada da "image =", mudará futuramente a este artigo! Por isso, faça a chamada de acordo com o kernel Huge do sistema. Faça a listagem em
/boot/ e veja qual arquivo apontar.
Execute o
lilo e reinicie a máquina:
# lilo
Ok, depois que a máquina foi reiniciada e se NÃO deu um
kernel Panic, o que é meio dificil se você seguiu este HOW-TO, chegou a hora de fazer o carregamento do Kernel Generic. Vamos usar o script presente em
/usr/share/mkinitrd.
# /usr/share/mkinitrd/mkinitrd_command_generator.sh
# mkinitrd -c -k 4.4.172 -f ext4 -r /dev/sda1 -m
# hid-logitech-hidpp:hid-lenovo:hid-microsoft:hid_multitouch:jbd2:mbcache:ext4
# -u -o /boot/initrd.gz
A saída será para os módulos que podem ser carregados na minha máquina. A sua vai ser variável. Execute o
mkinitrd que foi gerado.
# mkinitrd -c -k 4.4.172 -f ext4 -r /dev/sda1 -m
# hid-logitech-hidpp:hid-lenovo:hid-microsoft:hid_multitouch:jbd2:mbcache:ext4
# -u -o /boot/initrd.gz
Após isso, faça a chamada novamente do script, mas dessa vez apontando o kernel Generic em
/boot/. Utilize o parâmetro "-l":
# /usr/share/mkinitrd/mkinitrd_command_generator.sh \
# -l /boot/vmlinuz-generic-4.4.172-gnu
A saída será com uma configuração para o "lilo.conf". Adicione em "lilo.conf" a saída gerada, em seguida execute o
lilo para pegar as novas chamadas no menu:
image = /boot/vmlinuz-generic-4.4.172-gnu
initrd = /boot/initrd.gz
root = /dev/sda1
label = Generic-Libre
read-only
# lilo
Feito isso, aproveite o que a liberdade tem a lhe oferecer! Vamos fazer uma outra dica de uma maneira mais simples de deixar o Slackware 100%
Libre. Até lá, tome maracugina.