Instalando programas facilmente no Manjaro

Um amigo meu no Facebook começou a usar o Manjaro recentemente e me perguntou como faz pra instalar programas via Terminal usando o pamac, pois achou meio confuso inicialmente usar o pacman.
Então eu montei uma máquina virtual e expliquei tudo usando vários Screenshots. Vendo como ficou toda a explicação, decidi replicar tudo o que disse aqui.

Com isto, vou mostrar que é tão fácil ou até mais fácil gerenciar pacotes via Terminal quanto um Debian/Ubuntu ou um Red Hat/Fedora.

Então primeiramente, se tiver com dúvidas é só digitar -h ou --help

Captura%20de%20Tela_selecionar%20%C3%A1rea_20190522214313

Neste exemplo, mostra que cada opção tem seu help. Então se quiser saber pra que serve cada opção, basta digitar o mesmo com um -h ou --help na frente

Repare que tem a opção -a que é pra checar tambem no AUR
O update e o upgrade são a mesma coisa, então você usa o que achar melhor

Procurar por pacotes, se quiser procurar também no aur, basta usar o parãmetro -a:

A opção info é o mesmo que o apt-cache show PACOTE. Se quiser verificar informações do pacote que está no AUR, pode especificar o -a

O list é bem interessante. Este não usa parâmetro -a, o que deixa a entender que é algo recursivo

O install é bem interessante, porém, este também não usa o parâmetro -a. Mas não é recursivo, serve para instalar pacotes FORA DO AUR

Testei o search para procurar pelo google-chrome. Parece que a opção -a é depois do parâmetro especificado e depois o pacote

Eu fiz o mesmo teste assim:

pamac -a search google-chrome
pamac search google-chrome -a

E ambos não funcionaram, então por obrigação deve usar o -a após o parâmetro escolhido:

pamac search -a google-chrome

Testei também o comando clone, pelo que eu ví é como se usasse-mos o comando git, mas sem especificar o local onde a gente quer baixar o pacote de compilação, é baixado ao local padrão configurado em /etc/pamac.conf

Aqui eu clonei o mesmo repositório git, só que na pasta onde eu estava, é bem útil principalmente quando a gente quer compilar na mão.

Se você não quer apenas clonar o repositório e compilar na mão e quer instalar o pacote que ja sabe que está no AUR, deve usar a opção build.
build é o mesmo que o install, só que para pacotes AUR, ou seja:

pamac install PACOTE = Instala pacote do repositório oficial
pamac build PACOTE = Instala pacote que está no repositório AUR

Veja minha instalação do google-chrome, que está no repositório AUR. Você NÃO deve usar o sudo aqui, quando chegar a hora o proprio pamac pedira a senha de administrador.
A primeira pergunta é se quer editar o arquivo PKGBUILD, pois todo o esquema de compilação automática está nele. Se não quer mudar nada, basta responder não

Captura%20de%20Tela_selecionar%20%C3%A1rea_20190522221556

Depois ele pergunta se quer confirmar o que tu quer, é só responder sim

Finalmente pede a senha

Depois de confirmar tudo, o Manjaro irá compilar o pacote e reempacotar para que fique com um pacote padrão de instalação do Arch/Manjaro

Depois de reempacotar ele instala no sistema

Depois deste processo de compilação, reempacotar e instalar, ele está pronto para usar

O Chromium é do repositório oficial, então eu uso o install em vez do build. Como ele não possui o flash como o Chrome, então pergunta se quer instalar ou não

Captura%20de%20Tela_selecionar%20%C3%A1rea_20190522222643

Ele Foi instalado normalmente, repare que não usei o sudo. O que quer dizer que o pamac não precisa usar sudo para gerenciar pacotes e pede a senha administrativa somente quando necessário

Para remover é fácil, independente se for pacote do AUR ou não. Gosto de usar a opção -o para remover e ao mesmo tempo deixar o sistema “limpo”.
A opção -o seria o mesmo que o comando no Debian, depois de dar um purge no pacote: apt-get autoremove

Captura%20de%20Tela_selecionar%20%C3%A1rea_20190522224338

