Appimage
AppImage, anteriormente conhecido como klik e PortableLinuxApps, é um sistema de gerenciamento e formato de pacote para distribuição de aplicativos portáteis no Linux sem a necessidade de permissões administrativas para instalar. Wikipédia
Seu primeiro programa Linux em .appimage
Nessa matéria irei passar o básico para empacotar o Deepin-terminal em .appimage.
Empacotar um APP em .appimage depende de conhecimento avançado de Linux e estudo da documentação do Appimage que é onde você ira buscar ajuda para outros programas.
Faça o download appimage-resources que iremos usar para criar o chroot usado na instalação do Deepin-terminal e todas as suas dependências isolado do seu sistema operacional, são esses pacotes da instalação que farão parte do seu .appimage. Abra o terminal.
git clone https://github.com/boolean-world/appimage-resources
Entre no diterório.
cd appimage-resources
Execute o setup do chroot
sudo ./tempenv.sh setup
Inicie o chroot.
sudo ./tempenv.sh start
Instale o deepin-terminal usando o comando para a sua distribuição Linux.
Para Arch Linux
pacman -S deepin-terminal
Para Debian e Ubuntu
apt install deepin-terminal
Para Fedora
dnf install deepin-terminal
Para openSUSE
zypper install deepin-terminal
Saia do chroot.
exit
Volte para a sua home.
cd
Crie o diretório de criação do seu .appimage.
mkdir ~/dde-terminal.AppDir
Precisamos copiar os pacotes da instalação do deepin-terminal criados pelo chroot em
~/appimage-resources/tempenv/files/
Copie com o comando.
sudo cp -r ~/appimage-resources/tempenv/files/* ~/dde-terminal.AppDir
Já temos a estrutura e os pacotes do deepin-terminal para gerar o .appimage
Variáveis de ambiente
Crie o arquivo para as variáveis de ambiente ( Outro tema que você deve estudar.
sudo touch ~/dde-terminal.AppDir/AppRun
Abra o AppRun para edição.
sudo nano ~/dde-terminal.AppDir/AppRun
Cole as linhas abaixo.
#!/bin/sh
SELF_DIR="$(dirname "$(readlink -f "$0")")"
LIBS_PATH="$SELF_DIR/usr/lib:$SELF_DIR/usr/lib/x86_64-linux-gnu/:"
if [ -z "$LD_LIBRARY_PATH" ]; then
LD_LIBRARY_PATH="$LIBS_PATH"
else
LD_LIBRARY_PATH="$LIBS_PATH:$LD_LIBRARY_PATH"
fi
export LD_LIBRARY_PATH
exec "$SELF_DIR/usr/bin/deepin-terminal"
Ficando como na imagem.
Salve teclando CTRL + x tecle s e tecle Enter para fechar o Nano.
Torne o arquivo executável.
sudo chmod +x ~/dde-terminal.AppDir/AppRun
Lançador
Crie o lançados .desktop.
sudo touch ~/dde-terminal.AppDir/deepin-terminal.desktop
Abra o deepin-terminal.desktop para edição.
sudo nano ~/dde-terminal.AppDir/deepin-terminal.desktop
Cole as linhas abaixo.
[Desktop Entry]
Categories=System;
Comment=Use the command line
Exec=/usr/bin/deepin-terminal
GenericName=Terminal
Icon=deepin-terminal
Keywords=shell;prompt;command;commandline;
Name=Deepin Terminal
StartupNotify=false
Type=Application
X-Deepin-Vendor=deepins
Ficando como na imagem.
Salve teclando CTRL + x tecle s e tecle Enter para fechar o Nano.
Ícone
O ícone é o único problema, ele deve ser no tamanho de 256x256, como o do deepin-terminal é menos, devemos alterar ele.
Navegue até
Abra a imagem com o Gimp vá emImagem > Redimencionar imagem e altere para 256x256.
Após redimencionar vá em Arquivo > Exportar como altere o nome e formato para deepin-terminal.png e exporte para a sua home.
Copie o ícone 256x256 para a pasta do seu appimage.
sudo cp ~/deepin-terminal.png ~/dde-terminal.AppDir
Pronto, já temos tudo para gerar o .appimage.
Gerar o .appimage
Faça o download do appimagetool.
wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
Torne o .appimage executável.
chmod +x appimagetool-x86_64.AppImage
Gere o seu primeiro .appimage.
sudo ./appimagetool-x86_64.AppImage ~/dde-terminal.AppDir
Torne o seu .appimage executável.
chmod +x Deepin_Terminal-x86_64.AppImage
Execute o seu primeiro .appimage
./Deepin_Terminal-x86_64.AppImage
Ai está.