Por que você deve considerar usar o NixOS?

Por que você deve considerar usar o NixOS?

NixOS é uma distribuição interessante. Vamos dar uma olhada por que você pode querer experimentá-lo.

NixOS... Mais uma distro que usa um gerenciador de pacotes diferente?

Bem, o NixOS é uma das distribuições Linux avançadas.

Então, se eu estamos escrevendo isso, deve haver uma razão sólida, certo? Bem, há muitas!

Neste guia, compartilharemos os principais recursos do NixOS, fazendo com que ele se destaque da pilha de distribuições Linux.

Não se preocupe; antes de seguirmos em frente, vamos dizer-lhe o que é o NixOS:

É uma distribuição Linux que usa o gerenciador de pacotes Nix em seu núcleo para poupar o problema de configurá-lo em uma distribuição Linux diferente e permitir que você aproveite ao máximo o Nix. Construído pela mesma equipe que desenvolveu o Nix.

6 Razões para usar o NixOS

NixOS é uma interessante distribuição Linux independente construída a partir do zero.

Todo mundo pode aprender muito usando o NixOS, mas se você é um desenvolvedor ou um estudante de ciência da computação, o NixOS deve se encaixar perfeitamente.

nixos

Vamos dizer-lhe porquê.

1. Não quebra facilmente, é fácil de recuperar

Por sua essência, o NixOS é construído para durar muito tempo.

Isso não significa que ele vem com pacotes de anos de idade como o Debian faz para estabilidade, mas segue uma abordagem diferente.

Para entender como o NixOS é tão estável, vamos falar sobre como os usuários geralmente quebram seu sistema, ou seja, "problemas de dependência ou conflitos de pacote"

Você geralmente enfrentará uma falha significativa do sistema ao atualizar seu sistema ou instalar um novo pacote. Principalmente porque o gerenciador de pacotes não pôde satisfazer a dependência ou o pacote instalado entra em conflito com o sistema existente.

E o NixOS tem uma maneira muito inteligente de lidar com esse problema.

Veja, sempre que você atualizar seu sistema ou instalar um pacote, o estado do sistema é reconstruído, denominado como uma "nova geração" em relação ao atual.

Portanto, se você enfrentar qualquer problema usando o novo pacote ou atualização, você sempre pode reverter para a geração antiga, onde você encontrará o estado anterior do sistema.

Mesmo que o sistema esteja inacessível, você encontrará as gerações anteriores disponíveis no momento da inicialização.

2. Reprodutibilidade

Com um arquivo de configuração, você pode criar uma réplica do seu ambiente atual para outros sistemas físicos.

Para se beneficiar desse recurso, você pode usar o arquivo de configuração Nix para fins de instalação e configuração.

Depois de ter o arquivo de configuração que se adapta à sua finalidade, envie esse arquivo para a nova instalação e substitua o arquivo de configuração padrão pelo seu. É assim tão fácil!

Reconstrua a configuração, atualize o sistema e faça uma troca pelo comando fornecido:

Comandos para usar no terminal

sudo nixos-rebuild switch --upgrade

E você terá o ambiente de desenvolvimento exato que você tinha em sua máquina principal replicado em poucos minutos.

3. Reversões fáceis

Embora você já possa ter tido a ideia do recurso do NixOS de "Generations", há mais do que isso.

O NixOS depende fortemente de links simbólicos (para sempre).

Normalmente, com outras distribuições Linux, quando você atualiza um pacote, o novo pacote substitui o antigo.

Mas esse não é o caso do NixOS.

No NixOS, os pacotes são isolados e armazenados dentro de um diretório exclusivo, e é aí que entra o uso de links simbólicos.

Sempre que você atualizar um pacote, o NixOS ajustará o link simbólico para localizar o novo pacote, mas não removerá o antigo.

Então, se você enfrentar conflitos com o novo pacote, basta mudar para as gerações antigas, e os links simbólicos ajudam a localizar a versão antiga de um pacote. 😌

4. Gerenciador de pacotes Nix

O gerenciador de pacotes Nix permite que você acesse mais de 80.000 pacotes! Não se limita apenas ao Linux; ele também funciona em macOS, WSL2, Docker e mais plataformas.

E a disponibilidade de pacotes é semelhante ou até melhor do que o AUR, pois você deve encontrar quase tudo no gerenciador de pacotes Nix.

Isso significa que você pode confiar no gerenciador de pacotes Nix para quase todos os pacotes.

Também é relativamente fácil de entender se você tem experiência anterior em Linux. Em poucas palavras, o gerenciador de pacotes Nix é impressionante!

5. Usar várias versões do mesmo pacote

Isso pode ser crucial para os desenvolvedores, onde alguns aplicativos exigem a versão antiga de uma dependência específica, enquanto alguns exigem a mais recente.

E como mencionado anteriormente, o nix instala pacotes em um subdiretório específico, e cada pacote é isolado para que um não interfira no outro!

6. Capacidade de testar pacotes sem instalação

Você pode usar o nix-shell, que modificará temporariamente a variável de ambiente $PATH e será usado para testar um pacote temporariamente.

E não há limitação. Você tem permissão para testar todos os pacotes que estão disponíveis para instalação!

Sinta-se à vontade para compartilhar sugestões sobre o que mais devemos cobrir sobre o NixOS nos comentários abaixo.

Última atualização deste artigo: 24 de february de 2023