Flatpaks são uma forma independente de distribuição de instalar aplicativos em seu computador Linux. Mas se a sua distribuição já possui uma forma nativa de instalar aplicativos, por que você se preocuparia em usar Flatpaks?
Índice
O que é um Flatpak?
Flatpak é o nome de um formato de pacote usado para instalar aplicativos de maneira fácil e confiável em qualquer distribuição Linux. Assim como AppImages e Snaps, os contêineres Flatpaks vêm com todas as dependências necessárias, e os aplicativos instalados como Flatpaks também podem ser atualizados automaticamente. Você pode encontrá-los
O Santo Graal do gerenciamento de pacotes
Todas as distribuições Linux precisam de uma forma de instalar aplicativos. É por isso que existem ferramentas como o apt do Debian , o dnf do Fedora e o pacman do Arch. Por necessidade, todos eles fazem a mesma coisa de maneiras ligeiramente diferentes.
Eles permitem que o usuário instale pacotes de software retirando pacotes especialmente empacotados de um repositório. O empacotamento do pacote inclui informações sobre como os arquivos que compõem o pacote — executáveis, arquivos de dados, páginas de manual e assim por diante — devem ser copiados para diferentes locais no sistema de arquivos Linux e quais permissões devem ser aplicado a eles.
Do ponto de vista do desenvolvedor, agrupar e lançar uma versão de seu aplicativo em cada um dos diferentes formatos de gerenciador de pacotes é uma grande tarefa. Mesmo que eles decidam oferecer suporte apenas aos três ou quatro formatos principais, isso ainda pode deixá-los com uma perda de desenvolvimento e uma sobrecarga de suporte considerável.
Os desenvolvedores preferem trabalhar em seu próprio código do que lutar com as complexidades de um conjunto de formatos de pacotes. Seria muito melhor se houvesse um formato de instalação universal. Os desenvolvedores poderiam empacotar seus aplicativos uma vez e os usuários de qualquer distribuição poderiam usá-los.
O mais próximo que tivemos desse Santo Graal foi o código-fonte , que é a antítese de um aplicativo empacotado. Isso significa que você baixa o código-fonte e outros componentes do aplicativo e os constrói em sua própria máquina. Como método, funciona, mas não é rápido nem particularmente conveniente, e você precisa saber o que está fazendo. Isso o coloca fora do alcance da maioria dos recém-chegados ao mundo Linux.
Flatpaks são uma tentativa de criar um formato de pacote universal. AppImages e Snaps são projetos concorrentes com os mesmos objetivos. Flatpaks fazem mais do que reduzir a pressão sobre os desenvolvedores para oferecer suporte a vários formatos de pacotes. Eles contêm o aplicativo e todas as suas dependências, portanto, o aplicativo não falhará na execução devido a uma biblioteca ausente ou incompatível, por exemplo. Os aplicativos instalados como Flatpaks também recebem atualizações automáticas.
Além disso, os aplicativos Flatpak são executados em uma espécie de minicontêiner, em área restrita de outros aplicativos – incluindo outras versões do mesmo aplicativo. Você pode instalar diversas versões de um único aplicativo sem que as dependências de uma versão interfiram umas nas outras. Isso torna a vida mais fácil para o desenvolvedor e mais tranquila para o usuário.
Instalando suporte Flatpak no Ubuntu
A Canonical (a empresa por trás do Ubuntu) deseja levar seus usuários ao Snaps, sua própria versão de instalador universal. Tanto é verdade que removeu o suporte pronto para uso para Flatpak no Ubuntu 23.04 Lunar Lobster e concordou com os sabores alternativos do Ubuntu, como Kubuntu , Lubuntu e Ubuntu Studio , que eles também removerão o suporte ao Flatpak.
Sendo o Linux o que é, é claro, você pode instalar o suporte Flatpak diretamente no Ubuntu. Flatpaks são suportados imediatamente pelo Manjaro e Fedora, portanto, se você estiver usando uma dessas distribuições, poderá pular para a próxima seção .
Para instalar o Flatpak no Ubuntu, digite:
sudo apto instalar flatpak
Existe um plugin GNOME que permite que o aplicativo Ubuntu Software instale Flatpaks. Mas há um problema. Desde o Ubuntu 20.04, o software em si é um Snap, então não funciona bem com o plugin Flatpak. Você ainda pode instalar o plug-in, mas ele obtém uma versão diferente, baseada em DEB, do aplicativo de software. Então você terá duas versões do aplicativo de software.
Você não precisa do plugin se for trabalhar com Flatpaks na linha de comando, e a linha de comando do Flatpak é muito simples. Ainda assim, se você quiser o plugin, o comando que você precisa é:
sudo apt instalar gnome-software-plugin-flatpak
Precisamos informar ao sistema Flatpak onde procurar os pacotes Flatpak. Podemos adicionar o repositório Flathub com este comando:
flatpak adição remota --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Após reiniciar o computador você pode verificar se o Flatpak está instalado corretamente e respondendo verificando seu número de versão.
flatpak --versão
Instalando um aplicativo Flatpak
Instalar um aplicativo é simples, uma vez que você saiba o nome Flatpak do pacote que deseja. Existem duas maneiras de descobrir isso.
Pesquisar o pacote no site Flathub é uma maneira. Usaremos o Discord como exemplo.
Depois de localizá-lo, vá até o final da página. Você verá o comando necessário para instalar o aplicativo.
Isso usa o nome Flatpak de três partes para o aplicativo. Observe que não precisamos incluir “flathub” em nosso comando (porque já adicionamos o repositório Flathub ao nosso sistema), mas você precisa usar todas as três partes do nome do pacote.
Também podemos pesquisar na linha de comando. Para procurar pacotes relacionados ao Discord, use este comando:
discórdia de pesquisa flatpak
Você verá uma lista de todos os pacotes que contêm o termo de pesquisa. É melhor fazer isso com a janela do terminal esticada para um tamanho maior que o normal, para que as entradas da tabela não fiquem truncadas.
Agora que sabemos o nome do pacote, podemos emitir o comando para instalá-lo.
instalação flatpak com.discordapp.Discord
Quaisquer dependências ou outros requisitos são instalados junto com o Flatpak. Uma barra de progresso mostra o quão perto da conclusão da instalação está.
Quando a instalação for concluída, você retornará ao prompt da linha de comando. Agora podemos executar nosso novo aplicativo.
Executando um aplicativo Flatpak
O comando para executar o aplicativo é igual ao comando de instalação com a palavra “instalar” substituída por “executar”.
flatpak execute com.discordapp.Discord
O aplicativo é iniciado e o Discord faz as verificações normais de atualização.
Em pouco tempo, você verá o aplicativo Discord aberto em sua área de trabalho.
No GNOME, agora que lançamos nosso aplicativo, seu ícone aparecerá no painel. Clicar com o botão direito no ícone exibe um menu. Selecione “Pin to Dash” para criar um iniciador no painel.
Você poderá iniciar o aplicativo daqui no futuro.
Listando aplicativos Flatpak instalados
Para ver os aplicativos que você instalou com Flatpak, use a list
opção. Também usamos a --app
opção para que apenas os aplicativos que instalamos sejam listados.
lista flatpak --app
Sem a --app
opção, todos os módulos e dependências da estrutura Flatpak também são listados.
Desinstalando um aplicativo Flatpak
Desinstalar um aplicativo é tão fácil quanto executá-lo. Basta usar a palavra “desinstalar” com o comando flatpak.
desinstalação flatpak com.discordapp.Discord
O aplicativo é removido do seu sistema e uma mensagem de confirmação é exibida.
Você deve usar Flatpaks?
O sandbox do aplicativo e a garantia prática de que um aplicativo será executado são características atraentes dos Flatpaks. No entanto, como um Flatpak contém todas as dependências que o aplicativo precisa, seu espaço ocupado é maior. O horário de início do aplicativo também aumentou ligeiramente.
O fato de você usar Flatpaks ou o gerenciador de pacotes nativo que acompanha o Linux pode ser uma questão de saber se os aplicativos que você procura estão nos repositórios da sua distribuição.
Nunca conheci ninguém que usasse exclusivamente Flatpaks – nem AppImages ou Snaps, aliás. Você provavelmente escolherá uma combinação do que funciona para você: seu gerenciador de pacotes padrão, Flatpaks, Snaps ou Appimages.
Se um aplicativo específico não estiver nos repositórios da sua distribuição e você não quiser compilar a partir do código-fonte, um Flatpak é provavelmente sua melhor aposta. Acho que eles são muito mais rápidos que AppImages ou Snaps.