Se eu instalasse o mesmo aplicativo em um piscar de olhos e usando o APT, como poderia chamar cada um separadamente e como saberia qual deles estava sendo executado?
Ainda não estou totalmente convencido de que o snap seja melhor para o usuário final e quero comparar o desempenho de alguns pacotes.
Chame cada um separadamente
Você pode iniciar uma versão específica de um aplicativo fornecendo o nome completo do caminho do executável. Firefox, por exemplo, instalado usando o APT será iniciado por
/usr/bin/firefox
. Os executáveis dos aplicativos snap estão abaixo ,/snap/bin/
então/snap/bin/firefox
iniciará a versão snap.A digitação
firefox
iniciará a versão APT, porque/usr/bin
está listada mais cedo no caminho de pesquisa do que/snap/bin
em uma instalação padrão do Ubuntu. O PATH padrão é:Quando você simplesmente digita
firefox
, o sistema pesquisa cada um dos diretórios consecutivos (pastas) até que um executável com o nomefirefox
seja encontrado. Se a versão APT estiver instalada, ela encontrará o executável/usr/bin
antes de pesquisar/snap/bin
, então a pesquisa será interrompida e esse executável será iniciado.Você pode saber qual executável será iniciado com o comando
which
.Você pode aprender quais executáveis você instalou com o comando
whereis
:Aqui, tanto o APT quanto a versão snap do firefox são instalados.
Saiba qual está em execução
Processos em execução
O comando
ps ax
lista todos os processos em execução. Desta forma:irá listar todos os processos com o nome "firefox". A saída inclui o nome do caminho completo do executável.
Criador de uma janela específica
Também é possível identificar o criador de uma janela específica, para saber se a janela aberta é do APT ou da versão snap. No entanto, isso é bastante complicado e nem sempre confiável. Veja as perguntas do Stackexchange sobre Unix e Linux Qual processo criou esta janela X11? e Qual processo criou esta janela sem PID associado? .
Exemplos usando gnome-calculator, que muitas pessoas têm nos formatos deb e snap:
Como chamar cada um separadamente: Vamos encontrar caminhos completos.
Como determinar qual deles está em execução. Neste exemplo, AMBOS estão em execução. A diferença é facilmente perceptível.