Crie o pacote explicitamente instalado no pacman

25

Eu tenho um pacote instalado no meu PC como uma dependência de outro pacote.

Eu gostaria de ter o pacote explicitamente instalado, mas sem realmente reinstalá-lo ou fazer download de arquivos.

Isso é possível?

update :

Eu não tenho nenhum pacote armazenado em cache em /var/cache/pacman/pkg , que é uma das razões pelas quais eu quero alterar o detalhe do pacote sem uma reinstalação.

Mesmo se eu tivesse os pacotes armazenados em cache, executar o pacman -S significaria que todo o processo de instalação é executado, o que eu também quero evitar.

    
por Stefan 13.09.2010 / 23:48

3 respostas

40

Encontrei a resposta nos Fóruns do Arch Linux

Desde o pacman 3.4 você pode usar

# pacman -D

para modificar somente o banco de dados. Então:

# pacman -D --asexplicit <pkgs>

tornará <pkgs> explicitamente instalado .

    
por 14.09.2010 / 13:55
6

pacman -S tem um sinal --asexplicit que deve fazer o que você deseja.

Por exemplo:

> pacman -Qi mutagen            
...
Install Reason : Installed as a dependency for another package

> pacman -S --asexplicit mutagen
warning: mutagen-1.20-1 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...

Targets (1): mutagen-1.20-1

Total Download Size:    0.00 MB
Total Installed Size:   0.82 MB
...

> pacman -Qi mutagen
...
Install Reason : Explicitly installed

Você pode ver que nada foi baixado, pois já está instalado localmente. Apenas virou o campo "Install Reason".

O Pacman tem operações --help diferentes, dependendo da operação ( -S , -R , etc.). Portanto, pacman -S --help lista o --asexplicit como um dos sinalizadores disponíveis. --asdeps também está disponível.

    
por 14.09.2010 / 05:30
1

Para instalar somente se ainda não estiver instalado, você pode usar o sinalizador --needed:

pacman -S mutagen
pacman -S --needed mutagen clone

Ignora a reinstalação do mutagene se já estiver instalado pelo primeiro comando. E você também terá uma boa informação sobre isso

    
por 06.09.2015 / 20:03