向AUR提交软件包
这个以前一直想写来着,不过免费的VPS挂掉了就一直没写。现在正好赶上有一个包需要更新加上博客也迁移成功,就事记录一下。省的以后更新包的时候忘记怎么弄。
官方wiki上的介绍
Arch用户软件仓库(Arch User Repository,AUR)是为用户而建、由用户主导的Arch软件仓库。AUR中的软件包以软件包生成脚本(PKGBUILD)的形式提供,用户自己通过makepkg生成包,再由pacman安装。创建AUR的初衷是方便用户维护和分享新软件包,并由官方定期从中挑选软件包进入community仓库。
开始
首先,需要一个AUR的帐户,打开 https://aur.archlinux.org/register/
注册。
密钥
生成密钥
wiki上面要求创建一个新的密钥(而不是用旧的),这样出问题时可以直接废除密钥。
1 | ssh-keygen -t rsa -C "your@mail.com" |
添加到AUR
登录刚刚注册的AUR用户,点击我的帐户。把刚刚生成的aur_rsa.pub文件的内容粘贴到 SSH Public Key 的框框里面。然后更新。
修改SSH配置
如果不修改SSH配置文件的话,SSH是找不到刚刚新建的密钥的。
编辑~/.ssh/config文件。
1 | # AUR |
这样写就像是别名一样,之后可以用 aur 代替 HostName 的 aur.archlinux.org 。
提交PKGBUILD
创建仓库
克隆不存在的仓库会自动创建此仓库。
1 | git clone git://aur/package_name.git |
这时当前目录会多出一个以软件包名命名的目录,接着把PKGBUILD之类的文件放到里面并cd进去。
提交或更新
1 | makepkg --printsrcinfo > .SRCINFO #生成.SRCINFO |
.SRCINFO是记录软件包元数据的文件,AUR工具和网站后端需要。并且每次提交或是更新前都需要生成。
大功告成
这样的话一个软件包就提交完成了。(当初为了这个包在网上查来查去查了好久
更新的包叫kde-thumbnailer-epub
,是dolphin用来显示ePub文件缩略图的软件。喜欢看书的我怎么能容忍ePub没有封面呢。