Se não quiser instalar o pacote do AUR usando o pamac e sim compilando “manualmente”, pode usar o comando makepkg.
O makepkg faz o processo de verificar o arquivo PKGBUILD pra saber o que tem que fazer, instala as dependências, compila o pacote e depois reempacota.
Depois de tudo isso, pra instalar basta usar ou o pacman ou o pamac para instalar seu pacote compilado. Para baixar o pacote source, pode usar simplesmente o clone do pamac ou ir no site do Arch Linux repository (AUR) https://aur.archlinux.org/ e procurar o pacote lá.
Encontrando o pacote, pode copiar o link do “Download snapshot” ou usar o link do “Git Clone URL”.

Um exemplo usando git:

Outro exemplo, só que usando o link do Snapshot com o wget:

Após baixar o source e entrar na pasta, basta usar o makepkg para compilar. Se não quiser usar o pacman ou pamac para instalar e quiser que a própria compilação instale automaticamente, basta usar a opção -i. Para que seja instalado as dependências para a compilação automaticamente, use a opção -s, eu costumo usar sempre estas 2 opções
Se quiser, antes de compilar, edite o PKGBUILD para modificar algo, mas pra isto deve saber o que está fazendo.

Ao usar o comando makepkg -si, o mesmo faz o mesmo processo em que se faz com o comando pamac build PACOTE

Depois de instalado, foi instalado automaticamente

Dando um ls, dá pra ver que o makepkg baixou o que era necessário na própria pasta do source

Captura%20de%20Tela_selecionar%20%C3%A1rea_20190522232955

Para desinstalar basta fazer como qualquer outro pacote, usando ou o pacman ou o pamac.

Resumo:

  1. Procurar por um pacote (-a para procurar no AUR):
pamac search PACOTE
  1. Obter informação de um pacote (-a para obter a informação do pacote do AUR):
pamac info PACOTE
  1. Atualizar o sistema (-a para atualizar também os pacotes do AUR):
pamac update
  1. Clonar um source de um pacote do AUR:
pamac clone PACOTE
  1. Instalar um pacote que está no repositório oficial:
pamac install PACOTE
  1. Instalar um pacote que está no repositório AUR:
pamac build PACOTE
  1. Remover um pacote:
pamac remove -o PACOTE
  1. Instalar um pacote através do source baixado:
makepkg -si

Espero que tenha ficado fácil de entender, qualquer dúvida ou opinião, não deixem de comentar.

Até mais pessoal :wink: :+1:

Edit: Mais um pouco de instruções para facilitar a vida de muitos :wink:

4 Curtidas

Interessante, pensei que PKGBUILD pode ser editado só no AUR. Não sabia que os pacotes oficiais do pacman/pamac podem ser editados.

Mas se os PKGBUILDs não têm .desktop no texto, tem como excluir os ficheiros .desktop? Pois já tenho ficheiros .desktop reorganizados, limpos e elegantes na pasta ~/.local/share/applications. Já fiz esta pergunta no fórum de Manjaro, mas os utilizadores profissionais de Manjaro são esnobes demais, iguais aos de Arch Linux e não quiseram ajudar.

2 Curtidas

Na configuração do PKGBUILD, dependendo do pacote, o mesmo já possui o arquivo .desktop empacotado. Alguns programas não instalam o .desktop, quando é assim, quem mantém o pacote no source do AUR normalmente faz um esquema de adicionar o mesmo.
Tendo isto em mente, quando se desinstala o pacote mesmo que seja do AUR, automaticamente é removido o .desktop da pasta /usr/share/applications

Fiz um teste aqui no meu Manjaro XFCE e o mesmo não apareceu na pasta, só foi criado uma pasta com o arquivo vazio mimeapps.list. Ao remover o aplicativo do sistema, o ícone do mesmo some do menú. Então se um .desktop estiver “sobrando” em sua pasta de usuário, pode excluir normalmente.

Oi @elppans

Porque os ficheiros .desktop estão dentro do ficheiro compresso, ou por causa do pacote Debian, como no caso do Google Chrome.

