◆ 元をたどると guile のときと同じで abrt-cli という fedora に入ってるバグ報告ツール

この記事を書いたときにデフォルトインストールされたパッケージを見ていたのですが その中に

js-jquery

がありました

jQuery ??
fedora のデフォルトで??

すごく謎だったので調べてみました

js-jquery

js-jquery パッケージの中身は

root@localhost ~# dnf repoquery -l js-jquery
/usr/share/doc/js-jquery
/usr/share/doc/js-jquery/AUTHORS.txt
/usr/share/doc/js-jquery/CONTRIBUTING.md
/usr/share/doc/js-jquery/LICENSE.txt
/usr/share/doc/js-jquery/README.md
/usr/share/javascript/jquery
/usr/share/javascript/jquery/3
/usr/share/javascript/jquery/3.2
/usr/share/javascript/jquery/3.2.1
/usr/share/javascript/jquery/3.2.1/jquery.js
/usr/share/javascript/jquery/3.2.1/jquery.min.js
/usr/share/javascript/jquery/3.2.1/jquery.min.map
/usr/share/javascript/jquery/latest
/usr/share/web-assets/jquery
root@localhost ~# ll /usr/share/javascript/jquery/
合計 0
lrwxrwxrwx. 1 root root 5 7月 27 2017 3 -> 3.2.1/
lrwxrwxrwx. 1 root root 5 7月 27 2017 3.2 -> 3.2.1/
drwxr-xr-x. 2 root root 66 3月 11 20:08 3.2.1/
lrwxrwxrwx. 1 root root 5 7月 27 2017 latest -> 3.2.1/
root@localhost ~# ll /usr/share/javascript/jquery/3.2.1/
合計 484K
-rw-r--r--. 1 root root 262K 7月 27 2017 jquery.js
-rw-r--r--. 1 root root 85K 7月 27 2017 jquery.min.js
-rw-r--r--. 1 root root 129K 7月 27 2017 jquery.min.map

/usr/share/doc/js-jquery にドキュメントと /usr/share/javascript/jquery の中に jQuery の JavaScript ファイルがあるくらいです
やっぱりこれ単体でデフォルトインストールされるとは思えないのでこれに依存するパッケージがインストールされてないか調べてみます

依存関係

root@localhost ~# bash -c "comm -12 <(dnf repoquery --whatrequires js-jquery | sort) <(dnf repoquery --installed | sort)"
Waiting for process with pid 2653 to finish.
メタデータの期限切れの確認は、1:17:58 時間前の 2018年05月14日 13時41分32秒 に実施しました。
python-systemd-doc-0:234-3.fc27.x86_64

js-jquery を requires してるパッケージとインストール済みパッケージの intersect 結果を表示してます
このコマンドのリダイレクトが fish だと動かなくてどう直せば良いかもわからないので bash で実行させてます
普段の操作が便利なので fish 使ってるだけで コマンド実行のときまで無理して fish にする必要ないですからね

結果は python-systemd-doc というものでした

python-systemd-doc

このパッケージに含まれてるのを見てみます

root@localhost ~# dnf repoquery -l python-systemd-doc
メタデータの期限切れの確認は、1:21:34 時間前の 2018年05月14日 13時41分32秒 に実施しました。
/usr/share/doc/python-systemd/html
/usr/share/doc/python-systemd/html/_modules
/usr/share/doc/python-systemd/html/_modules/index.html
/usr/share/doc/python-systemd/html/_modules/systemd
/usr/share/doc/python-systemd/html/_modules/systemd/daemon.html
/usr/share/doc/python-systemd/html/_modules/systemd/journal.html
/usr/share/doc/python-systemd/html/_modules/uuid.html
/usr/share/doc/python-systemd/html/_sources
/usr/share/doc/python-systemd/html/_sources/daemon.rst.txt
/usr/share/doc/python-systemd/html/_sources/id128.rst.txt
/usr/share/doc/python-systemd/html/_sources/index.rst.txt
/usr/share/doc/python-systemd/html/_sources/journal.rst.txt
/usr/share/doc/python-systemd/html/_sources/login.rst.txt
/usr/share/doc/python-systemd/html/_static
/usr/share/doc/python-systemd/html/_static/ajax-loader.gif
/usr/share/doc/python-systemd/html/_static/basic.css
/usr/share/doc/python-systemd/html/_static/classic.css
/usr/share/doc/python-systemd/html/_static/comment-bright.png
/usr/share/doc/python-systemd/html/_static/comment-close.png
/usr/share/doc/python-systemd/html/_static/comment.png
/usr/share/doc/python-systemd/html/_static/conf.py
/usr/share/doc/python-systemd/html/_static/daemon.rst
/usr/share/doc/python-systemd/html/_static/default.css
/usr/share/doc/python-systemd/html/_static/doctools.js
/usr/share/doc/python-systemd/html/_static/down-pressed.png
/usr/share/doc/python-systemd/html/_static/down.png
/usr/share/doc/python-systemd/html/_static/file.png
/usr/share/doc/python-systemd/html/_static/id128.rst
/usr/share/doc/python-systemd/html/_static/index.rst
/usr/share/doc/python-systemd/html/_static/journal.rst
/usr/share/doc/python-systemd/html/_static/jquery-3.1.0.js
/usr/share/doc/python-systemd/html/_static/jquery.js
/usr/share/doc/python-systemd/html/_static/layout.html
/usr/share/doc/python-systemd/html/_static/login.rst
/usr/share/doc/python-systemd/html/_static/minus.png
/usr/share/doc/python-systemd/html/_static/plus.png
/usr/share/doc/python-systemd/html/_static/pygments.css
/usr/share/doc/python-systemd/html/_static/searchtools.js
/usr/share/doc/python-systemd/html/_static/sidebar.js
/usr/share/doc/python-systemd/html/_static/underscore-1.3.1.js
/usr/share/doc/python-systemd/html/_static/underscore.js
/usr/share/doc/python-systemd/html/_static/up-pressed.png
/usr/share/doc/python-systemd/html/_static/up.png
/usr/share/doc/python-systemd/html/_static/websupport.js
/usr/share/doc/python-systemd/html/daemon.html
/usr/share/doc/python-systemd/html/genindex.html
/usr/share/doc/python-systemd/html/id128.html
/usr/share/doc/python-systemd/html/index.html
/usr/share/doc/python-systemd/html/journal.html
/usr/share/doc/python-systemd/html/login.html
/usr/share/doc/python-systemd/html/objects.inv
/usr/share/doc/python-systemd/html/py-modindex.html
/usr/share/doc/python-systemd/html/search.html
/usr/share/doc/python-systemd/html/searchindex.js

