Distrobox: experimente várias distribuições Linux através do Terminal

Distrobox: experimente várias distribuições Linux através do Terminal

Distrobox é uma ferramenta terminal interessante que permite executar várias distribuições Linux sem qualquer incômodo. Saiba mais sobre isso aqui.

Distrobox é uma ferramenta de software que permite executar qualquer distribuição Linux dentro do terminal.

Ele tem como objetivo permitir que você execute uma variedade de software em cima da distribuição do host sem qualquer incômodo.

Por exemplo, existe algo que esteja disponível apenas na AUR e você queira acessá-lo a partir do seu sistema Ubuntu? Distrobox pode te dar esse conforto.

Então, o que exatamente é Distrobox?

Distrobox é um wrapper para podman ou docker (o que você preferir). A razão pela qual o Distrobox existe é para integrar os contêineres dentro do seu sistema, como se fossem softwares nativos.

Algumas coisas em que ele se integra são dispositivos removíveis (dispositivos de armazenamento USB), D-Bus, diretório $HOME do usuário, tomadas Wayland e X11, e muito mais!

Longa história curta

Distrobox é uma maneira de fazer com que softwares contêinerizados se integrem como aplicativos nativos, mesmo que esse software containerizado pertença a uma distribuição completamente diferente.

A melhor coisa sobre isso, você começa a construir um ambiente de desenvolvimento sem exigir privilégios root.

Você não precisa alterar sua distribuição de host apenas por causa de problemas de compatibilidade de software. Você pode continuar usando o que você está confortável e usar Distrobox para preencher a lacuna para compatibilidade de software para trás/para frente usando qualquer outra distribuição Linux.

Características do Distrobox

Agora que você tem uma ideia sobre Distrobox, o que ele permite que você faça no geral? As funcionalidades são úteis para o seu caso de uso?

Deixe-nos mencionar os principais destaques para Distrobox:

  • Capacidade de fazer um ambiente de teste para fazer alterações sem afetar a distribuição hospedeira.
  • Um ambiente de desenvolvimento que não precise de privilégios sudo pode ser flexível para o seu trabalho. Por exemplo, se você tem um laptop de trabalho, uma configuração sem sudo pode ajudá-lo.
  • Maneira fácil de gerenciar vários ambientes.
  • Suporta uma variedade de distribuições.

Como instalar o Distrobox?

Há um pré-requisito para instalar o Distrobox. Ou seja, você deve ter podman ou docker instalados. Se você tem uma distribuição Linux relativamente moderna, recomenda-se instalar podman de seus repositórios de software. Caso contrário, instale docker e siga os passos mencionados abaixo.

O Distrobox está disponível nos seguintes repositórios:

  • Arch Linux (AUR)
  • EPEL 8 e posterior
  • Fedora 34 e posterior
  • Ubuntu 22.10 e posterior

Como você deve ter notado, a versão mais recente do Ubuntu disponível para o público em geral é o Ubuntu 22.04. Poucas distribuições têm Distrobox empacotado ainda...

Se você não encontrá-lo nos repositórios, você pode executar o seguinte comando para instalar o Distrobox:

Comandos para usar no terminal

curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh

O comando acima baixará um script shell e o executará com privilégios de superusuário. Caso você não possa verificar a fonte você mesmo, abaixo está o comando que você pode usar sem se sentir ansioso em conceder privilégio de superusuário a um script desconhecido.

Comandos para usar no terminal

curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s -- --prefix ~/.local

Agora que você tem distrobox instalado, vamos proceder a alguns exemplos de usá-lo.

Começando com Distrobox

Ter uma chave de fenda em sua caixa de ferramentas, mas nunca usar, não vai melhorar o seu trabalho. Então vamos passar por cima de alguns comandos básicos para usar Distrobox, o que eles fazem e muito mais.

Além disso, se você estiver curioso, você pode dar uma olhada neste vídeo de um colega YouTuber que tentou Distrobox no Fedora Silverblue:

1. Criando um novo contêiner

Um "contêiner" neste contexto não se refere a um software contêiner como nextcloud, syncthing, etc, mas sim um próprio sistema operacional.

A sintaxe para criar um novo contêiner é a seguinte:

Comandos para usar no terminal

distrobox-create --name NOME-DO-CONTAINER --image NOME-DO-SO:VERSAO

Aqui, você pode especificar qual nome deseja abordar seu contêiner por (NOME-DO-CONTAINER), o nome do sistema operacional que deseja usar (NOME-DO-SO) e sua versão (VERSAO).

Vamos dar uma olhada em como criar um novo contêiner para o Fedora 36 com o nome 'fedoralivreeaberto'. Faremos isso com o seguinte comando:

Comandos para usar no terminal

distrobox-create --name fedoralivreeaberto --image fedora:36

Você também pode substituir 36 por latest caso queira a versão mais recente de qualquer sistema operacional.

Este comando levará apenas um momento para baixar a imagem do contêiner para Fedora 36.

Uma vez que o processo termine, você receberá uma mensagem informando que o contêiner foi criado.