Eu sei de tudo, mas se eu mover todos os ficheiros .desktop da pasta /usr/share/applications para ~/.local/share/applications, se eu fizer um upgrade do sistema, todos os ficheiros .desktop serão automática e novamente aderidos à /usr/share/applications, causando duplicatas. Sei que GNOME/GTK detecta que os ficheiros .desktop personalizados na pasta ~/.local/share/applications, quando acessos como utilizador, são mais importantes que os da pasta /usr/share/applications, por isso, eles sobrescreverão os ficheiros da pasta /usr/share/applications.

O problema é no caso de KDE. Krunner mostra dois ficheiros duplicados do mesmo aplicativo. No GNOME/GTK, não há duplicadas nos menus ou na opção «Abrir com».

1 Curtida

Isto é um problema, talvez no modo de gerenciamento de arquivos .desktop. Como cada DE tem seu próprio esquema de como gerir os .desktop, notamos que alguns tem planos melhores.
No XFCE, quando eu usava no Manjaro, alguns programas criavam .desktop em ~/.local/share/applications, e outros não. Porém, com minhas customizações, não ficaram dublicados.
Não sei quanto ao KDE pois faz muito tempo que não uso, estou na dúvida se instalo o Manjaro novamente com XFCE ou uso o KDE. Se eu decidir por KDE vou verificar como é gerenciado os arquivos .desktop.

1 Curtida

Comando pacman de forma fácil:

Pessoal, estava eu vasculhando o ArchWiki pra ver o que mais o pacman oferece e achei 2 links bem interessantes. O incrível é que agora que aprendi tudo na unha, que por curiosidade achei estes links importantes e que facilitaria ainda mais o aprendizado da época.

Como já tinha criado este tópico, então decidi não criar um novo e sim dar continuidade neste mesmo.

O primeiro link é o manual do pacman em português, é muito bom e ao leer, dá pra ver que é muito fácil e intuitivo usar o pacman:

https://wiki.archlinux.org/index.php/Pacman_(Português)

O segundo link, é uma indicação do primeiro, que achei bem interessante. Faz comparações entre os gerenciadores de instalação das distros, tais como o pacman, dnf, apt. É muito bom pra quem está migrando de outra Distro para o Arch ou derivados e é muito fácil entender também, apesar de estar em Inglês:

https://wiki.archlinux.org/index.php/Pacman/Rosetta

/usr/share/applications
/home/user/.local/share/applications

“Os arquivos que estão dentro da sua home acabam sobrescrevendo as preferências contidas na pasta “applications” em “/usr/share” para o seu usuário. Pensando dessa forma, se você quiser que alguma alteração seja válida para todos os usuários do sistema, altere direto na raiz, caso queira apenas para seu usuário, você pode alterar somente na home. É o típico caso preferencial.” Diolinux

Sobre o pamac, particularmente prefiro utilizar o pacman e instalar o trizen ou yay para AUR.

1 Curtida

No meu Manjaro com KDE aqui, tá uma mistureba danada.
Octopi + trizen e pacman e pamac-cli
Vou usando conforme preciso e o que quero usar na hora. Coisa de doido mesmo :rofl:

Mais uma informação para complementar o post pessoal.

  • Trocando Octopi por Pamac (GUI)

Para quem usa o Manjaro KDE mas por algum motivo não gostou do gerenciador Octopi e quer trocar pelo Pamac, é muito fácil, basta remover o octopi e instalar o pamac com os seguintes comandos:

Remoção do Octopi:

sudo pacman -R octopi alpm-octopi-utils octopi-notifier-frameworks

Instalação do pamac:

sudo pacman -S pamac-cli pamac-common pamac-gtk

E agora dá pra usar o pamac tanto via CLI quanto GUI. Se quiser reverter basta fazer os mesmos comandos, só que trocando as opções -S por -R e vice versa.

E quem quiser usar pacotes Snap e/ou Flatpak, basta instalar o fpakman. Este projeto é praticamente novo e é muito bom principalmente para quem não quer decorar os comandos dos mesmos. Há um post falando sobre ele muito bom, eu respondi dando a dica de como instalar lá: