Jump to content

NixOS no desktop

From NixOS Wiki
This page is a translated version of the page NixOS as a desktop and the translation is 100% complete.

O NixOS pode ser usado para diversas finalidades. Se você deseja usá-lo como sistema operacional de desktop principal para seu uso diário. Esta página é para você. Mesmo que sua ambição seja usar o NixOS na nuvem ou em servidores especialmente configurados, você pode começar com as lições descritas aqui para se familiarizar mais amplamente com o ecossistema Nix.

Instalação

Metodo Wiki

Se preferir ler, veja NixOS Installation Guide Para começar. Para uma opção de vídeo bem apresentada, veja a seção de guia de vídeo logo abaixo. Lembre-se de que, para uma instalação em desktop, você provavelmente precisará começar com pelo menos 30 GiB de espaço em disco disponível para os ambientes de desktop (por exemplo, GNOME, KDE ou XFCE), navegadores (por exemplo, Firefox) e outros aplicativos gráficos (por exemplo, VSCode) que seriam típicos de uso diário. 15 GiB podem ser suficientes para uma configuração bastante básica.

Guia em Video

Para um guia visual (video), veja Wil T Nix Guides. O second video é um guia de instalação conciso. Esta série de 8 partes, produzida no início de 2021, também aborda todos os conceitos básicos de uso do NixOS como desktop e como configurá-lo conforme sua preferência.

Gerenciando sua configuração

É possível gerenciar toda a sua configuração usando os métodos documentados no NixOS official manual. No entanto, a maioria dos membros da comunidade que usam o NixOS no desktop preferem gerenciar suas configurações de usuário usando (e.g. "dotfiles") Home Manager (citação necessária). O Home Manager é uma ferramenta orientada ao usuário para declarar o que você deseja instalar e como deseja configurá-lo e, portanto, seria usado no lugar da maioria das configurações que você normalmente colocaria em um configuration.nix ou através nix-env

Guia em Video

Os guias de Wil T são uma mistura equilibrada de:

  1. Bootstrapping prático para se tornar capaz de gerenciar seu sistema com muita competência usando o Home Manager, controle de versão do Git e, eventualmente, o Flakes.
  2. Visões gerais conceituais e exposição geral do ecossistema Nix, da comunidade e dos recursos disponíveis.

O segundo video, começando a partir de 27 minutos, também é uma introdução e um guia para configurar o Home Manager.

Gerenciando sua configuração

Com os Modulos NixOS

configuration.nix é uma instancia do NixOS module, que facilita a divisão da sua configuração em vários arquivos. Os módulos podem:

  • Importar outros módulos
  • Declarar novas opções
  • Fornecer valores para as opções (é o que a maior parte do seu configuration.nix padrão faz)
  • Referenciar valores de opções de outros módulos (via the config attribute passed to all modules)

Desde que você declare opções para quaisquer valores que queira compartilhar entre os módulos, você pode dividir sua configuração como quiser em arquivos que são importados, direta ou transitivamente, pelo seu arquivo root configuration.nix. Você também pode importar módulos de fontes remotas, usando funções como builtins.fetchTarball. Veja o wiki page ou o NixOS manual para mais informações

Com Flakes

Se você quer uma composição de Configuração do NixOS, ainda experimental Flakes está causando muita excitação na comunidade. Gerenciar flocos requer um bom entendimento básico e alguma experiência prática com o ecossistema Nix.

Guia em Video

Videos seven e eight da série original de 8 partes de Wil T é uma boa visão geral do que os Flakes permitem e como começar a usá-los.

Além da configuração inicial

Depois de se familiarizar com o ecossistema Nix e ter uma instalação funcional do NixOS para desktop, você provavelmente se interessará por personalizações e configurações mais detalhadas.

Aprenda com exemplos

Se você se sente confortável gerenciando seu sistema por meio de um repositório git usando flakes, há muitos repositórios com os quais você pode aprender agora!

Confira Comparison of NixOS setups para uma tabela comparando algumas opções populares.

Veja Configuration Collection para uma longa lista dentro do wiki.

Além disso, as seguintes pesquisas de tópicos no Github devem revelar muitos exemplos úteis.

 *  nix-flake
 *  nixos-configuration
 *  nixos-dotfiles