/usr/share/doc/python-systemd 以下のドキュメントだけのようです
実行ファイルやライブラリのような外部から使われるものでもありません

よくみると jQuery が 2 つあって ll でみてみると片方がシンボリックリンクで js-jquery の jQuery にリンクしていました

root@localhost ~# ll /usr/share/doc/python-systemd/html/_static/jq*
-rw-r--r--. 1 root root 258K 8月 5 2017 /usr/share/doc/python-systemd/html/_static/jquery-3.1.0.js
lrwxrwxrwx. 1 root root 49 8月 5 2017 /usr/share/doc/python-systemd/html/_static/jquery.js -> /usr/share/javascript/jquery/latest/jquery.min.js

3.1.0 あるならそれ使えばいいのに

それにしてもサーバエディションでブラウザインストールできないのに html のマニュアルをインストールされても使い道ないのですけどね
これも何かの依存関係でついてくるのでしょうか

一番の元は

root@localhost ~# bash -c "comm -12 <(dnf repoquery --whatrequires python-systemd-doc | sort) <(dnf repoquery --installed | sort)"
Waiting for process with pid 2827 to finish.
メタデータの期限切れの確認は、1:26:04 時間前の 2018年05月14日 13時41分32秒 に実施しました。
root@localhost ~# bash -c "comm -12 <(dnf repoquery --whatrecommends python-systemd-doc | sort) <(dnf repoquery --installed | sort)"
Waiting for process with pid 2909 to finish.
メタデータの期限切れの確認は、1:27:27 時間前の 2018年05月14日 13時41分32秒 に実施しました。
python3-systemd-0:234-3.fc27.x86_64

requires は何もなかったので直接これがインストールされたのかと思ったのですが recommends の方に python3-systemd がありました
名前から systemd を python3 から操作できそうなものに見えます
これも必須とは言えなそうな気もするので再帰的に探します

root@localhost ~# bash -c "comm -12 <(dnf repoquery --whatrequires python3-systemd | sort) <(dnf repoquery --installed | sort)"
Waiting for process with pid 3181 to finish.
メタデータの期限切れの確認は、1:32:57 時間前の 2018年05月14日 13時41分32秒 に実施しました。
python3-abrt-addon-0:2.10.7-1.fc27.x86_64
root@localhost ~# bash -c "comm -12 <(dnf repoquery --whatrequires python3-abrt-addon | sort) <(dnf repoquery --installed | sort)"
Waiting for process with pid 3225 to finish.
メタデータの期限切れの確認は、1:33:36 時間前の 2018年05月14日 13時41分32秒 に実施しました。
abrt-cli-0:2.10.7-1.fc27.x86_64

まとめると

abrt-cli
python3-abrt-addon
python3-systemd
python-systemd-doc (recommends)
js-jquery

という依存関係でインストールされたようです

abrt-cli……
元をたどると前回の guile と同じですね

※ インストール済みの依存ファイル

追記です

見直してると

comm -12 <(dnf repoquery --whatrequires js-jquery | sort) <(dnf repoquery --installed | sort)

このコマンド
2つのコマンドの結果の intersect 結果を表示してるのですが 両方 repoquery ですし両方指定すればいけないのかなと思ってやってみたら

user@localhost ~> dnf repoqery --whatrequires js-jquery --installed
python-systemd-doc-0:234-3.fc27.x86_64

普通にできました
もともと別のコマンドで表示させていたのですが フォーマットが違って単純に intersect が取れなくて変換を通す必要がありました
両方 repoquery にしたら同じフォーマットなので楽ということでこうしたのですが intersect 処理すらいらなくてすごく便利でした

他の方法でできるからとあまり使わない repoquery でしたが逆に言えば他の dnf コマンドの検索を組み合わせて使えるのでこっちを使ったほうが良いケースもありますね