「.SRCINFO」の版間の差分
(→生成) |
(他言語へのリンクを追加) |
||
1行目: | 1行目: | ||
[[Category:パッケージ開発]] |
[[Category:パッケージ開発]] |
||
[[en:.SRCINFO]] |
[[en:.SRCINFO]] |
||
+ | [[pt:.SRCINFO]] |
||
+ | [[ru:.SRCINFO]] |
||
[[zh-hans:.SRCINFO]] |
[[zh-hans:.SRCINFO]] |
||
{{Related articles start}} |
{{Related articles start}} |
2023年6月27日 (火) 15:44時点における版
関連記事
.SRCINFO
ファイルにはパッケージのメタデータが記述されています。わかりやすいフォーマットが使われており、AUR のウェブバックエンドや AUR ヘルパーは .SRCINFO
ファイルを使用することで PKGBUILD を直接パースしなくてもパッケージのメタデータを取得することができます。シェルスクリプトのパースによって起こる問題については FS#25210, FS#15043, FS#16394 などがあります。
生成
.SRCINFO
ファイルは以下のように makepkg を使って生成することができます。
$ makepkg --printsrcinfo > .SRCINFO
構文
.SRCINFO
ファイルは key = value
の組み合わせからなり、さらに複数のセクションに分かれています。
キーの名前は PKGBUILD 変数 と同じです。キーや値をクォートで囲う必要はありません。また、PKGBUILD
の中で配列として記述されるデータは同じキーを使って複数回記述されます。例えば、以下は同じ内容になります:
# PKGBUILD arch=(i686 x86_64)
# .SRCINFO arch = i686 arch = x86_64
ファイルのメインセクションは pkgbase の宣言から始まり、それからパッケージのデータを記述します。単体のパッケージしか定義していない標準的な PKGBUILD
の場合、セクションは一つだけとなり、pkgbase と同じ値を持った pkgname の宣言がセクションの後に続きます:
pkgbase = foo pkgdesc = An example package. [...] md5sums = SKIP pkgname = foo
分割 PKGBUILD
の場合、各セクションの先頭に pkgname
がきて、その後ろに各パッケージのデータを記述します。
仕様
以下のフィールドは .SRCINFO
ファイルの pkgbase
セクションの中で一回だけしか使うことができません:
pkgver
,pkgrel
,epoch
以下のフィールドは全てのセクションの中で一回だけしか使うことができません:
pkgdesc
,url
,install
,changelog
以下のフィールドは複数回使用して複数の値を記述することができます:
arch
groups
license
noextract
options
backup
validpgpkeys
以下のフィールドは複数のアーキテクチャを指定することができます:
source_x86_64 = https://foo.bar/file.tar.gz source_i686 = https://foo.bar/file_i686_patch.tar.gz
source
depends
,checkdepends
,makedepends
,optdepends
provides
,conflicts
,replaces
md5sums
,sha1sums
,sha224sums
,sha256sums
,sha384sums
,sha512sums
他の名前のフィールドは無視されます。空行やハッシュ記号 (#
) が先頭に付いているコメント行も同じく無視されます。インデントは自由に追加できます。