「AUR ヘルパー」の版間の差分
ナビゲーションに移動
検索に移動
(→グラフィカル: 翻訳) |
(→グラフィカル: 同期) |
||
(2人の利用者による、間の6版が非表示) | |||
21行目: | 21行目: | ||
== 用語集 == |
== 用語集 == |
||
− | [比較表] の列は、以下のような意味を持ちます。 |
+ | [[AUR ヘルパー#比較表|比較表]] の列は、以下のような意味を持ちます。 |
;File review:デフォルトでは ''PKGBUILD をソースしない'' か、ユーザーに警告を出しソースされる前に PKGBUILD を手動で検査する機会を提供します。ヘルパーの中にはユーザーが検査する前に PKGBUILD をソースして、'''悪意のあるコードを実行させる''' ものがあることが知られています。 |
;File review:デフォルトでは ''PKGBUILD をソースしない'' か、ユーザーに警告を出しソースされる前に PKGBUILD を手動で検査する機会を提供します。ヘルパーの中にはユーザーが検査する前に PKGBUILD をソースして、'''悪意のあるコードを実行させる''' ものがあることが知られています。 |
||
29行目: | 29行目: | ||
;高機能ソルバー:{{AUR|ros-melodic-desktop}} のような、複雑な依存関係を正しく解決して構築する機能。 |
;高機能ソルバー:{{AUR|ros-melodic-desktop}} のような、複雑な依存関係を正しく解決して構築する機能。 |
||
;分割パッケージ:正しくビルドしてインストールする機能 |
;分割パッケージ:正しくビルドしてインストールする機能 |
||
− | :* |
+ | :* {{AUR|clion}} のように、リビルドや再インストールを何度もすることなく、同じパッケージベースから複数のパッケージを利用できます。 |
− | :* |
+ | :* {{AUR|jellyfin}} のように、同じパッケージベースのパッケージに依存するパッケージを分割します。 |
− | :*{{AUR|python-pyalsaaudio}} と {{AUR|python2-pyalsaaudio}} のように、独立してパッケージを分割することができます。 |
+ | :* {{AUR|python-pyalsaaudio}} と {{AUR|python2-pyalsaaudio}} のように、独立してパッケージを分割することができます。 |
;シェルによる補完:[https://en.wikipedia.org/wiki/Command-line_completion Tab completion] はリストアップされた [[コマンドラインシェル]] で利用可能です。 |
;シェルによる補完:[https://en.wikipedia.org/wiki/Command-line_completion Tab completion] はリストアップされた [[コマンドラインシェル]] で利用可能です。 |
||
{{Note| |
{{Note| |
||
* ''オプション'' とは、コマンドライン引数または設定オプションによってのみ利用可能な機能であることを意味します。 |
* ''オプション'' とは、コマンドライン引数または設定オプションによってのみ利用可能な機能であることを意味します。 |
||
− | * ''部分的'' は、その機能が完全に実装されていない、または与えられた基準から部分的に逸脱していることを意味します |
+ | * ''部分的'' は、その機能が完全に実装されていない、または与えられた基準から部分的に逸脱していることを意味します。}} |
== 比較表 == |
== 比較表 == |
||
43行目: | 43行目: | ||
{| class="wikitable sortable" style="text-align: center;" |
{| class="wikitable sortable" style="text-align: center;" |
||
− | ! 名前 !! 言語 !! Git クローン !! 高機能パーサー !! 高機能ソルバー !! シェル補完 !! 特記事項 |
+ | ! 名前 !! 言語 !! File review !! Diff view !! Git クローン !! 高機能パーサー !! 高機能ソルバー !! シェル補完 !! 特記事項 |
|- |
|- |
||
! {{AUR|auracle-git}} |
! {{AUR|auracle-git}} |
||
− | | C++ || {{Yes|https://github.com/falconindy/auracle/commit/c73bbee}} || {{Yes}} || {{Yes}} || bash || {{L|ビルドオーダーの印刷}} |
+ | | C++ || {{Yes}} || {{No}} || {{Yes|https://github.com/falconindy/auracle/commit/c73bbee}} || {{Yes}} || {{Yes}} || bash || {{L|ビルドオーダーの印刷}} |
|- |
|- |
||
! {{AUR|pbget}} |
! {{AUR|pbget}} |
||
− | | Python || {{Yes}} || {{Yes}} || {{-}} || {{-}} || {{-}} |
+ | | Python || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{-}} || {{-}} || {{-}} |
|- |
|- |
||
! {{AUR|repoctl}} |
! {{AUR|repoctl}} |
||
− | | Go || {{No}} || {{Yes|https://github.com/goulash/pacman/blob/master/aur/aur.go}} || {{-}} || zsh || {{L|[[Pacman ヒント#カスタムローカルリポジトリ|ローカルリポジトリ]]}} |
+ | | Go || {{Yes}} || {{No}} || {{No}} || {{Yes|https://github.com/goulash/pacman/blob/master/aur/aur.go}} || {{-}} || bash, zsh, fish || {{L|[[Pacman ヒント#カスタムローカルリポジトリ|ローカルリポジトリ]]}} |
|- |
|- |
||
! {{AUR|yaah}} |
! {{AUR|yaah}} |
||
− | | Bash || {{Y|オプション}} || {{Yes}} || {{-}} || bash || {{-}} |
+ | | Bash || {{Yes}} || {{No}} || {{Y|オプション}} || {{Yes}} || {{-}} || bash || {{-}} |
|} |
|} |
||
78行目: | 78行目: | ||
=== Pacman ラッパー === |
=== Pacman ラッパー === |
||
− | {{Warning|{{man|8|pacman}} ラッパーはパッケージマネージャの仕事を抽象化します。 |
+ | {{Warning|{{man|8|pacman}} ラッパーはパッケージマネージャの仕事を抽象化します。(オプションもしくはデフォルトで) [[システムメンテナンス#特定の pacman コマンドを避けてください|危険なフラグ]] や、システムの欠陥につながるその他の予期せぬ挙動を引き起こす可能性があります}} |
− | {{Note|以下の pacman ラッパーはバッチオペレーションをサポートします |
+ | {{Note|以下の pacman ラッパーはバッチオペレーションをサポートします(オンデマンドではありません){{AUR|pacaur}}, {{AUR|pikaur}}, {{AUR|yay}}, {{AUR|aura}}, {{AUR|paru}}、{{AUR|aurman}}}} |
{| class="wikitable sortable" style="text-align: center;" |
{| class="wikitable sortable" style="text-align: center;" |
||
87行目: | 87行目: | ||
! {{AUR|aura}} |
! {{AUR|aura}} |
||
| Haskell || {{No}} || {{Y|[https://github.com/aurapm/aura/blob/89bf702/aura/src/Aura/Pkgbuild/Records.hs 部分的]}} || {{Yes|https://github.com/fosskers/aura/commit/ca9c38d}} || {{Yes|https://github.com/aurapm/aura/commit/7848e98}} || {{Yes|https://github.com/fosskers/aura/pull/479}} || {{Yes|https://github.com/fosskers/aura/pull/479}} || {{-}} || bash, fish, zsh || {{-}} |
| Haskell || {{No}} || {{Y|[https://github.com/aurapm/aura/blob/89bf702/aura/src/Aura/Pkgbuild/Records.hs 部分的]}} || {{Yes|https://github.com/fosskers/aura/commit/ca9c38d}} || {{Yes|https://github.com/aurapm/aura/commit/7848e98}} || {{Yes|https://github.com/fosskers/aura/pull/479}} || {{Yes|https://github.com/fosskers/aura/pull/479}} || {{-}} || bash, fish, zsh || {{-}} |
||
+ | |- |
||
+ | ! {{AUR|aurman}} |
||
+ | | Python || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Y|[https://github.com/polygamma/aurman/issues/259 部分的]}} || {{Yes}} || {{R|[https://github.com/polygamma/aurman/commit/6c02ba3 -Sy]<br>[https://github.com/polygamma/aurman#make-use-of-the-undocumented---ask-flag-of-pacman --ask]}} || bash, fish || {{L|fetch PGP keys}} |
||
|- |
|- |
||
! {{AUR|pacaur}} |
! {{AUR|pacaur}} |
||
− | | Bash || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || [https://github.com/ |
+ | | Bash || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Y|[https://github.com/E5ten/pacaur/commit/12707cc --ask]}} || bash, zsh || {{-}} |
|- |
|- |
||
− | ! {{AUR|pakku |
+ | ! {{AUR|pakku}} |
− | | Nim || {{Yes}} || {{Yes|https://github.com/kitsunyan/pakku/commit/396e9f4}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || [https://github.com/kitsunyan/pakku/wiki/Native-Pacman-Explanation -Sy] || bash, zsh || {{ |
+ | | Nim || {{Yes}} || {{Yes|https://github.com/kitsunyan/pakku/commit/396e9f4}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{R|[https://github.com/kitsunyan/pakku/wiki/Native-Pacman-Explanation -Sy]}} || bash, zsh || {{-}} |
|- |
|- |
||
! {{AUR|paru}} |
! {{AUR|paru}} |
||
− | | Rust|| {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || -Sy<br>--ask || bash, fish, zsh || {{L| |
+ | | Rust|| {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{R|[https://github.com/Morganamilo/paru/blob/15394a7db80d045f038ea4d0ee94d00211070c96/man/paru.8#L543-L552 -Sy]<br>[https://github.com/Morganamilo/paru/blob/32b75ac1cb7e0fccd21a0f795f25fd9fb1a14d8a/man/paru.conf.5#L110-L116 --ask]}} || bash, fish, zsh || {{L|[[Pacman ヒント#カスタムローカルリポジトリ|ローカルリポジトリ]], [https://wiki.archlinux.org/title/DeveloperWiki:Building_in_a_clean_chroot clean chroot]}} |
|- |
|- |
||
! {{AUR|pikaur}} |
! {{AUR|pikaur}} |
||
− | | Python || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || [https://github.com/actionless/pikaur#pikaur -Sy] || bash, fish, zsh || {{L|[http://0pointer.net/blog/dynamic-users-with-systemd.html dynamic users]}} |
+ | | Python || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{R|[https://github.com/actionless/pikaur#pikaur -Sy]}} || bash, fish, zsh || {{L|[http://0pointer.net/blog/dynamic-users-with-systemd.html dynamic users]}} |
|- |
|- |
||
! {{AUR|trizen}} |
! {{AUR|trizen}} |
||
104行目: | 107行目: | ||
|- |
|- |
||
! {{AUR|yay}} |
! {{AUR|yay}} |
||
− | | Go || {{Yes}} || {{Yes|https://github.com/Jguer/yay/pull/447}} || {{Yes|https://github.com/Jguer/yay/pull/297}} || {{Yes}} || {{Yes|https://github.com/Jguer/yay/pull/866}} || {{Yes}} || |
+ | | Go || {{Yes}} || {{Yes|https://github.com/Jguer/yay/pull/447}} || {{Yes|https://github.com/Jguer/yay/pull/297}} || {{Yes}} || {{Yes|https://github.com/Jguer/yay/pull/866}} || {{Yes}} || {{Y|[https://github.com/Jguer/yay/commit/ea5a94e --ask]}} || bash, fish, zsh || {{-}} |
|} |
|} |
||
111行目: | 114行目: | ||
{{Warning|グラフィカルな AUR ヘルパーの使用は、[[システムメンテナンス# 部分的なアップグレードはサポートされていません|部分的なアップデート]] など、システムの欠陥につながる可能性があります。}} |
{{Warning|グラフィカルな AUR ヘルパーの使用は、[[システムメンテナンス# 部分的なアップグレードはサポートされていません|部分的なアップデート]] など、システムの欠陥につながる可能性があります。}} |
||
* {{App|Argon|Python で書かれた GTK3 pacman ラッパー|https://github.com/14mRh4X0r/arch-argon|{{AUR|argon}}}} |
* {{App|Argon|Python で書かれた GTK3 pacman ラッパー|https://github.com/14mRh4X0r/arch-argon|{{AUR|argon}}}} |
||
+ | * {{App|Bauh|AppImage、Debian、Arch パッケージ (AUR を含む)、Flatpak、Snap、およびネイティブ Web アプリケーションをサポートする Qt5 Python アプリ|https://github.com/vinifmor/bauh|{{AUR|bauh}}}} |
||
* {{App|Cylon|Bash で書かれた TUI pacman ラッパー|https://github.com/gavinlyonsrepo/cylon|{{AUR|cylon}}}} |
* {{App|Cylon|Bash で書かれた TUI pacman ラッパー|https://github.com/gavinlyonsrepo/cylon|{{AUR|cylon}}}} |
||
* {{App|Kalu|libalpm と [[PolicyKit]] を使った Systray 通知アイコン、オプションのアップデータ付き|https://github.com/Thulinma/kalu|{{aur|kalu}}}} |
* {{App|Kalu|libalpm と [[PolicyKit]] を使った Systray 通知アイコン、オプションのアップデータ付き|https://github.com/Thulinma/kalu|{{aur|kalu}}}} |
||
+ | * {{App|Octopi|C++ 書かれた Qt5 pacman ラッパー|https://tintaescura.com/projects/octopi|{{AUR|octopi}}}} |
||
+ | * {{App|Pacseek|Arch Linux パッケージを検索してインストールするためのターミナルユーザーインターフェイス|https://github.com/moson-mo/pacseek|{{AUR|pacseek}}}} |
||
* {{App|Pamac|Vala で書かれた {{man|3|libalpm}} を使用したスタンドアロン GTK3 パッケージマネージャ |
* {{App|Pamac|Vala で書かれた {{man|3|libalpm}} を使用したスタンドアロン GTK3 パッケージマネージャ |
||
|https://gitlab.manjaro.org/applications/pamac|{{AUR|pamac-aur}}}} |
|https://gitlab.manjaro.org/applications/pamac|{{AUR|pamac-aur}}}} |
||
− | * {{App|Pakku GUI|Python で書かれた pakku 用の GTK3 フロントエンド|{{AUR|pakku-gui}}}} |
+ | * {{App|Pakku GUI|Python で書かれた pakku 用の GTK3 フロントエンド|https://gitlab.com/mrvik/pakku-gui|{{AUR|pakku-gui}}}} |
* {{App|PkgBrowser|Python で書かれたリポジトリパッケージと AUR 用の Qt5 読み取り専用ブラウザ|https://osdn.net/projects/pkgbrowser/|{{AUR|pkgbrowser}}}} |
* {{App|PkgBrowser|Python で書かれたリポジトリパッケージと AUR 用の Qt5 読み取り専用ブラウザ|https://osdn.net/projects/pkgbrowser/|{{AUR|pkgbrowser}}}} |
||
− | * {{App|Octopi|C++ 書かれた Qt5 pacmanラッパー|https://tintaescura.com/projects/octopi|{{AUR|octopi}}}} |
||
* {{App|Yup|Go で書かれた Curses TUI pacman ラッパー|https://github.com/ericm/yup|{{AUR|yup}}}} |
* {{App|Yup|Go で書かれた Curses TUI pacman ラッパー|https://github.com/ericm/yup|{{AUR|yup}}}} |
||
2024年9月18日 (水) 19:14時点における最新版
AUR ヘルパーは Arch User Repository の利用を自動化するものです。特に、以下のタスクを自動化することができます。
- AUR で公開されているパッケージの検索。
- AUR パッケージ間の依存関係を解決する。
- AUR パッケージの取得とビルド
- ユーザーコメントのようなウェブコンテンツの取得
- AUR パッケージの投稿
Pacman はリポジトリにあるビルド済みのパッケージのアップデートだけを扱います。AUR パッケージは PKGBUILD の形で再配布され、再ビルドのプロセスを自動化するために AUR ヘルパーが必要です。しかし、パッケージ自体がアップデートされたときだけでなく、共有ライブラリの依存関係が更新されたときにもパッケージのリビルドが必要になることがあることを覚えておいてください。
用語集
比較表 の列は、以下のような意味を持ちます。
- File review
- デフォルトでは PKGBUILD をソースしない か、ユーザーに警告を出しソースされる前に PKGBUILD を手動で検査する機会を提供します。ヘルパーの中にはユーザーが検査する前に PKGBUILD をソースして、悪意のあるコードを実行させる ものがあることが知られています。
- Diff view
- パッケージの差分を閲覧する機能です。PKGBUILD の他に、
.install
や.patch
ファイルなどのファイルの変更も含まれます。 - Git クローン
- AUR からビルドファイルを取得するためにデフォルトで git-clone(1) を使います。
- 高機能パーサー
- aws-cli-gitAUR のような PKGBUILD parsing の代わりに提供されるメタデータ (RPC/.SRCINFO) を使って複雑なパッケージを扱うことができるようになりました。
- 高機能ソルバー
- ros-melodic-desktopAUR のような、複雑な依存関係を正しく解決して構築する機能。
- 分割パッケージ
- 正しくビルドしてインストールする機能
- clionAUR のように、リビルドや再インストールを何度もすることなく、同じパッケージベースから複数のパッケージを利用できます。
- jellyfinAUR のように、同じパッケージベースのパッケージに依存するパッケージを分割します。
- python-pyalsaaudioAUR と python2-pyalsaaudioAUR のように、独立してパッケージを分割することができます。
- シェルによる補完
- Tab completion はリストアップされた コマンドラインシェル で利用可能です。
比較表
検索とダウンロード
名前 | 言語 | File review | Diff view | Git クローン | 高機能パーサー | 高機能ソルバー | シェル補完 | 特記事項 |
---|---|---|---|---|---|---|---|---|
auracle-gitAUR | C++ | Yes | No | Yes | Yes | Yes | bash | ビルドオーダーの印刷 |
pbgetAUR | Python | Yes | No | Yes | Yes | – | – | – |
repoctlAUR | Go | Yes | No | No | Yes | – | bash, zsh, fish | ローカルリポジトリ |
yaahAUR | Bash | Yes | No | オプション | Yes | – | bash | – |
検索とビルド
名前 | 言語 | File review | Diff view | Git クローン | 高機能パーサー | 高機能ソルバー | 分割パッケージ | シェル補完 | 特記事項 |
---|---|---|---|---|---|---|---|---|---|
aurutilsAUR | Bash | Yes | Yes | Yes | Yes | Yes | Yes | Bash, zsh | ローカルリポジトリ ローカルパッチ、パッケージ署名、clean chroot |
bauerbillAUR | Python | Yes | No | Yes | Yes | Yes | Yes | bash, zsh | 信頼管理、ABS サポート、Powerpill の拡張。 |
PKGBUILDerAUR | Python | No | No | Yes | Yes | Yes | 部分的 | – | pb pacman ラッピング
|
ruaAUR | Rust | Yes | Yes | Yes | Yes | Yes | Yes | bash, zsh, fish | ローカルパッチ, bubblewrap, .pkg.tar 操作
|
Pacman ラッパー
名前 | 言語 | File review | Diff view | Git クローン | 高機能パーサー | 高機能ソルバー | 分割パッケージ | 危険なフラグ | シェル補完 | 特記事項 |
---|---|---|---|---|---|---|---|---|---|---|
auraAUR | Haskell | No | 部分的 | Yes | Yes | Yes | Yes | – | bash, fish, zsh | – |
aurmanAUR | Python | Yes | Yes | Yes | Yes | 部分的 | Yes | -Sy --ask |
bash, fish | fetch PGP keys |
pacaurAUR | Bash | Yes | Yes | Yes | Yes | Yes | Yes | --ask | bash, zsh | – |
pakkuAUR | Nim | Yes | Yes | Yes | Yes | Yes | Yes | -Sy | bash, zsh | – |
paruAUR | Rust | Yes | Yes | Yes | Yes | Yes | Yes | -Sy --ask |
bash, fish, zsh | ローカルリポジトリ, clean chroot |
pikaurAUR | Python | Yes | Yes | Yes | Yes | Yes | Yes | -Sy | bash, fish, zsh | dynamic users |
trizenAUR | Perl | Yes | Yes | Yes | Yes | Yes | 部分的 | – | bash, fish, zsh | – |
yayAUR | Go | Yes | Yes | Yes | Yes | Yes | Yes | --ask | bash, fish, zsh | – |
グラフィカル
- Argon — Python で書かれた GTK3 pacman ラッパー
- Bauh — AppImage、Debian、Arch パッケージ (AUR を含む)、Flatpak、Snap、およびネイティブ Web アプリケーションをサポートする Qt5 Python アプリ
- Cylon — Bash で書かれた TUI pacman ラッパー
- Kalu — libalpm と PolicyKit を使った Systray 通知アイコン、オプションのアップデータ付き
- Octopi — C++ 書かれた Qt5 pacman ラッパー
- Pacseek — Arch Linux パッケージを検索してインストールするためのターミナルユーザーインターフェイス
- Pamac — Vala で書かれた libalpm(3) を使用したスタンドアロン GTK3 パッケージマネージャ
- Pakku GUI — Python で書かれた pakku 用の GTK3 フロントエンド
- PkgBrowser — Python で書かれたリポジトリパッケージと AUR 用の Qt5 読み取り専用ブラウザ
- Yup — Go で書かれた Curses TUI pacman ラッパー
メンテナンス
- aur-out-of-date — ホストの API を使って AUR 上流の変更をチェック。
- aurpublish — git-subtree(1) を使って AUR パッケージを管理・アップロードするためのヘルパースクリプトです。githooks(5) を使って PKGBUILD の整合性を確認し、.SRCINFO を自動生成し、コミットメッセージテンプレートを作っています。
- devtools — パッケージが正しいことを確認するために、クリーンな環境 (systemd-nspawn コンテナ) でパッケージをビルドします。aurutilsAUR と clean-chroot-managerAUR でラッピングされています。
- pkgbuild-watch — 上流のウェブページに変化がないか確認。
- pkgoutofdate — PKGBUILD からソース URL を分析してバージョン番号を増やしてウェブサーバーにリクエストを送信、新しいバージョンが存在しないか確認。
その他
- aur-talk — AURコメントの取得と表示。
- aurvote-utils — AUR投票管理用ユーティリティ一式。
- haskell-aur — Aurweb RPC インターフェースにアクセスするための Haskell ライブラリ。
- package-query — libalpm(3) と AUR を検索するためのツールです。
- python3-aur — AUR パッケージ情報にアクセスし、AUR とのやりとりを自動化するための Python 3 モジュールとヘルパーユーティリティです。
- raur — Aurweb RPC インターフェース にアクセスするための Rust ライブラリです。