我有一个小脚本,它使用一些静态文本文件作为数据源。我想为这个脚本制作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
}
答案 0 :(得分:1)
让我引用Archlinux论坛最活跃的主持人之一时说here:
请勿触摸PKGBUILD中的用户主目录,尤其是不要删除内容,因为 weird bugs 可以执行 bad things 。
现在作为AUR的维护者,我建议将您的静态文件添加到/usr/share/${pkgname}/
文件夹中,因为它也在Arch Packaging Standards中建议
以下是我的建议(对版本,建议,建议开放......):
# 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 *进行完整性检查。