web-dev-qa-db-ja.com

パッケージをpacmanに明示的にインストールする

別のパッケージへの依存関係としてPCにインストールされているパッケージがあります。

パッケージを明示的にインストールしたいのですが、実際に再インストールせずにそれをインストールするか、ファイルをダウンロードします。

これは可能ですか?

更新

/var/cache/pacman/pkgにキャッシュされたパッケージがありません。これは、再インストールせずにパッケージの詳細を変更したい理由の1つです。

パッケージをキャッシュしていたとしても、pacman -Sを実行すると、インストールプロセス全体が実行されることになります。これも避けたいです。

34
Stefan

Arch Linuxフォーラム で答えを見つけました

Pacman 3.4以降で使用できます

# pacman -D

onlyデータベースを変更します。そう:

# pacman -D --asexplicit <pkgs>

作る予定です <pkgs>明示的にインストールされました

pacman manpage は、このコマンドについてさらに説明しています。

52
Stefan

pacman -Sには、必要な処理を行う--asexplicitフラグがあります。

例えば:

> 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

ローカルにインストールされているため、何もダウンロードされていないことがわかります。 「Install Reason」フィールドが反転しました。

パックマンには、操作に応じて異なる--help操作があります(-S-Rなど)。したがって、pacman -S --help--asexplicitフラグを使用可能なフラグの1つとしてリストします。 --asdepsも使用できます。

6
wafuqua

がまだインストールされていない場合にのみインストールするには、-neededフラグを使用できます。

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

最初のコマンドですでにインストールされている場合、変異原性の再インストールをスキップします。そして、それについての素晴らしい情報も得られます

1
totedati