Jadikan paket diinstal secara eksplisit di pacman


32

Saya memiliki paket yang diinstal pada PC saya sebagai ketergantungan pada paket lain.

Saya ingin menginstal paket secara eksplisit, tetapi tanpa benar-benar menginstalnya kembali, atau mengunduh file apa pun.

Apakah ini mungkin?

perbarui :

Saya tidak memiliki paket yang di-cache /var/cache/pacman/pkg, yang merupakan salah satu alasan saya ingin mengubah detail paket tanpa menginstal ulang.

Bahkan jika saya memiliki paket di-cache, menjalankan pacman -S akan berarti seluruh proses instalasi dijalankan, yang juga ingin saya hindari.

Jawaban:


49

Saya menemukan jawabannya di Forum Arch Linux

Sejak pacman 3.4 Anda dapat menggunakan

# pacman -D

untuk memodifikasi hanya database. Begitu:

# pacman -D --asexplicit <pkgs>

akan membuat <pkgs> diinstal secara eksplisit .


6

pacman -Smemiliki --asexplicitbendera yang harus melakukan apa yang Anda inginkan.

Sebagai contoh:

> 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

Anda dapat melihat bahwa tidak ada yang diunduh karena sudah diinstal secara lokal. Itu hanya membalik bidang "Instal Alasan".

Pacman memiliki berbagai --helpoperasi tergantung pada operasi ( -S, -R, dll). Jadi pacman -S --helpdaftarkan --asexplicitbendera sebagai salah satu bendera yang tersedia. --asdepstersedia juga.


silakan lihat suntingan yang saya buat untuk pertanyaan
Stefan

1

Untuk menginstal hanya jika belum diinstal, Anda dapat menggunakan --needed flag:

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

Akan melewatkan instalasi ulang mutagen jika sudah diinstal oleh perintah pertama. Dan Anda juga akan mendapatkan info yang bagus tentang itu

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.