O que é Flatpak
Flatpak é um utilitário (um aplicativo) usado para a distribuição, instalação e gerenciamento de pacotes de software no Linux. Ele usa um sistema de sandbox que permite aos usuários rodar aplicativos em um ambiente de isolamento partial do resto do sistema. Flatpak é também o nome de estrutura usada para criar pacotes de desktop em muitas distribuições Linux. Sua força está em sua abordagem para a entrega de software. Ele remove restrições tradicionais e fornece uma resposta simples para programas de computador, independentemente da linguagem de programação, do hardware ou das das arquiteturas de softwares que eles usam. Essa flexibilidade garante que os construtores possam usar o flatpak sem questionar problemas de compatibilidade.
Muitos outros sistemas de gerenciamento de pacotes existem para os diversos sistemas operacionais. Para o Linux temos, por exemplo:
- dpkg: usado pelo Debian, Ubuntu e seus derivados, distribuindo arquivos no formato .deb. Foi o primeiro a apresentar um mecanismo de resolução de dependências, usando o aplicativo APT do lado do usuário.
- RPM: criado pela Red Hat, agora é usado por diversas distribuições como PCLinuxOS, Fedora, AlmaLinux, CentOS, openSUSE, OpenMandriva e Oracle Linux. RPM lida com pacotes .rpm, sendo a base de gerenciadores como apt4rpm, up2date (Red Hat), urpmi (Mageia), zypper (openSUSE), e dnf (Fedora, Red Hat e Yellow Dog Linux). Leia aqui as instruções de uso de DNF4 e DNF5.
- Pacman: Usado no Arch Linux, Frugalware e DeLi Linux, é um formato de pacotes binários e comprimidos por tar. Os pacotes são gerenciados pelo utilitário makepkg.
- Snap: um gerenciador desenvolvido pela CAnonical para o Ubuntu. Os pacotes, chamados snaps são gerenciados pela ferramenta snapd, usado por diversas distribuições. Como o flatpak também cria ambientes de isolamento dentro do sistema.
- AppImage: não é propriamente um gerenciador de pacotes mas sim uma forma de distribuição de arquivos binários executáveis que podem ser redados em qualquer distibuição linux, sem a necessidade de ajusta para cada uma. As imagens em AppImages trazem contêm todas as dependências necessárias para a execução do aplicativo.
Conceitos básicos
Alguns conceitos são essenciais para a compreensão do flatpak. Ainda que existam aplicativos GUI para gerenciar os pacotes, é útil aprender os comandos na CLI (command line interface).
O que é Sandbox
sandbox é um mecanismo de segurança na computação, usado inicialmente no desenvolvimeto de softare para garantir que um código esteja logicamente isolado do sistema operacional do computador e outros aplicativos instalados. Ele contêm, em princípio, todas as dependências necessárias, embora existam sistemas em que parte dessas dependências pode ser encontrada no computador hospedeiro. Desta forma, é possível escolher exatamente as versões de cada dependência e outros recursos usados no desenvolvimento, evitando falhas e impedindo que vulnerabilidades se espalhem pelo sistema. O isolamento nas sandboxes significa que um processo externo a ela não pode interferir em um processo interno, e vice-versa.
Mais tarde, o mesmo conceito passou a ser usado para a própria instalação e execução de aplicativos nos computadores de usuários, criando ambientes isolados que restringem o seu acesso ao sistema operacional, limitando possíveis danos que um aplicativo malicioso ou com falhas de segurança pode causar. Essa é também uma forma de garantir que o aplicativo tenham acesso às dependências corretas e que a instalação de novos aplicativos não prejudiquem o sistema e os demais aplicativos instalados.
Cada aplicativo flatpak é criado e executado em seu próprio ambiente isolado (sandbox), que contém o aplicativo e todas as dependências necessárias para sua execução (runtime). Por default, o aplicativo só pode acessar a sua própria sandbox, embora seja possível dar permissões para seu acesso a arquivos de usuário, rede, soquetes gráficos e algns componentes do hardware. Alguns recursos, como outros processos em execução no host, são deliberadamente vedados. Em algumas situações alguns recursos dentro do sandbox precisam ser exportados para fora, para serem usados pelo host. Esses recursos são denominados “exportações”, incluindo o arquivo de desktop do aplicativo com seu ícone.
Sandboxes, máquinas virtuais e conteineres: Uma máquina virtual é um ambiente virtualizado (isolado dentro do sistema operacional) que simula um sistema operacional completo. Por sua vez, um container isola um aplicativo e suas dependências em um ambiente virtualizado, compartilhando no entanto o kernel do sistema operacional hospedeiro. Os três conceitos são semelhantes, cada um com características próprias e propósitos específicos. Enquanto uma sandbox é mais genérica e pode ser usada para executar diversos tipos de programas de forma segura, uma máquina virtual simula um sistema operacional completo e é ideal para testes e desenvolvimento de software. Já um container é mais leve e ágil do que uma máquina virtual, sendo mais adequado para implementação e execução de aplicativos de forma isolada.
Repositório
Um repositório de software, ou repo, é um local de armazenamento para pacotes de software. Geralmente eles possuem uma lista de aplicativos disponibilizados, juntos com os seus metadados e runtime (as depedências). Repositório de software são gerenciado por controle de versão, e trabalham junto com gerenciadores de pacotes que permitem instalar e atualizar e gerenciar pacotes no computador do cliente.
Alguns dos repositórios de pacotes flatpak são:
- Flathub: o maior e mais popular repositório.
- GNOME Software: repositório oficial para o GNOME, com aplicativos projetados para o ambiente GNOME.
- KDE Discover: repositório oficial para o KDE, com aplicativos otimizados para o ambiente KDE Plasma.
- Elementary AppCenter: do Elementary OS.
- Manjaro Community Repository: para a distribuição Manjaro Linux.
O principal repositório de pacotes flatpak atualmente (em dezembro de 2024) é o Flathub.
O Flathub fornece listas separadas para pacotas Trending, Popular, New, Updated e Verified. Aplicativos verificados no Flathub são aqueles mantidos diretamente pelo desenvolvedor ou algum grupo autorizado ou aprovado por ele. Aplicativos verificados aparecem com um ícone azul na página de seleção. Também existem aplicativos publicados no Flathub pela comunidade ou por terceiros, não mantidos pelo desenvolvedor original. Esses apps não são elegíveis para verificação.
Repositórios do flatpak se comportam de forma semelhante aos repositórios Git: um repositório flatpak pode conter um ou vários objetos, e cada um marcado com sua versão, permitindo atualizações ou downgrades. Cada sistema flatpak pode ser configurado para acessar um ou diversos repositórios remotos. Se um repositório é declarado em um sistema, torna-se possível acessar o conteúdo do repositório remoto, pesquisando a baixando dele aplicativos e runtimes. Em uma atualização, novas versões de aplicativos e runtimes são baixadas dos remotos relevantes. Como ocorre com o Git, apenas as partes alteradas entre as versões são baixadas, tornando o processo muito eficiente.
O manual do flatpak fornece instruções sobre como construir repositórios: Hosting a Repository.
Runtimes, bibliotecas empacotadas e portais
Runtimes: runtimes (ou ambiente de execução) são o conjunto das dependências básicas usadas pelos aplicativos. Todo aplicativo é criado no contexto de um runtime, que deve ser instalado no sistema host para que o aplicativo funcione adequadamente. O flatpak cuida da instalação do runtime necessário. Vários runtimes, com diferentes versões, podem ser instalados e usados lado a lado. Runtimes são independentes de distribuição e versão, fornecendo uma base estável para que os aplicativos funcionem independentemente das atualizações do sistema operacional.
Bibliotecas empacotadas, (bundled libraries): Se um aplicativo exige dependências não contidas em seu runtime, elas podem ser empacotadas junto com o aplicativo. Dessa forma os desenvolvedores têm flexibilidade na escolha de dependências, permitindo o uso de (a) bibliotecas não disponíveis em tempo de execução; (b) bibliotecas com versões diferentes das disponíveis no sistema; (c) versões corrigidas de bibliotecas.
Portais: portais são um mecanismo usados pelos aplicativos para interagir com o host, a partir de sua sandbox. Eles permitem o acesso a dados, arquivos e serviços sem necessitar de permissões adicionais. São exemplos de recursos acessados por portais: abrir arquivos por meio de uma caixa de diálogo (seletor de arquivos) ou imprimir. Existem kits de ferramentas que oferecem suporte seguro e transparente para portais. Outras informações sobre portais podem ser encontradas em Permissões do Sandbox: Sandbox Permissions.
Flatpak, instalação e uso
Usamos aqui as seguintes convenções: # linhas de comentários $ linhas de código (input) ➡ linhas de saída (output)
Para instalar o flatpak em seu sistema, siga estas etapas:
# antes de instalar, atualize os pacotes do sistema atual $ sudo apt update && upgrade # no debian, ubuntu, etc $ sudo dnf update # no fedora # instale o Flatpak $ sudo apt install flatpak # no debian, ubuntu, etc $ sudo dnf install flatpack # no fedora $ sudo zypper install flatpak # no openSUSE $ sudo pacman -S flatpak # no arch linux $ sudo apt install gnome-software-plugin-flatpak # no debian, ubuntu, etc $ sudo dnf install gnome-software-plugin-flatpak # no fedora # para instalar os aplicativos precisamos adicionar o repositório remoto (flathub) $ sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # para verificar a instalação, podemos ver qual versão foi instalada $ flatpak --version ➡ Flatpak 1.15.12
Para ver o procedimento de instalação para outras distros consulte Flathub Setup.
Se a instalação foi bem sucedida, podemos instalar pacotes flatpak. Instalações de aplicativos podem ser feitas apenas para o usuário (o app fica disponível apenas para aquele usuário) ou no sistema inteiro (o app fica disponível para todos os usuários do sistema). Abrimos o terminal e executamos:
# instalação global $ flatpak install flathub com.jeffser.Alpaca # após um pedido de confirmação a instalação é concluída # para instalar apenas para o usuário (<remote> é o repositório, <name> nome do app) $ flatpak install --user <remote> <name> # se nenhuma mensagem de erro for emitida o aplicativo pode ser executado com $ flatpak run <name>
Para encontrar o nome do aplicativo visitamos o repositório de pacotes no Flathub, onde uma lista de aplicativos será exibida. Digamos, por exemplo, que queremos instalar o Alpaca, um gerenciador de servidores de Inteligências Artificiais. Pesquisamos Alpaca
e encontramos:
- Comando para instalação:
flatpak install flathub com.jeffser.Alpaca
- Comando para executar o app:
flatpak run com.jeffser.Alpaca
Portanto executamos o código:
# instalação global $ flatpak install flathub com.jeffser.Alpaca # para instalar apenas para o usuário logado $ flatpak install --user flathub com.jeffser.Alpaca
Para evitar as perguntas de confirmação, respondendo yes (sim) para todas as perguntas, use o parâmetro -y
:
$ flatpak install flathub com.jeffser.Alpaca -y
É possível, dependendo do sistema, que apenas o primeiro passo da instalação seja necessário e o aplicativo fique integrado ao sistema. Nesse caso basta abrir o menu utilizado e clicar em seu ícone.
Por exemplo, para instalar o WPSOffice, Geany e Zed, cole no terminal:
flatpak install flathub com.wps.Office -y && flatpak install flathub org.geany.Geany -y && flatpak install flathub dev.zed.Zed -y
Desinstalação de pacotes:
Uma vez instalado um aplicativo, ele pode ser desinstalado (removido do sistema) com o seguinte comando:
$ sudo flatpak uninstall <nome do pacote/aplicativo> # por exemplo, para desinstalar o alpaca $ flatpak uninstall com.jeffser.Alpaca -y # podemos usar o alias remove $ flatpak remove <nome do pacote/aplicativo>
Nota: Na desinstalação deve-se usar o mesmo nome com que o aplicativo foi instalado.
Atualizando ou rebaixando a versão de pacotes
O flatpak fornece funcionalidade de atualização de aplicativos instalados através do seguinte comando:
# atualizar $ sudo flatpak update <nome do pacote/aplicativo> # ex.: para atualizar o alpaca $ sudo flatpak update com.jeffser.Alpaca # para atualizar aplicativo instalado para o usuário apenas $ flatpak update --user com.jeffser.Alpaca
Também é possível rebaixar a versão instalada de algum aplicativo. Suponha, por exemplo, que necessitamos de uma versão anterior do navegador Brave. Primeiro pesquisamos no repositório informações sobre o navegador, com remote-info --log flathub
, onde podemos encontrar versões anteriores disponíveis.
# para ver informações sobre o Brave $ flatpak remote-info --log flathub com.brave.Browser ➡ Brave - Fast Internet, AI, Adblock ID: com.brave.Browser Ref: app/com.brave.Browser/x86_64/stable Arch: x86_64 Branch: stable Version: 1.73.101 [truncado] Commit: 852620f9b5998b4cbfd621cf523e4367ba80b517427c810b8166eb48aa9f50db Subject: version update (7d8acf2a) Date: 2024-11-20 17:56:11 +0000 [truncado] # escolhemos a versão update (7d8acf2a) e anotamos o código de commit # fazemos o update para aquele commit $ sudo flatpak update \ --852620f9b5998b4cbfd621cf523e4367ba80b517427c810b8166eb48aa9f50db \ com.brave.Browser
Gerenciando repositórios
Para adicionar um repositório no flatpak usamos:
# adicionar repositório $ sudo flatpak remote-add --if-not-exists [name] [location] # ex: adicionar o repositório do FlatHub repository $ sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # depois de instalado podemos procurar um pacote no repo # procurando o gimp $ flatpak search gimp ➡ Name Description Application ID Version Branch Remotes GIMP User Manual GIMP User Manual org.gimp.GIMP.Manual 2.10 2.10 flathub GNU Image Manip… Create images and... org.gimp.GIMP 3.0.0~rc1 stable fedora,flathub GimpLensfun Lensfun Gimp plugin org.gimp.GIMP.Plugin.Lensfun 0.2.4 2-40 flathub Fourier Fourier GIMP Plugin org.gimp.GIMP.Plugin.Fourier 0.4.5 2-40 flathub [lista truncada] # para instalar o GIMP do repo Flathub $ sudo flatpak install flathub org.gimp.GIMP
Se existirem mais de um repositório adicionados as várias opções disponíveis serão exibidas, como mostrado no exemplo acima. Você pode escolher qual pacote instalar, e de qual repositório. No caso foi instalado o org.gimp.GIMP, obtido no repositório flathub. Se não houver ambiguidade o nome do reposiório pode ser omitido.
Podemos listar quais são os repositórios cadastrados localmente com o flatpak. Para isso usamos remote-list. Para remover um desses repositórios da lista usamos remote-delete:
# listar repos cadastrados (existem apenas 2) $ flatpak remote-list ➡ Name Options fedora system,oci flathub system # podemos remover um repo $ flatpak remote-delete flatub
Se existirem aplicativos ou runtimes instalados à partir desse repositório, surgirá a opção de remover ou não esses apps. Para remover apenas o repositório, deixando os aplicativos inalterados, usamos:
$ flatpak remote-delete --force <nome-repositorio>
Permissões e Sandboxing
Por default os aplicativos Flathub podem ser instalados com permissões mais amplas que as exigida no sistema ou desejadas pelo usuário, para que um número maior de usuários sejam atendidos por essa instalação. Como exemplo, o Brave tem instalação default com –socket=pcsc (entre outras) para acesso por cartão inteligente. Se o usuário não tem um desses cartões ele pode desejar modificar as permissões para melhorar a segurança.
# para mostrar as permissões $ flatpak info --show-permissions com.brave.Browser ➡ [Context] shared=network;ipc; sockets=x11;wayland;pulseaudio;pcsc;cups; devices=all; [truncado] # alterar a permissão $ flatpak override --user --nosocket=pcsc com.brave.Browser # verifica o estado $ flatpak override --user --show com.brave.Browser ➡ [Context] sockets=!pcsc; # para ressetar todas as alterações $ flatpak override --user --reset com.brave.Browser
Existem várias ferramentas GUI disponíveis, como Flatseal, GNOME Settings e KDE Settings, que permitem alterar essas permissões em um ambiente de janelas.
Aplicativos instalados e histórico de operações
Para listar os aplicativos e runtimes instalados com flatpack usamos flatpak list
. Para listar apenas os aplicativos instalados, flatpak list --app
e apenas os ambientes, flatpak list --runtime
.
# lista de aplicativos e runtimes $ flatpak list ➡ Name Application ID Version Bitwarden com.bitwarden.desktop 2024.12.0 Mesa org.freedesktop.Platform.GL.default 21.3.9 Brave com.brave.Browser 1.73.101 Alpaca com.jeffser.Alpaca 2.9.0 ZapZap com.rtosta.zapzap 5.3.9 Sigil com.sigil_ebook.Sigil 2.2.0 Zed dev.zed.Zed v0.165.4 Obsidian md.obsidian.Obsidian 1.7.7 SiYuan org.b3log.siyuan 3.1.15 [a lista está truncada] # lista apenas de aplicativos $ flatpak list --app ➡ Name Application ID Version Bitwarden com.bitwarden.desktop 2024.12.0 Brave com.brave.Browser 1.73.101 [a lista está truncada] # lista apenas de runtimes $ flatpak list --runtime ➡ Name Application ID Version Codecs org.audacityteam.Audacity.Codecs stable Mesa org.freedesktop.Platform.GL.default 21.3.9 GNOME App Platform v. 47 org.gnome.Platform 47 [a lista está truncada]
Além das colunas mostradas ainda temos informações sobre Branch, Origin, Installation, não exibidas.
Para obter um histórico de operações realizadas com flatpak usamos:
$ flatpak history ➡ Time Change Application Branch Installation Remote Dec 13 11:08:56 add remote system fedora Dec 13 11:08:56 add remote system fedora-testing Dec 13 11:10:42 add remote system flathub Dec 13 11:57:21 deploy install org.freedesktop.Platform.GL.default 23.08 system flathub Dec 13 11:57:24 deploy install org.freedesktop.Platform.GL.default 23.08-extra system flathub Dec 13 11:57:24 deploy install org.freedesktop.Platform.Locale 23.08 system flathub [a lista está truncada]
Para renovar e reparar o sistema de referências a repositórios do flatpak, usamos
. A remoção de extensões e runtimes não usados por qualquer um dos aplicativos instalados, usamos
uninstall --unused
.
$ sudo flatpak repair ➡ Working on the system installation at /var/lib/flatpak [175/175] Verifying flathub:runtime/com.bitwarden.desktop.Locale/x86_64/stable… # os aplicativos e runtimes são verificados Checking remotes... # para eliminar $ flatpak uninstall --unused ➡ Nothing unused to uninstall
A reparação de uma instalação do flatpak faz uma verificação geral das referências disponíveis localmente, removendo aquelas que não correspondem a pacotes instalados. Ela também remove as referências a objetos inválidos e aqueles que não estão referenciados por nenhum aplicativo. Finalmente ela enumera as referências instaladas e reinstala aquelas que não estão completas.
Informações sobre pacotes instalados podem ser vistas com:
$ flatpak info com.jeffser.Alpaca ➡ Alpaca - Chat with local AI models ID: com.jeffser.Alpaca Ref: app/com.jeffser.Alpaca/x86_64/stable Arch: x86_64 Branch: stable Version: 2.9.0 License: GPL-3.0-or-later [saída truncada]
Executando e pesquisando
flatpak run <aplicativo>
executa (roda) o <aplicativo>.
Por exemplo, vimos no output de flatpak list
que o nome identificador (id) do navegador Brave é com.brave.Browser
. Portanto podemos rodar o aplicativo usando o comando:
# para executar o aplicativo do Brave $ flatpak run com.brave.Browser ➡ Gtk-Message: 19:18:19.612: Failed to load module "canberra-gtk-module" # possíveis mensagens de erro, como a mostrada acima, são listadas no console # uma lista de aplicativos em execução é exibida com ps $ flatpak ps ➡ Instance PID Application Runtime 3817365666 3283 org.geany.Geany org.freedesktop.Sdk 846534418 16554 com.brave.Browser org.freedesktop.Platform 1876930084 16599 com.brave.Browser org.freedesktop.Platform # para fechar um aplicativo usamos kill $ flatpak kill com.brave.Browser # o Brave (duas instâncias) é fechado
Utilitários GUI
Algumas das funções de gerenciamento de pacotes podem ser executadas através de aplicativos com interface gráfica. Atualmente no repositório Flathub encontramos, por exemplo:
Easy Flatpak: uma loja de aplicativos flatpak, que auxilia na instalação de aplicativos de uma forma amigável, apenas clicando nos botões. Em alguns casos existem receitas para aperfeiçoar algumas instalações, como no caso do Steam, que permite ao usuário escolher o diretório de armazenamento dos jogos.
Flatseal: um utilitário gráfico que permite a visualização e edição das permissões de aplicativos flatpak.
Flatsweep: permite a remoção de arquivos e dependência eventualmente deixados na remoção de um pacote.
Warehouse: fornece uma IU simples para controlar opções complexas do flatpak, sem recorrer à linha de comando. Com ele é possível:
- gerenciar Flatpaks instalados e visualizare propriedades dos pacotes,
- alterar versões de um Flatpak e reverter atualizações indesejadas,
- fixar os runtimes e mascarar Flatpaks (para evitar atualizações),
- filtrar pacotes e classificar dados para tornar as buscas mais eficientes,
- consultar dados atuais do usuário do aplicativo, limpando dados desnecessários,
- adicionas repositórios do Flatpak,
- fazer instantâneos (snapshots) de dados do usuário e aplicativos para backup,
- instalar pacotes de qualquer repositório remoto ou pacotes baixados.
Resumo dos comandos
Uso: flatpak [OPTION…] COMMAND
Opção de ajuda: flatpak -h
ou flatpak --help
exibe a lista de comandos do flatpak.
Comandos internos (Built in): gerencia aplicativos e runtimes† instalados
install | Instala aplicativo ou runtimes† |
update | Atualiza um aplicativo ou runtime† instalados |
uninstall | Desinstala um aplicativo ou runtimes† |
mask | Aplica máscara para excluir atualizações e instalações automáticas |
pin | Trava um runtime† para impedir a remoção automática |
list | Lista aplicativos e/ou runtimes† instalados |
info | Mostra informações sobre aplicativos ou runtimes† instalados |
history | Lista o histórico |
config | Configura o flatpak |
repair | Repara a instalação do flatpak |
create-usb | Coloca aplicativos ou runtimes† em mídia removível |
Busca de aplicativos e runtimes†
run | Executa um aplicativo |
override | Sobreescreve as permissões de um aplicativo |
make-current | Especifica qual a versão padrão a ser executada |
enter | Insire o namespace de um aplicativo em execução |
ps | Lista os aplicativos em execução |
kill | Interrompe a execução de um aplicativo |
Gerencia o acesso a arquivos:
documents | Lista arquivos exportados |
document-export | Concede a um aplicativo acesso a um arquivo específico |
document-unexport | Revoga acesso a um arquivo específico |
document-info | Mostra informações sobre um arquivo específico |
Gerencia permissões dinâmicas
permissions | Lista permissões |
permission-remove | Remove item do armazenamento de permissões |
permission-set | Define permissões |
permission-show | Mostra permissões do aplicativo |
permission-reset | Redefine permissões do aplicativo |
Gerencia repositórios remotos
remotes | Lista todos os repositórios remotos configurados |
remote-add | Adiciona um novo repositório remoto (por URL) |
remote-modify | Modifica propriedades de um repo remoto configurado |
remote-delete | Excluir um repo remoto configurado |
remote-ls | Lista o conteúdo de um repositórioa configurado |
remote-info | Exibe informações sobre aplicativo remoto ou runtime† |
Construção de aplicativos
build-init | Inicializa um diretório para construção |
build | Executa um comando dentro do diretório de construção |
build-finish | Conclui um diretório de construção para exportação |
build-export | Exporta diretório de construção para um repositório |
build-bundle | Cria um arquivo de pacote usando referência a repositório local |
build-import-bundle | Importa um arquivo de pacote |
build-sign | Assina um aplicativo ou runtime† |
build-update-repo | Atualiza o arquivo de resumo de um repositório |
build-commit-from | Cria novo commit com base na referência existente |
repo | Exibe informações sobre um repositório |
Opções do aplicativo:
–version | Imprime informações sobre a versão e termina |
–default-arch | Imprime a arquitetura padrão e termina |
–supported-arches | Imprime as arquiteturas suportadas e termina |
–gl-drivers | Imprime os drivers gl ativos e termina |
–installations | Imprime caminhos para instalações do sistema e termina |
–print-updated-env | Imprime o runtime† atualizado necessário para execução de flatpaks |
–print-system-only | Inclui apenas a instalação do sistema com –print-updated-env |
-v, –verbose | Mostra informações de depuração, -vv para mais detalhes |
–ostree-verbose | Mostra informações de depuração do OSTree |
Nota †: No contexto do flatpak, runtime
, também chamado de platforma, é o ambiente integrado básico de utilitários que permite a execução de um aplicativo flatpak.
Bibliografia
- Okay, Containers, Virtualization and Sandboxes, Meaning.
- Asks Leo Difference between a Sandbox and a Virtual Machine.
- Flatpak, Flatpak’s documentation.
- Phylos.net: DNF4 Gerenciador de Pacotes Linux
- Read The Docs: Changes between DNF and DNF5
- Read The Docs: DNF5 Documentation
- Youtube, Slackjeff: FLATPAK, como funciona?
- Youtube, The Linux Experiment: FLATPAK, Explained