インストールされたパッケージに関する情報を見つける方法はありますか?例えばどのようにDNF、snapなどのパッケージマネージャを介してインストールされますか、それともユーザーが直接コンパイルしますか?
特定のパッケージをインストールする方法を覚えていないことがありますが、バグレポートなどに常にそのような情報を含める必要があります。この種の情報を提供できるツールはありますか?このためにスクリプトを書くのに役立つことができれば、大変感謝します。
答え1
使用しているパッケージマネージャに連絡する必要があります。パッケージマネージャのみがインストールされているパッケージと、パッケージに含まれるファイルに関するメタ情報を保存します。この情報はベアファイルから取得できません。
どのディストリビューションを使用しているかは言っていませんが、常に単一のパッケージマネージャを使用し(私に適している)、ユーザーがコンパイルしたアイテムを別の場所に置くことをお勧めします(私はリストを/usr/local
使用して管理されます。stow
12個のパッケージマネージャを使用している場合(理由は何ですか)、各パッケージマネージャを順番にクエリするスクリプトを作成できます。
編集する
私はコンパイルする各パッケージのファイルを生成し、ソースからコンパイルされた内容を追跡します/usr/local/packages/<packagename>
。とにかく、アップグレード時に再コンパイルする必要がある場合に備えて、コンパイル方法に関する情報(通常は調整が必要で、最新のgccでコンパイルされない問題を修正する必要があるなど)が含まれているため、これが必要です。このファイルがあるため、ソースコードをダウンロードした場所、バージョン、目的、ソースターボール名などに関する情報も追加しました。すべてをにインストールしてから(/usr/local/stow/<packagename>-<version>
時々Makefileなどを調整する必要があります./configure --prefix
)stow
。/usr/local
これについて詳しく説明しました。ここ。
自分でコンパイルしたものから実際のdebまたはrpmパッケージを作成することもできますがstow
。