Seja o ano da área de trabalho do Linux está aqui ou não, a troca de distritos ainda é uma dor. Se você planeja fazer uma mudança para outra distribuição do Linux, aqui está como eu instalo todos os meus aplicativos antigos que eu estava usando no anterior.
É claro que você pode apenas ocular o lançador de aplicativos e escrever uma lista de aplicativos que deseja instalar e, em seguida, pesquise e instale manualmente todos eles em seu novo sistema. Eu já fiz isso antes, e é um trabalho tedioso. Você também não verá a maioria das ferramentas de linha de comando dessa maneira. A instalação do lote economizará muito tempo e, felizmente, os shells de comando Linux foram construídos para essas tarefas que economizam tempo.
Não tema o terminal
Se você estiver trocando de distritos do Linux e deseja automatizar ou semi-automatizados a instalação de aplicativos que você gosta, precisará se sentir confortável com o terminal. Que eu saiba, nenhum dos gerentes de software gráfico tem um meio de aplicativos de instalação de lote.
Se você ainda não o fez, considere revisar as diretrizes do Terminal Linux para iniciantes. Para este guia específico, você definitivamente deseja estar familiarizado com a instalação de software no terminal Linux. Você também pode se beneficiar de verificar alguns scripts iniciantes.
Antes de mudar, execute esses comandos
Antes de excluir minha distro Linux atual, preciso pegar uma lista de pacotes instalados manualmente. Isso incluirá todos os softwares instalados no meu sistema que não a vieram por padrão. Mais tarde, vou instalar tudo no meu novo sistema usando essa lista.
Obviamente, este não é um método infalível. Distros diferentes – e até versões diferentes da mesma distro – podem ter software diferente instalado por padrão. É possível que alguns aplicativos pré -instalados na minha distração atual não estejam presentes no novo. A grande maioria deve ser coberta.
Se minha distro atual for Debian, Ubuntu ou um de seus derivados, posso usar o comando APT-Mark para listar todos os pacotes que me instalei no repositório de distro.
apt-mark showmanual
Eu também tenho vários FlatPaks instalados que eu quero usar, então executei este comando FLATPAK, que mostra apenas a coluna Nome do aplicativo do comando da lista, e os tubos no comando da cabeça para cortar o cabeçalho da coluna:
flatpak list --app --columns=application | head -n-1
Se você possui pacotes de snap que deseja instalar o lote, o melhor método que estou ciente para obter todos os nomes deles é realmente listar os diretórios neste local usando o comando ls:
ls /snap/bin
Não é muito elegante, e pode haver alguns nomes de pastas que não são nomes de software. Para confirmar, você pode compará -lo com a saída deste comando:
snap list
Outros gerentes de pacotes específicos para distro
Nos sistemas Fedora e Arch, você pode usar esses comandos para ver todos os pacotes instalados:
dnf repoquery --userinstalled #Fedora
pacman -Qe #Arch
Você notará que a saída mostra números de versão junto com nomes de pacotes. Se a distro para a qual você está se movendo, poderá ter os mesmos pacotes com diferentes números de versão, mesmo que use o mesmo gerenciador de pacotes.
Para imprimir a lista com esses números de versão despojados usando o comando AWK no Fedora, você pode executar isso:
rpm --query --all --info | awk --field-separator ': ' '/^Name/ {print $2}'
Ou no Arch Linux, você pode fazer o mesmo com um comando de tubulação mais simples:
pacman -Qe | awk '{print $1}'
Salve a saída em algum lugar seguro
Agora eu preciso copiar e colar ou, melhor ainda, colocar a saída desses comandos diretamente em arquivos individuais. Por exemplo, fiz um arquivo chamado my-packages.txt com a saída no meu dispositivo Ubuntu usando este comando:
apt-mark showmanual > my-packages.txt
O> redirecionamento salva a saída para o arquivo. Se você estiver usando o fedora ou o arco, você pode simplesmente abordar isso “> my-packages.txt” redirecionar exatamente da mesma maneira.
Também vou fazer o mesmo para minhas aplicações Flatpak:
flatpak list --app --columns=application > my-flatpaks.txt
Independentemente da distro, você pode confirmar rapidamente que o redirecionamento foi bem -sucedido com o comando CAT:
cat my-packages.txt
cat my-flatpaks.txt
EU altamente Recomenda a poda de suas listas todos os nomes de pacotes que você não tem certeza de que deseja trazer para a nova máquina. A primeira vez que tentei isso, não me incomodei em podar e acabei com problemas gráficos estranhos.
Com todas as minhas listas de aplicativos salvas, é hora de transferi -las para uma unidade de polegar ou para a nuvem. Talvez o método mais eficiente seja fazer backup do seu dispositivo Linux, quando você restaurar seus arquivos do backup, encontre suas listas de pacotes lá.
Execute esses comandos e espere
Agora é hora de realmente fazer a instalação do lote. No meu novo computador Ubuntu, onde copiei minha lista de pacotes podada, tentei primeiro executar um comando simples de instalação apt com uma variável. Pode funcionar para você se você tiver sorte.
sudo apt install $(cat my-packages.txt)
No entanto, ele lançou uma série de erros para mim e não conseguiu instalar nenhum pacote apenas porque o apt não conseguiu identificar alguns dos nomes dos pacotes. Se você também se deparar com isso, este é o próximo melhor comando que estou ciente de fazer o trabalho:
for i in $(cat pkglist); do sudo apt-get install $i; done
Esta é uma festa para o loop que percorre toda a lista e tenta instalar cada uma. Se você está no Fedora ou Arch, basta digitar DNF Instale ou Pacman -s no lugar de “APT Install”.
Isso demorou um pouco para mim porque não fiz muita poda. Além disso, esteja ciente de que ocasionalmente solicita que você confirme que deseja instalar o software. Se você deseja pular esses avisos e instalar tudo o que não faz perguntas, execute esta versão ajustada do mesmo loop, com um sinalizador -y no comando apt que responderá automaticamente “sim” a todas as solicitações de confirmação.
for i in $(cat my-packages.txt); do sudo apt install $ -y; done
Depois que o script principal do gerenciador de pacotes foi concluído, chegou a hora dos meus Flatpaks. Eu tive que instalar o suporte Flatpak no Ubuntu e depois ativar o repositório de Flathub:
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Consegui instalar meus Flatpaks usando o comando Bash mais simples:
flatpak install $(cat my-flatpaks.txt)
Se não tivesse funcionado, eu simplesmente teria trabalhado no loop for.
Preste atenção a erros
Certifique -se de revisar toda a saída dos comandos de instalação que você executa. É possível que você verá mensagens de erro para pacotes específicos que você instalou. Se for esse o caso, tente instalá -los individualmente para descobrir qual é o problema.
Espere ter vários problemas se a distro que você estiver pulando para usar um gerente de pacotes ou repositórios diferentes do que o que você está mudando. Os nomes dos pacotes geralmente são um pouco diferentes entre os repositórios, e o gerenciador de pacotes pode não ser capaz de resolver essas solicitações de instalação. Eles também podem vir de repositórios especiais que você precisará encontrar em outros lugares.
Um tipo comum de software Linux que não mencionei aqui é o Appimages. Adoro usar o Appimages porque eles podem ser transportados entre dispositivos e, em uma operação de distração, sua portabilidade economizará algum tempo.