概要
Arch Linux には野良ソフトウェアのインストールを支援してくれる AUR(Arch User Repository)ヘルパーというものがある。Archユーザたちが作成したスクリプトをダウンロードして必要なパッケージのインストールからコマンド入力まで半自動的に行ってくれるスグレモノだ。
「paru」はそんな AUR ヘルパーの一つであり、人気なAURヘルパー「yay」のフォークプロジェクト。
yay は現在 yaourt の後継として多くの Arch 系 Linux ユーザに使われている。bash、fish、zsh いずれのコマンドシェルでも利用可能でどなたにもオススメできる AUR ヘルパーだ。その yay のメインデベロッパーが抜けて作ったのが paru だ。
なぜそのデベロッパーが yay プロジェクトから離脱したのかについては某海外掲示板でパブリッシャーが保守的すぎるため嫌になった、と思わしきことが書かれている。真実かどうかはわからないが yay で実装されたほどんどの機能はその投稿者が提案したとの書き込みもあった。
paru は yay の Google Go 言語から最近多くの優秀なツールが書かれている Rust でコーディングされ直しており機能を少しずつ追加していきたいとのことだ。
yay もまだ残ったメンバーでメンテナンスはされ続けるようなので慌てて paru を導入する必要はない。それに AUR ヘルパーはスクリプトのダウンロードや編集処理以外は pacman に投げるため、処理速度の違いは今の所全く体感できない。
しかし最新のトレンドを追いかけたいならば試してみるのも面白いだろう。 使い方は yay とほぼ変わらないためすぐに移行できる。
GitHub
インストール
AURヘルパーがすでにインストールされていれば下記のように簡単に導入できる。
yay paru
この後 yay は削除しても構わない
自前でビルド
自分でビルドしてインストールする場合はコードを以下のように Git からクローンしビルドすれば良い。
まずは必要な開発パッケージをインストール
sudo pacman -S --needed base-devel
クローンしてビルド、インストール
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
使い方
以下使い方の例一覧。ほぼほぼ yay と同じ扱い方で良い。
paru hogehoge #パッケージhogehogeをインストール
paru #システムのすべてのパッケージを更新
paru -Sua #AURのパッケージのみを更新
paru -Qua #AURで更新があるパッケージを表示
paru -G hogehoge #hogehogeのPKGBUILDや関連ファイルをダウンロード
paru -Gp hogehoge #hogehogeのPKGBUILDを表示
paru -Gc hogehoge #hogehogeのAURコメント欄を表示
paru --gendb #gitパッケージを追跡するデータベースを生成
paru -c #不要なパッケージを削除
paru -Scc #キャッシュや不要なリポジトリを削除
yay との違い
yay とはほぼ一緒だが、 -Y/--yay
コマンドオプションが消されていたり表示情報など、微妙な差異がある。実際 -c
や --gendb
で代用できてしまうので最初から不要だったオプションといえよう。他にも -Gf
や -Ps
と言ったちょっと便利な機能が不要だとして削除されたのでそれをどうしても使いたい人は yay に留まろう。
paru のインストール後は -h
コマンドでマニュアルをちらっと確認しておこう。yay よりも不要な行が減って若干見やすくなっている。
デメリットとしては一文字入力の手間が増えたことだが alias でなんとでもなることだ。
おわり
コメント
はじめまして。こちらのサイトを参考にArchでparuを導入して便利に使っていました。
最近paruで更新をかけると
::古いバージョンとしてマーク:paru
と表示されるようになりました。
ウェブ検索で見つからなかったのですがparu自身を更新する方法を教えてください。
コメントありがとうございます。
AURのコメント欄でも指摘されている問題のようですね。
AURのパッケージメンテナーが前バージョン 1.11.1 と最新のバージョン 1.11.2 の差違はなく、アップデートは必要ないと判断したため放置されているのが原因のようです。
そのまま使っていても全く問題ないですが、どうしても気になる場合はバイナリ版の paru-bin をお使いになるのがよろしいかと思います。
なるほど、そういう事情でしたか。
問題なさそうなので現状維持したいと思います。
ご返答ありがとうございました。