Como usar AppImages no Linux
O AppImages permite que os desenvolvedores do Linux empacotam seus aplicativos em um único arquivo que é instalado em qualquer distribuição do Linux. Isso simplifica muito as coisas. Veja como usá-los e integrá-los à sua área de trabalho.
Instalando software no Linux
A instalação do software deve ser simples e conveniente. Quão simples e conveniente isso se torna depende muito do gerenciador de pacotes da sua distribuição. Os gerenciadores de pacotes são aplicativos de software que permitem baixar e instalar outros programas do Linux.
Distribuições Linux derivadas tendem a usar os gerenciadores de pacotes de sua distribuição pai. Por exemplo, muitas variantes e derivados do Debian usam apt
, as distribuições RedHat e Fedora usam dnf
, e a família de distribuições Arch usa pacman
. Então, felizmente, não há tantos gerenciadores de pacotes quanto há distribuições.
No entanto, do ponto de vista de um desenvolvedor, suportar todos os diferentes formatos de pacote significa envolver seu aplicativo em um arquivo DEB da família Debian, um RPM da família RedHat e assim por diante. Isso é um monte de sobrecarga extra.
Isso também significa que se nem os desenvolvedores nem ninguém criou um pacote de instalação para sua distribuição, você não poderá instalar este software. Pelo menos não parentes.
Você pode baixar um pacote de uma distribuição diferente em seu computador, mas esse não é um método seguro e não é garantido que funcione. Se você sabe o que está fazendo, pode baixar o código-fonte e criar o aplicativo em seu computador, mas está longe de ser fácil e conveniente.
Projetos como Snap e Flatpak foram desenvolvidos para resolver o problema de empacotamento de aplicativos por distribuição. Se você puder empacotar um pacote em um único arquivo para que ele venha empacotado com as bibliotecas apropriadas e quaisquer outras dependências que ele tenha para que não exija (praticamente) o sistema operacional do host, ele poderá ser executado em qualquer distribuição.
O projeto AppImage é apenas uma iniciativa desse tipo. AppImage é o nome do projeto e AppImages é o nome dos aplicativos empacotados.
Como as imagens do aplicativo funcionam
Os arquivos AppImage não são instalados no sentido tradicional. Os arquivos de componentes que compõem um pacote de aplicativos estão contidos em um único arquivo. Eles não são descompactados e são armazenados em diferentes diretórios do sistema de arquivos.
O arquivo executável do aplicativo instalado pelo seu gerenciador de pacotes será copiado para o diretório “/bin” apropriado, suas man
páginas serão armazenadas no diretório “/usr/share/man”, etc. Esta etapa de descompactação e cópia não ocorre com AppImages.
Dentro do AppImage existe um sistema de arquivos, geralmente o sistema de arquivos squashFS . Os arquivos necessários para executar o aplicativo são armazenados dentro desse sistema de arquivos, não no sistema de arquivos principal de sua instalação do Linux. Quando o AppImage é executado, ele executa um de seus programas auxiliares internos, que monta o sistema de arquivos squashFS em “/tmp/mount” para que seja acessível a partir do sistema de arquivos principal. Em seguida, ele inicia o próprio aplicativo.
É por isso que iniciar aplicativos de Snaps, Flatpaks e AppImages é um pouco mais lento do que iniciar um aplicativo normal. Para que tudo isso funcione, algo chamado ” sistema de arquivos de espaço do usuário” deve ser configurado no sistema de arquivos do host . Este é o único host de AppImages de dependência. O FUSE geralmente é pré-instalado em distribuições Linux modernas.
Usando o arquivo AppImage
A primeira coisa que você precisa fazer é baixar o AppImage para o aplicativo que você deseja. Eles não estarão no repositório da sua distribuição. Normalmente, você os encontrará no site do próprio aplicativo.
Vamos baixar e usar o FreeCAD, um pacote CAD 3D de código aberto. Vá para a página de download do FreeCAD e clique no botão “AppImage de 64 bits”.
Depois de baixado, procure o arquivo na janela do terminal. Se você não alterou as configurações padrão em seu navegador da Web, provavelmente estará no diretório de Downloads. Precisamos tornar o AppImage executável. Usaremos chmod
o comando para adicionar a -x
permissão (executável).
chmod +x FreeCAD-0.20.0-Linux-x86_64.AppImage
Baixamos nosso arquivo e o tornamos executável. Para executá-lo, podemos chamá-lo pelo nome.
./FreeCAD-0.20.0-Linux-x86_64.AppImage
Isso é tudo o que precisávamos fazer no Fedora e no Manjaro. No Ubuntu 22.04 tivemos que instalar o arquivo de biblioteca. O FUSE já está instalado no Ubuntu 22.04, mas esta é uma versão posterior à maioria dos AppImages. A instalação do arquivo de biblioteca não afeta a versão instalada do FUSE.
sudo apt install libfuse2
Isso corrigiu o problema imediatamente e conseguimos executar o AppImages no Ubuntu Jammy Jellyfish 22.04 sem problemas.
Tudo isso é ótimo. Mas e se você quiser pegar seu bolo e comê-lo? Imagine se houvesse uma maneira de usar AppImages que não exigisse iniciá-los de uma janela de terminal. Seria muito mais conveniente poder executar aplicativos AppImage como aplicativos nativos normais.
Há uma contradição óbvia aqui – o ponto principal do AppImages é que eles não são instalados por si mesmos no sentido tradicional, inclusive não sendo integrados à sua área de trabalho. Mas, no entanto, é possível com AppImageLauncher.
AppImageLauncher
AppImageLauncher mantém o controle do diretório atribuído. Ele verifica o diretório procurando por arquivos AppImage. Para cada um que encontrar, ele extrai o ícone do aplicativo (se houver) e integra o AppImage na área de trabalho como um aplicativo normal.
Isso é repetido para cada novo AppImage adicionado ao diretório. Quando detecta que o AppImage foi removido, ele remove a integração. Assim, simplesmente arrastando e soltando os arquivos AppImage baixados em um diretório monitorado, eles se integrarão ao seu ambiente de desktop.
Se você estiver usando o Ubuntu ou o Fedora, vá para a página de download do AppImageLauncher e clique no link Assets na seção Build Release (Latest).
Clique no link “appimagelauncher-XXX.x86_64.rpm” para o Fedora ou no arquivo “appimagelauncher_XXX.bionic_arm64.deb” para o Ubuntu. “XXX” representa o número da versão do software.
Observe que existem links para AppImageLauncherLite e AppImageLauncher. Use os links do AppImageLauncher.
Navegue até o arquivo baixado e clique duas vezes nele para iniciar a instalação. No GNOME, isso iniciará o aplicativo de software.
No Manjaro, você pode instalar o AppImageLauncher com este comando:
sudo pacman -S appimagelauncher
Você pode iniciar o AppImageLauncher pressionando a tecla “Super”. Na maioria dos teclados, está localizado entre as teclas esquerdas “Ctrl” e “Alt”. Digite “appim” na barra de pesquisa.
O ícone AppImageLauncher aparecerá. Clique nele para iniciar o aplicativo.
Resta configurar um pouco. Precisamos informar ao AppImageLauncher qual diretório queremos monitorar. Clique no ícone “pasta” e navegue até o diretório onde você costuma armazenar suas AppImages. Selecionamos nosso diretório “Downloads”. Você pode selecionar um subdiretório, se desejar, como “/Downloads/apps”.
Se você quiser que o AppImageLauncher solicite que você mova AppImages encontrados em outros diretórios para um diretório monitorado, certifique-se de que a caixa de seleção “Perguntar se desejo mover arquivos AppImage para o diretório do meu aplicativo” esteja marcada. Mas se o AppImageLauncher observar apenas um diretório, como ele encontrará o AppImage em qualquer outro lugar?
A resposta a esta pergunta está na guia “appimagelauncherd”. Clique na guia “appimagelauncherd” e você verá que o AppImage pode rastrear mais de um diretório.
Clique no ícone verde de adição para adicionar mais diretórios. Verifique se a caixa de seleção Auto-Integration Daemon Autostart está marcada. Clique no botão “OK” quando tiver feito sua escolha.
Aguarde alguns minutos, pressione a tecla Super e digite a primeira parte do nome do AppImage que está no diretório monitorado. No nosso caso, temos apenas um.
Depois de digitar “grátis”, você verá o ícone do FreeCAD. Ao clicar nele, o aplicativo será iniciado. Se o arquivo AppImage não contém um ícone, o ícone de engrenagem genérico é usado, como é o caso do FreeCAD.
Para testes adicionais, carregamos o arquivo AppImage para o aplicativo Subsurface . Esperamos cerca de 30 segundos para ter certeza de que foi detectado e integrado, depois pressionamos a tecla “Super”, digitamos “sub” e o ícone do aplicativo apareceu. Desta vez, o ícone original do aplicativo foi encontrado e usado.
Clicar no ícone inicia o aplicativo. Nem precisamos usar chmod
para tornar o AppImage executável.
Outro toque legal é que clicar com o botão direito do mouse no ícone permite remover o AppImage diretamente do menu de contexto.
Há também uma opção para fixar um ícone no iniciador, o que torna o uso do AppImage tão conveniente quanto usar seus próprios aplicativos.
AppImages em ascensão
Em nossas máquinas de teste, os aplicativos iniciados a partir do AppImages carregaram um pouco mais rápido que os aplicativos Flatpak e muito mais rápido que os aplicativos Snap. Ao usar AppImages, você não precisa configurar uma estrutura básica, portanto – além do espaço necessário para os próprios aplicativos – o uso de AppImages ocupa zero espaço no disco rígido.
O AppImageLauncher opcional adiciona um toque de sofisticação, mas você pode usar o AppImages sem ele.
Mais e mais aplicativos estão oferecendo AppImages. Se você estiver tentando instalar algo que não está nos repositórios de sua distribuição, visite o site do aplicativo. Eles podem muito bem ter um AppImage.
Deixe um comentário