Guixを介してインストールされたすべてのパッケージを一覧表示するには? Ubuntuではこれが通過しますdpkg -l
。
答え1
guix package --list-installed
(guix package -I
)は、すべてのLinuxディストリビューションにインストールされているパッケージを一覧表示するのに有効な答えです。渡すパッケージマネージャguix
。
しかし、それは同じではありませんdpkg -l
。なぜですか?
dpkg -l
システムにインストールされているすべてのパッケージが一覧表示されます...、...を介してインストールされたguix
パッケージapt
に関する情報を取得できません。dpkg
独自にインストールされたパッケージにのみアクセスできます。guix
GuixSDから
GuixSDにはプリインストールされたパッケージが付属しています。また、guix package --list-installed
システム全体のパッケージを一覧表示するには、オプションを設定する必要があります--profile
。
guix package --list-installed --profile=/run/current-system/profile |awk '{print $1}'
たとえば、
$ guix package --list-installed=zile
$
何も返しません。
しかし:
$ guix package --list-installed --profile=/run/current-system/profile |awk '/zile/ {print $1,$2}'
zile 2.4.14
パッケージ管理(emacsモード):
答え2
あなたはそれを使用することができます
guix package --list-installed
インストールされているすべてのパッケージを一覧表示します。| grep name
そのリストから「名前」を検索するには、最後にを追加してください。
答え3
guix
ユーザーまたはシステムプロファイルにインストールされているパッケージを一覧表示する方法に対する他の答えは正確ですが、依存関係を満たすためにインストールされた他のパッケージがあります。これらのパッケージはリストされていませんが、guix package
ストアにインストールされます。
比較のために、dpkg -l
依存関係を満たすために特別にインストールされているか自動的にインストールされているかに関係なく、インストールされているすべてのパッケージが一覧表示されます。最初は、一般的な理解のために同様のリストを見つけ、後でドライバパッケージが使用されたかどうかはわかりませんでしたが、ドライバパッケージが存在するかどうかを確認したいときに似たリストを見つけました。
すべてのパッケージがストアにインストールされるため、どのディレクトリが存在するかを/gnu/store
確認して、どのパッケージがインストールされているかを確認できます。私自身のために/gnu/store
名前にダッシュがあるディレクトリをすぐに見つけて、最初のダッシュの前の部分を切り取り、アルファベット順に並べ替え、重複項目を削除する次のコマンドを思い出しました。これは、これまで入手可能なインストール済みパッケージの最も近いリストです。
$ find /gnu/store/ -maxdepth 1 -type d -iname '*-*' | cut -d '-' -f 2- | sort | uniq
もちろん、これはこれらすべてを隠し、ユーザーが表示されるパッケージにのみ興味を持てるようにするGuixの素晴らしい機能ですguix package --list-installed
。