Manjaro – Principais comandos do pacman

    1
    480

    O Manjaro é uma excelente distro que utiliza o gerenciador de pacotes pacman, muito poderoso, com muitos recursos e possui uma mistura de simplicidade. Os pacotes do Arch ou Manjaro são binários, e o formato dos pacotes é .pkg.tar.xz. A função do gerenciador de pacotes pacman é tornar fácil a instalação desses pacotes.

    • Pacman (Package Manager) sincroniza com os repositórios oficiais do Arch.
    • AUR (Arch User Repository), é o repositório da comunidade Arch Linux. É mantido pela comunidade, e é onde os usuários sobem os pacotes que não são mantidos pelo repositório oficial.

    Mirrors (Espelhos) – Uma pequena introdução

    Um espelho (mirror) é um servidor que hospeda uma cópia atualizada dos pacotes de software de uma distribuição Linux, que por sua vez possuem vários repositórios dentro desse espelho. E neles, há repositórios mantidos oficialmente pela distribuição e também respositórios não oficiais, mantidos pela comunidade (AUR). Vale ressaltar que o Manjaro possui seus próprios mirrors.

    Normalmente, existem vários repositórios no espelho, mantendo pacotes de softwares em categorias, como o repositório do Manjaro, core, extra, community e multilib.

    Instalar e procurar pacotes

    Manjaro é uma distro tão simples de usar e aliado ao gerenciador de pacotes pacman torna a distro ideal para iniciantes. O pacman é um gerenciador muito simples em seus comandos e sintaxes, sendo muito prático instalar ou procurar por pacotes. E isso pode ser executado pelo comando pacman e yay. Primeiro vamos procurar por pacotes.
    sudo pacman -Ss descrição-do-pacote

    ou
    yay -Ss descrição-do-pacote

    Exemplo:    $  pacman -Ss flash
    Depois de localizar o pacote, torna-se fácil a instalação.
    sudo pacman -S nome-do-pacote

    ou
    yay -S nome-do-pacote

    Exemplo: $ yay -S google-chrome

    Atenção:
    Ao executar o pacman é necessário o uso do comando sudo. No yay, ou qualquer gerenciador de pacotes AUR, não execute como root ou sudo. Se houver a tentativa de executar o yay com o prefixo sudo, será exibido a mensagem: Please avoid running yay as root/sudo. Refusing to install AUR Packages as root, Aborting.

    Não esqueça das variáveis, pois com o pacman em alguns casos pode ser necessário forçar uma instalação ou pode efetuar uma instalação sem confirmação durante o processo. Usar –force não é comum, no entanto o –noconfirm é indicado, confirmando sempre a instalação.
    sudo pacman -S nome-do-pacote --force --noconfirm

    Também é possível instalar um pacote sem instalar as dependências de um pacote.
    sudo pacman -Sdd nome-do-pacote

    Podemos consultar sobre o pacote instalado. Informações como o tamanho, versão, data da instalação, dependências, etc.
    sudo pacman -Qi nome-do-pacote

    Instalar um pacote local que não é um de um repositório remoto.
    sudo pacman -U /caminho do pacote/pacote.pkg.tar.xz

    Reinstalar todos os pacotes. Utilizado em casos raros e pontuais, ao executar o comando, será feito download de todos os pacotes e reinstalado, e tenha consciência que é um processo demorado (não importando sua conexão de internet).
    sudo pacman -S $(pacman -Qqen)

    Instalando grupos de pacotes

    Um grupo de pacotes é um conjunto de pacotes relacionados, definido pelo empacotador, como por exemplo o KDE, GNOME, XFCE. Há inúmeros grupos de pacotes e não é necessário instalar todos os pacotes que aquele grupo possui. Apenas deixo claro que não há problemas em instalar todos os pacotes que o grupo possui, o pacman nos oferece essa liberdade. Veja o exemplo abaixo:
    sudo pacman -S gnome

    Veja que o grupo gnome possui 53 pacotes por padrão. Para instalar todos pressione ENTER. E se deseja instalar alguns pacotes como no exemplo abaixo:

    Digite uma seleção (padrão=todos): 21-26 41 42 49 6
    Perceba que no exemplo acima será instalado os pacotes de 21 a 26 e os pacotes 41, 42, 49 e 6.

    Também é possivel instalar a maioria dos pacotes e selecionar os que não desejar. Veja o exemplo abaixo:
    Digite uma seleção (padrão=todos): ^2-11 ^40 ^45

    Note que os pacotes de 2 a 11 não serão instalados, assim como o pacote 40 e 45. Então os pacotes 2, 3, 4, 5… até o 11 e também os pacotes 40 e 45 não serão instalados.
    Para visualizar os pacotes que o grupo possui antes mesmo de executar o comando para instalar:
    pacman -Sg gnome

    Será listado todos os pacotes do grupo gnome. Perceba que não é necessário o sudo, porque estamos apenas listando os pacotes, nada será instalado.

    Remover Pacotes

    Remover pacotes com o pacman é tão simples. Porém antes de desinstalar, eventualmente é necessário saber quais pacotes estão instalados no seu sistema.
    sudo pacman -Q

    Agora vamos a parte que interessa e entender como desinstalar com o gerenciador de pacotes pacman. O comando abaixo é para remover o pacote sem remover suas dependências. Pode-se incluir quantos pacotes quiser em um único comando.
    sudo pacman -R nome-do-pacote1 nome-do-pacote2

    Veja um exemplo:
    sudo pacman -R qupzilla flashplugin

    Para remover um pacote e suas dependências de forma segura, sem desinstalar dependências necessárias por outros pacotes instalados em seu sistema.
    sudo pacman -Rs nome-do-pacote

    E se quiser remover os pacotes e todas as suas dependências, incluindo as dependências que outros pacotes necessitam, execute o comando abaixo. Apenas tenha cuidado ao executar esse comando, pois pode remover muitos pacotes necessários.
    sudo pacman -Rsc nome-do-pacote

    E para remover o pacote, suas dependências e arquivos de configuração normalmente gerados pelo pacman, execute o comando abaixo.
    sudo pacman -Rsn nome-do-pacote

    Remover apenas o pacote igorando as dependências. Um comando muito útil, Um exemplo: se tentar remover o evolution e evolution-data-server será desinstalado os demais pacotes no Ambiente GNome: bijiben-3.26.2-1  folks-0.11.4-1  gnome-calendar-3.26.2-1 gnome-maps-3.26.2-1  gnome-todo-3.26.2-1 evolution-data-server-3.26.2.1-1.

    Com isso você pode remover utiizando o comando Rdd, e apenas será desinstalado o pacote evolution e evolution-data-server.
    sudo pacman -Rdd nome-do-pacote

    Um comando muito útil para informar sobre pacotes orfãos no seu sistema, ou seja, pacotes inúteis. Se não houver resultado, quer dizer que não há pacotes orfãos. Caso for exibido pode remover o pacote.
    sudo pacman -Qdt

    Você pode removê-los automaticamente, juntamente com suas dependências, eliminando vários pacotes desnecessários e ocupando um precioso espaço no seu HD. Limpe com o comando abaixo:
    sudo pacman -Rs $(pacman -Qqdt)

    Atualização do Sistema

    O pacman também proporciona uma facilidade para atualizar a distro Manjaro. Conheça melhor os comandos para atualizar o sistema.
    Sincronize a base de dados dos pacotes.
    sudo pacman -Sy

    Inicie uma atualização completa, se houver novas versões disponíveis dos pacotes.
    sudo pacman -Su

    Reforce um sincronismo mesmo se a base de dados estiver atualizada.
    sudo pacman -Syy

    O mesmo pode ser feito em um único comando. Então é possivel sincronizar a base de dados e atualizar o sistema.
    sudo pacman -Syyu

    Espelhos

    O pacman-mirrors verifica cada espelho (mirrors) selecionando o mais veloz e filtrando espelhos desatualizados. O comando abaixo faz uma busca global.
    sudo pacman-mirrors -g

    Este comando também verifica todos os espelhos de modo interativo, permitindo escolher os espelhos que desejar.
    sudo pacman-mirrors -i -c all
    Como pode perceber, é possível filtrar por tempo, país, facilitando criar um espelho personalizado. Também é simples definir o país, sem a necessidade de aguardar a busca completa. Segue o exemplo:
    sudo pacman-mirrors -c United_Kingdom

    Nesse exemplo foi definido apenas o espelho United_Kingdom, porém não foi exibido nenhuma interface gráfica, por não acrescentar -i no comando.
    -i = interactive (interativo)
    -c = country (país)
    -f = fasttrack (espelhos mais rápidos)

    Outro recurso interessante é limitar a quantidade de espelhos, sincronizando os espelhos mais rápidos. Você define a quantidade. No exemplo abaixo será definido 5 espelhos mais rápidos:
    sudo pacman-mirrors -f 5

    É fácil alterar o repositório de stable para testing ou unstable e vice-versa. No exemplo abaixo estamos alterando o repositório stable para o repositório testing. Havendo problema com algum pacote, altere novamente para stable e atualize o sistema. Será feito downgrade de todos os pacotes.
    sudo pacman-mirrors -aB testing

    Limpe o cache e otimize

    Uma limpeza as vezes se faz necessário. No linux não é exceção, mas fica uma advertência: Só execute o comando se tiver certeza que o sistema esta funcionando perfeitamente, pois não será possível fazer downgrade de qualquer pacote após limpar o cache.
    Limpe o cache de pacotes que já estão instalados executando o comando abaixo:
    sudo pacman -Sc

    E para limpar o cache completamente.
    sudo pacman -Scc

    O pacman armazena todas as informações dos pacotes e o comando abaixo melhora a velocidade de acesso a essas informações. Esse comando é recomendado executar como root, após fazer uma limpeza no cache.
    # pacman-optimize && sync

    Downgrade de pacotes

    Se você não executou a limpeza de cache explicado logo acima, então é possível fazer o downgrade de um pacote que não esteja funcionando corretamente. Primeiramente acesse o diretório de cache pacman.
    cd /var/cache/pacman/pkg

    Agora precisamos listar se o pacote da versão anterior esta nesse diretório, caso não tenha apagado. Ao fazer isso, localize o pacote que apresentou falhas. Utilize o comando ls para listar.
    ls | more

    Como você esta no diretório apenas execute o comando instalando a versão que esta funcionando perefeitamente.
    sudo pacman -U nome-do-pacote.pkg.tar.xz

    Ignore a atualização de pacotes

    Muito útil quando fazemos downgrade de pacotes e não queremos mais atualizar, até que o problema esteja solucionado. Ou quando necessita apenas daquela versão do pacote, não podendo atualizar por motivos de força maior. Agora vamos por a mão na massa. Acesse o diretório e edite o arquivo com nano, vim, gedit ou qualquer editor de texto de sua preferência.
    sudo nano /etc/pacman.conf

    Localize a linhas abaixo:
    # Pacman won’t upgrade packages listed in IgnorePkg and members of IgnoreGroup
    #IgnorePkg =
    #IgnoreGroup =

    Descomente a linha IgorePkg ou IgoreGroup e adicione o grupo ou pacote que deseja ignorar o upgrade do pacote.
    Se você não sabe, descomentar é o ato e remover o # fazendo que a função esteja disponível. Qualquer linha comentada (#), significa que esta desativado. No exemplo abaixo, será configurado de forma que o firefox e vlc não atualize.

    # Pacman won’t upgrade packages listed in IgnorePkg and members of IgnoreGroup
    IgnorePkg = firefox vlc
    #IgnoreGroup =

    Se usou o editor nano apenas salve pressionando Ctrl + O (enter) seguido de Ctrl + X para sair.
    Viu a força do Pacman? Agora é só aproveitar. Na wiki do Arch Linux e do Manjaro Linux, possui muito mais conteúdo.
    Para saber mais, consulte a fonte oficial. E pode ter certeza que tem muito mais.

    Referências: Arch-Pacman Wiki | Manjaro-Pacman | Manjaro-Wiki-Maintaining