distrobox_1

2. Inicie e entre no contêiner

Um contêiner de SO não é útil se não o iniciarmos e acessarmos seu shell.

Para isso, use o comando 'distrobox-enter'. A sintaxe é a seguinte:

Comandos para usar no terminal

distrobox-enter NOME-DO-CONTAINER

Quando você iniciar o contêiner pela primeira vez, o Distrobox fará uma configuração inicial automática de instalação de alguns contêineres, configurando as montagens, temas, ícones, fontes, grupos, usuários e muito mais.

Com base no poder de processamento do seu computador, isso pode levar muito tempo. Por favor, seja paciente por ~15 minutos durante o primeiro power-on.

Quando isso estiver concluído, você será deixado automaticamente na shell do recipiente.

distrobox_2

Se você olhar com cuidado, anteriormente, quando executamos o comando 'distrobox-enter', o nome do host mostrado no prompt era computador. Uma vez que a configuração inicial foi feita, agora eu estou em um shell com um nome de host diferente, que é 'fedoralivreeaberto'.

Verifiquemos também a VERSAO do arquivo '/etc/os-release'.

distrobox_3

3. Instalando software

Se você chegou a este estágio, isso é o equivalente a instalar o Fedora recentemente no seu computador e o SO apenas inicializado.

Assim como uma máquina virtual, o SO em nossa máquina host não importa. Temos que usar o gerenciador de pacotes fornecido pelo SO convidado. Portanto, vamos usar o gerenciador de pacotes DNF no Fedora 36.

Meu sistema operacional host, Ubuntu 22.04 LTS, não tem Foliate nos repositórios. Mas Fedora 36 tem Foliate nos repositórios. Dessa forma, podemos facilmente instalar o Foliate como um software nativo sem fazer uso de virtualização pesada.

Então, vamos instalar o Foliate, já que ele está disponível nos repositórios do Fedora, mas não nos repositórios do Ubuntu.

Executaremos o seguinte comando (dentro do shell de contêiner) para instalar o Foliate:

Comandos para usar no terminal

sudo dnf install foliate.noarch

Depois que o DNF terminar de instalar o Foliate, executaremos o seguinte comando (dentro do shell do contêiner) também:

Comandos para usar no terminal

distrobox-export --app foliate

Quando você executar o comando 'distrobox-export' do contêiner, ele também disponibilizará o software especificado para o sistema operacional host. Isso significa que, mesmo que o Foliate esteja instalado dentro do contêiner Fedora, vamos ser capazes de vê-lo no Menu de Aplicativos do Ubuntu.

distrobox_4

Como você pode ver, temos o Foliate visível no Menu de Aplicação do Ubuntu, mesmo que isso tenha sido instalado em um recipiente Fedora 36.

Não é incrível?

4. Integração de aplicativos Distrobox

Para efeitos desta demonstração, baixamos o livro PDF The Linux Command Line, escrito por William Shotts. Guardamos no diretório de Documentos.

Vamos ver se um software containerizado — que é embalado para um sistema operacional totalmente diferente — reage a alterações como a mudança do modo claro para o modo escuro.

Pode ver nossa pasta pessoal?

distrobox_5

Como você pode ver, as alterações do tema são detectadas corretamente, até mesmo a barra superior tem os ícones corretos para botão de fechamento e menu de hambúrguer.

Além disso, não precisamos copiar nosso arquivo epub para outro lugar. Nosso diretório '~/Documentos' também foi listado corretamente.

Assim como uma aplicação nativa!

5. Gerenciando imagens distrobox

O Distobox fornece alguns comandos que podem ser usados para gerenciar imagens.

O primeiro comando é 'distrobox list'. Como o nome sugere, ele lista todos os contêineres que estão instalados.

distrobox_6

Como eu tenho apenas um contêiner, apenas fedoralivreeaberto apareceu, mesmo que tenha saído há alguns momentos.

O segundo comando é 'distrobox stop'. Este comando é usado para parar um contêiner em funcionamento.

Abaixo está a sintaxe:

Comandos para usar no terminal

distrobox stop NOME-DO-CONTAINER

Finalmente, para excluir qualquer recipiente Distrobox, use o comando 'distrobox rm'. A sintaxe é dada abaixo:

Comandos para usar no terminal

distrobox rm NOME-DO-CONTAINER

Para explorar mais detalhes técnicos, vá para sua página GitHub.

Conclusão

Distrobox é uma ferramenta maravilhosa que permite instalar sistemas operacionais como um simples recipiente podman/docker e usá-los como um sistema operacional completo.

Usando o Distrobox, você pode instalar praticamente qualquer software, mesmo que não esteja disponível nos repositórios da sua distribuição, ou mesmo se ele não estiver embalado para sua distribuição Linux. Quão útil é isso?

Pode haver vários casos de uso para Distrobox. Para que você acha que vai usá-lo? Compartilhe suas opiniões na seção de comentários abaixo.

Última atualização deste artigo: 9 de november de 2022