Este repositório cria e distribui o Appimage of Bottles não oficial.
Isenção de responsabilidade
Motivação
Método de construção
Construa garrafas usando Conty
Por que Conty?
Por que Conty em um AppImage?
Download
Métodos alternativos anteriores
Solução de problemas
Créditos
Instale e atualize-o com facilidade
O pacote oficial do Bottles está disponível apenas como Flatpak.
Todos os métodos de construção são baseados no pacote AUR não oficial, em https://aur.archlinux.org/packages/bottles
Qualquer reclamação se deve apenas a esse fechamento mental!
Como empacotador, só posso seguir o que os desenvolvedores originais ou não oficiais me deram.
Desenvolvedores e empacotadores são duas categorias completamente opostas:
o desenvolvedor cria o programa
o empacotador empacota e distribui (como deb, rpm, flatpak, snap, appimage...) para a plataforma de competência.
O desenvolvedor certamente tem interesse em ver sua aplicação funcionar em qualquer lugar, então se um pacote funciona ou não em uma plataforma, é responsabilidade do empacotador torná-lo compatível.
O maior obstáculo no projeto Bottles são alguns colaboradores que, para apoiar o Flatpak como único formato de embalagem, dão um NÃO firme a cada pedido ou proposta de utilização de um formato de embalagem alternativo. Ter conhecido algumas dessas pessoas arrogantes serviu de incentivo para continuar fazendo o contrário do que diziam.
Agradeço ao desenvolvedor do Bottles, @mirkobrombin, por me ajudar a construir o AppImage depois de muitas tentativas, me contando dicas e truques. Grazie Mirko!
Tentei muitas vezes permitir que usuários que não são Flatpak usassem o Bottles de uma forma alternativa, e não sem dificuldade.
Neste momento, o único método que funciona com certeza é via Conty.
Atualmente, o AppImage que produzi contém a seguinte estrutura:
|---- AppRun |---- com.usebottles.bottles.desktop |---- com.usebottles.bottles.svg |---- conty.sh
O AppRun é o script principal do AppImage
O arquivo .desktop do Bottles
O ícone das garrafas
O contêiner Arch Linux chamado "conty.sh", contém Bottles, WINE e drivers gráficos
Os pontos 1, 2 e 3 são os elementos essenciais de qualquer AppImage.
O script "conty.sh" (4) é o grande entre os elementos deste AppImage.
É para isso que serve cada arquivo do meu fluxo de trabalho:
create-arch-bootstrap.sh cria um chroot do Arch Linux, onde o Bottles é instalado a partir do AUR. Este é o primeiro script a ser usado (é necessário "root");
create-conty.sh é o segundo script usado neste processo, ele converte o chroot do Arch Linux criado por "create-arch-bootstrap.sh" em um grande script chamado "conty.sh", que inclui "conty-start.sh ";
conty-start.sh é o script responsável pelos processos de inicialização da inicialização para fazer o Conty funcionar. Inclui uma função que detecta a versão dos drivers Nvidia necessários, se forem necessários, o script baixa e instala-os em ~/.local/share/Conty. Também é responsável pela integração total do Conty com o sistema host, utilizando "bubblewrap;
utils_dwarfs.tar.gz contém "dwarfs", um conjunto de ferramentas semelhantes ao squashfs para compactar sistemas de arquivos, e é necessário para compactar "conty.sh" tanto quanto possível;
Bottles-conty-builder.sh é um script que escrevi para colocar "conty.sh" próximo ao AppRun, o arquivo .desktop e o ícone para converter tudo em um AppImage. Ele deve ser usado em ações do github, mas pode ser executado localmente para criar o AppImage usando uma versão de teste de "conty.sh" do meu fork do Conty.
Os arquivos 1, 2, 3 e 4 vêm do meu fork de https://github.com/Kron4ek/Conty
Os arquivos 1, 2 e 3 são uma modificação dos originais para torná-los menores e com apenas o necessário para fazer o Bottles funcionar.
Para saber mais sobre o “Conty”, baixar builds mais completas ou saber mais sobre como criar a sua própria, acesse o repositório oficial do projeto:
Conty é um contêiner portátil do Arch Linux com recursos próprios.
É a única solução que instala sua própria cópia dos drivers da Nvidia, caso não esteja disponível no próprio container (veja a imagem abaixo).
Os drivers são instalados no diretório ~/.local/share/Conty e podem ocupar até 700 MB de espaço.
Considerando que o Bottles, na primeira inicialização, baixando as bibliotecas necessárias e criando perfis para o WINE, atinge cerca de 1,4 GB de espaço em ~/.local/share/bottles, eu diria que o tamanho é mais que aceitável.
É um pouco como instalar um tempo de execução Flatpak. Mas apenas um. O restante dos arquivos são armazenados no próprio Conty.
Envolver Conty em um AppImage permite que ele seja isolado (via sandbox bubblewrap) usando meu gerenciador de pacotes "AM".
Este AppImage é de nova geração (Type3 AppImage), então você não precisa libfuse2
instalado em seu sistema para usá-lo.
Você pode baixar o AppImage em https://github.com/ivan-hc/Bottles-appimage/releases/tag/continuous
A escassez de recursos disponíveis foi o que me levou a proceder por tentativa e erro, mais ou menos eficaz, dentro dos limites das minhas possibilidades.
O uso do Conty é apenas o mais recente de uma longa série.
Scripts de construção antigos estão disponíveis nos diretórios deste repositório:
"legacy" contém scripts experimentais para construir o AppImage em cima do JuNest, mas falta aceleração de hardware, veja ivan-hc/ArchImage#20
"híbrido" foi o que funcionou graças a uma mistura entre meus dois projetos AppImaGen e ArchImage, uma mistura de pacotes Arch Linux e Debian. Funcionou apenas para distros mais recentes e até mudanças mais recentes em um pacote essencial do Arch Linux (python) que não era bom para manter esse método. Ainda é possível baixar o único release disponível deste método, em https://github.com/ivan-hc/Bottles-appimage/releases/tag/51.11-2
Dado o histórico "conturbado" deste repositório, não sei se Conty é a solução definitiva para meu fluxo de trabalho. Tudo depende dos pacotes disponibilizados para mim por desenvolvedores upstream ou terceiros.
Na primeira inicialização, se necessário, serão baixados os drivers da sua placa de vídeo, via Conty (veja imagem acima). Isso pode levar vários segundos ou até minutos. Este comportamento só será percebido se, ao iniciá-lo pela primeira vez, você iniciar o Bottles a partir do terminal em vez de usar o inicializador.
bottles-cli
Crie um link simbólico " bottles-cli
" para esta Appimage e adicione-o a $PATH, para que quando você adicionar um programa à área de trabalho você possa iniciá-lo a partir do menu com o ícone relacionado. Este recurso já está disponível se você instalar "garrafas" usando "AM" e "AppMan".
@mirkobrombin por toda paciência e disponibilidade demonstrada comigo
Conty https://github.com/Kron4ek/Conty
"AM"/"AppMan" é um conjunto de scripts e módulos para instalação, atualização e gerenciamento de pacotes AppImage e outros formatos portáteis, da mesma forma que o APT gerencia pacotes DEBs, DNF os RPMs, e assim por diante... usando um grande banco de dados de scripts Shell inspirados no Arch User Repository, cada um dedicado a um aplicativo ou conjunto de aplicativos.
O mecanismo de "AM"/"AppMan" é o script "APP-MANAGER" que, dependendo de como você o instala ou renomeia, permite instalar aplicativos em todo o sistema (para um único administrador do sistema) ou localmente (para cada usuário ).
"AM"/"AppMan" pretende ser o gerenciador de pacotes padrão para todos os pacotes AppImage, dando-lhes um lugar para ficar.
Você pode consultar a lista completa de aplicativos gerenciados em portable-linux-apps.github.io/apps .
Instale "SOU" | Veja todos os aplicativos disponíveis | Apoie-me em ko-fi.com | Apoie-me no PayPal.me |
---|