0

いくつかの静的テキスト ファイルをデータ ソースとして使用する小さなスクリプトがあります。このスクリプトの Archlinux AUR パッケージを作りたいです。/usr/bin/スクリプトをローカルのどこかに静的テキスト ファイルにインストールする予定です~/.data_files

いくつかの静的ファイルがあります: data1.txt、data2.txt、data3.txt。基本的に、スクリプトを にインストールし、ディレクトリを/usr/bin/作成し~/.data_files、そこに静的ファイルをコピーするには、パッケージ マネージャーが必要です。

このような場合、PKGBUILD をどのように設定すればよいですか?

これが私の現在のバージョンです:

# Maintainer: john doe
pkgname=myscript
pkgver=1.0
pkgrel=1
pkgdesc="test script"
arch=(any)
url="https://github.com/me/myscript"
license=('MIT')
depends=('file')
source=('https://raw.githubusercontent.com/me/myscript/master/myscript')
md5sums=('1fa410f1647700a6da3ab0ebyc52465d')

package() {
  install -D -m 755 myscript ${pkgdir}/usr/bin/myscript
}
4

1 に答える 1

1

Archlinux フォーラムの最も活発なモデレーターの 1 人がここで言った言葉を引用させてください

PKGBUILD 内のユーザーのホーム ディレクトリに触れないでください。特に、何かを削除しないでください。奇妙なバグによって悪いことが起こる可能性があるからです。

AUR のメンテナーとして、Arch Packaging Standards/usr/share/${pkgname}/でも提案されているように、静的ファイルをフォルダーに追加することをお勧めします。

これが私の提案です(エディション、提案、アドバイスのために開いています...)

# Maintainer: john doe <john at doe dot com>
pkgname=myscript
pkgver=1.0
pkgrel=1
pkgdesc="test script"
arch=(any)
url="https://github.com/me/myscript"
license=('MIT')
depends=('file')
source=('https://raw.githubusercontent.com/me/myscript/master/myscript'
      'data1.txt'
      'data2.txt'
      'data3.txt')
sha256sums=('77eff738ea7fdeee5f5707cafdf34f74e3bf8df3b8b656a08a8740a45a7e22c45a7e60c31b13c71f5ee04aff9c82ac43abb39c37b2ea6b02a6454e262f336f73'
       'sha256Ofdata1.txt'
       'sha256Ofdata2.txt'
       'sha256Ofdata3.txt')

package() {
  install -Dm755 myscript "${pkgdir}/usr/share/${pkgname}/myscript"
  install -Dm644 data1.txt "${pkgdir}/usr/share/${pkgname}/data1.txt"
  install -Dm644 data2.txt "${pkgdir}/usr/share/${pkgname}/data2.txt"
  install -Dm644 data3.txt "${pkgdir}/usr/share/${pkgname}/data3.txt"
}

md5の既知の脆弱性のため、sha256を使用しましたが、整合性チェックに他の sha* を使用することもできます。

于 2016-12-21T23:59:00.580 に答える