O Arch Linux possui o AUR (Arch User Repository), uma coleção de pacotes criados pelo usuário. Como instalo esses pacotes no Arch Linux ARM?
O Arch Linux possui o AUR (Arch User Repository), uma coleção de pacotes criados pelo usuário. Como instalo esses pacotes no Arch Linux ARM?
Respostas:
De acordo com a página Construindo Pacotes no Arch Linux ARM, você precisa.
Instale os fundamentos da construção. Isso é necessário para compilar pacotes no Arch Linux ARM.
$ sudo pacman -S kernel26-headers file base-devel abs
Obtenha o PKGBUILD
. Você precisa baixar o tarball que deseja. Você pode encontrar os tarballs para programas no AUR .
Faça os pacotes. Em seguida, você precisa executar makepkg
para gerar um pacote que o pacman pode instalar.
$ makepkg -Acs
A -A
opção ignora a arquitetura Arch de destino. A -c
opção limpa o diretório após a conclusão makepkg
e -s
instala as dependências necessárias.
É aconselhável que você NÃO execute
makepkg
como root, pois isso pode causar danos permanentes ao seu sistema. Se você realmente precisa executá-lo como root, use a--asroot
opção
Instale o pacote. makepkg
deve ter criado um arquivo no diretório com o tipo de arquivo .pkg.tar.xz
. Você deve instalar este pacote usando a
-U
opção com pacman.
$ sudo pacman -U x.pkg.tar.xz
Certifique-se de substituir
x.pkg.tar.xz
pelo nome do pacote real.
kernel26-headers
ainda é real? Não encontrou nada sobre isso com o google. E o grupo base-devel
contém file
.
A solução mais fácil é usar o Yaourt (outra ferramenta de repositório de usuários) .
Você pode instalar com:
pacman -S yaourt
E depois sincronize com o AUR:
yaourt -Syy
Você pode procurar pacotes AUR:
yaourt package-name
O que fornecerá avisos interativos para instalação.
Ou se você souber exatamente o nome do pacote:
yaourt -S package-name
A maioria dos comandos pacman são os mesmos para yaourt.
pacman
e yaourt
?
pacman -S yaourt
não funciona e eu não posso adicionar archlinuxfr
como aparentemente eles não hospedamarmv6h
Todas as respostas acima estão desatualizadas. Minha resposta não é muito boa, mas espero evitar a questão de ficar desatualizado.
O wiki oficial explica, em detalhes, como alguém instala / constrói um pacote que não faz parte do pacman (packer e yaourt a partir desta data).
O packer e o yaourt estão sinalizados como desatualizados no AUR. (Isso pode mudar no futuro).
Eu uso o empacotador para esse fim, que na minha opinião é uma alternativa mais rápida ao yaourt.
Basta adicionar estas duas linhas ao seu /etc/pacman.conf
:
[archlinuxfr]
Server = http://repo.archlinux.fr/$arch
Em seguida, você pode instalar / atualizar o empacotador via pacman:
# pacman -Sy packer
E use o empacotador da mesma maneira que você usa o pacman:
$ packer -S some_aur_package
Além disso, se você não deseja atualizar todos os pacotes, incluindo os do AUR:
$ packer -Syu
O Packer executará primeiro pacman -Syu
para atualizar os pacotes dos repositórios oficiais, depois atualizará todos os pacotes AUR.
IMPORTANTE! yaourt
é inseguro e reprovado de acordo com o wiki: https://wiki.archlinux.org/index.php/AUR_helpers
Embora a resposta do @Jivings tenha sido a melhor em `12, eu recomendaria instalar um dos gerenciadores de pacotes de arco mais seguros e com mais recursos (e eu sugiro que alguém atualize a resposta do @Jivings, pois ela tem mais visibilidade).
Eu estou usando aurman
e cavar. Possui todos os recursos, é seguro e o CLI funciona quase exatamente como o pacman. Para instalar:
cd ~/Downloads
git clone https://aur.archlinux.org/aurman.git
cd aurman
makepkg -Acs
# Change xxx below to downloaded version
sudo pacman -U aurman-xxx.pkg.tar.xz
Em seguida, você pode seguir um guia pacman quase exatamente, mas usando em aurman
vez de pacman. O seguinte guia foi retirado de https://www.digitalocean.com/community/tutorials/how-to-use-arch-linux-package-management e eu comecei:
O Arch Linux fornece recursos de gerenciamento de pacotes semelhantes aos encontrados em outras distribuições modernas do Linux. Este é um guia para operações comuns de gerenciamento de pacotes.
Antes de prosseguir, verifique se os bancos de dados do pacote estão atualizados com:
sudo pacman -Sy
Favorecendo a brevidade à intuitividade, a maioria das operações de gerenciamento de pacotes no Arch Linux aparece no formato:
pacman -<a-z><a-z>.
Por exemplo, o comando normal para pesquisar repositórios pacman é
pacman -Ss <package>
...
Como alternativa, você pode usar pacman -Qs com a desvantagem de não destacar cores.
pacman -Qs linux
Se você deseja destacar cores com pacman -Ss, pode descomentar Color em /etc/pacman.conf. No entanto, ele destaca coisas diferentes da pesquisa de pacs; portanto, você pode tentar as duas e ver qual delas gosta mais.
sudo vi /etc/pacman.conf
...
# Misc options
#UseSyslog
Color
#TotalDownload
CheckSpace
#VerbosePkgLists
...
pacman -Qi displays basic information about an installed package.
pacman -Qi linux
Name : linux
Version : 3.8.4-1
Description : The linux kernel and modules
Architecture : x86_64
URL : http://www.kernel.org/
Licenses : GPL2
Groups : base
Provides : kernel26=3.8.4
Depends On : coreutils linux-firmware kmod mkinitcpio>=0.7
Optional Deps : crda: to set the correct wireless channels of your country
Required By : None
Optional For : None
Conflicts With : kernel26
Replaces : kernel26
Installed Size : 64728.00 KiB
Packager : Tobias Powalowski <tpowa@archlinux.org>
Build Date : Wed Mar 20 21:16:17 2013
Install Date : Fri Mar 29 01:02:14 2013
Install Reason : Explicitly installed
Install Script : Yes
Validated By : Unknown
Se pacman -Qi não passar nenhum argumento, ele retornará todos os pacotes no sistema. Você pode pesquisar essa saída para obter informações especializadas sobre pacotes instalados.
Por exemplo, se você deseja obter cada pacote e seu tamanho:
pacman -Qi | grep -e "Name" -e "Installed Size"
Name : a52dec
Installed Size : 244.00 KiB
Name : aalib
Installed Size : 768.00 KiB
...
Enquanto o pacman -Qi fornece informações sobre pacotes instalados, o pacman -Si consulta o banco de dados para obter as informações recuperadas mais recentemente sobre um pacote.
pacman -Si linux
pacman -Ql lista todos os arquivos associados a um pacote.
pacman -Ql vi
vi /usr/
vi /usr/bin/
vi /usr/bin/edit
vi /usr/bin/ex
vi /usr/bin/vedit
vi /usr/bin/vi
...
O nome do pacote em cada linha pode tornar a saída mais difícil de usar em um script. pacman -Qlq (ou seja, "lista de consultas pacman, quiet") não imprimirá o nome do pacote.
pacman -Qlq vi
/usr/
/usr/bin/
/usr/bin/edit
/usr/bin/ex
/usr/bin/vedit
/usr/bin/vi
...
Você pode usar pacman -Qlq | grep bin para encontrar todos os arquivos desse pacote que estão em uma pasta bin (e, portanto, são provavelmente arquivos executáveis). Isso é útil quando o comando associado a um pacote é diferente do nome do pacote.
pacman -Qql pacman | grep bin
A maneira típica de instalar ou atualizar um pacote padrão é pacman -S.
sudo pacman -S <package>
Os pacotes geralmente têm um padrão semelhante em seus nomes. Parênteses podem ser usados como um atalho.
sudo pacman -S lua-{sec,socket,zlib}
Às vezes, você pode querer baixar apenas um pacote para fins de arquivamento sem instalá-lo. pacman -Sw fará o download de um pacote para a pasta cache.
sudo pacman -Sw <package>
Se um pacote tiver sido baixado ou se você souber o URL, poderá instalá-lo diretamente.
sudo pacman -U <package_path>
Como o pacman gira em torno da idéia de "sincronizar" um pacote com o repositório remoto, pacman -S
ele atualizará um pacote se ele já estiver instalado.
Pacman pode listar pacotes desatualizados.
pacman -Qu
Infelizmente, ele não exibe a versão do pacote no repositório, portanto, você não poderá dizer como está desatualizado cada pacote. Se isso for importante para você, convém procurar gerenciadores de pacotes de terceiros ou escrever um script que amarre a versão do pacote obtida de pacman -Qi e pacman -Si.
Você pode obter a versão do pacman -Qi ou pacman -Si usando uma expressão regular.
pacman -Qi linux | grep "Version" | sed 's/^Version\s*:\s//'
3.8.4-1
E, em seguida, escreva um script que mostre as versões lado a lado.
for i in $(pacman -Qqu)
do
printf "$i: "
printf "$(pacman -Qi "$i" | grep 'Version' | sed 's/^Version\s*:\s//') "
echo "$(pacman -Si "$i" | grep 'Version' | sed 's/^Version\s*:\s//')"
done
O Pacman fornece uma maneira de atualizar todos os seus pacotes de uma só vez, mas não é recomendado porque o Arch é uma distribuição de lançamento contínuo. Se surgirem problemas, pode levar tempo para determinar quais são as causas.
sudo pacman -Syu
O Arch Linux não mantém oficialmente pacotes obsoletos. Em vez disso, você precisará confiar no cache do pacote e em locais como o Arch Rollback Machine. Cache
Todo pacote baixado com pacman é armazenado em / var / cache / pacman / pkg.
ls /var/cache/pacman/pkg | grep linux
linux-3.11.6-1-x86_64.pkg.tar.xz
linux-3.9.7-1-x86_64.pkg.tar.xz
...
Se você deseja reverter para um pacote em seu cache, basta instalá-lo diretamente.
pacman -U <path_to_cached_file>
A Arch Rollback Machine é uma coleção de capturas instantâneas do espelho oficial do Arch Linux. No momento da redação deste artigo, ele remonta a quatro meses. O ARM está atualmente hospedado em http://seblu.net/a/arm , embora isso possa mudar no futuro.
Os pacotes ARM podem ser instalados remotamente usando pacman -U.
pacman -U http://seblu.net/a/arm/2013/08/31/extra/os/x86_64/apache-2.2.25-1-x86_64.pkg.tar.xz
Não é exatamente conveniente procurar pacotes antigos no ARM. Felizmente, existem ferramentas que facilitam isso:
downgrade
downgrader
Eles pesquisam versões mais antigas no cache e no ARM. Seu uso é o que você esperaria.
downgrade <package>
downgrader <package>
Ambas as ferramentas estão no AUR, portanto, a maneira mais fácil de instalá-las será com um ajudante como o yaourt.
Nota: O ARM é um projeto não oficial e foi fechado no passado, portanto, pode ser uma boa ideia evitar limpar o cache, caso o ARM fique inativo ou mude de local novamente. Se você deseja lançar seu próprio ARM, parece haver um projeto NodeJS no github. Remoção
Remova um pacote, desde que nada dependa dele. Deixe suas dependências instaladas.
sudo pacman -R <package>
Remova um pacote, desde que nada dependa dele. Remova suas dependências que não são necessárias por mais nada.
sudo pacman -Rs <package>
Forçar a remoção de um pacote. Este é o comando que você procurará para apenas limpar o pacote do seu sistema e reinstalar quando reinstalar sozinho não for suficiente.
sudo pacman -Rdd <package>
aurman -Rsn <package>
A primeira coisa que você precisa fazer é baixar o pacote do AUR. Para fazer isso: git clone http://aur.archlinux.org/package.git
Mesmo que pareça que você está baixando um .git
arquivo, a saída será um diretório.
cd package
para encontrar um PKGBUILD
arquivo. Isso será usado na próxima etapa.
Por fim, execute este comando para compilar e instalar o pacote que você acabou de baixar. makepkg -Sri
. Se você deseja uma explicação abrangente do significado de cada uma dessas letras, pode executar makepkg -h
onde elas serão explicadas.