本文概述了如何以自己的ABS树创建自己的pacman软件包库,库中仅包括你想放入其中的PKGBUILD文件。这对于建立本地软件包库或不含官方软件包的个人库是很有用的。
1.运行gensync,看一下命令的选项(或者读一读手册页)。简而言之,这些参数分别是PKGBUILD文件的“根目录”,在子目录中分类存放(如同ABS树一样);规则的名称及在软件数据库中的位置;包含二进制软件包的目录。
2.建立一个可用的ABS树。ABS命令(不带任何参数)将会取回官方的ABS树,然后你可以在此基础上修改,或者你也可以手工建一个。根据规则,每个PKGBUILD文件都有自己的目录,不论是官方的还是你自己建立的。如果你正在修改官方的ABS,删掉任何你不想包括在最终软件库内的目录。
3.在你的目录中保存所有你想要的二进制包。根据您自己的情况,可以使用makepkg或使用pacman下载。
4.使用正确的参数运行gensync,参见下例:gensync /var/abs /home/arch/i686/current/current.db.tar.gz /home/arch/i686/current如果二进制包存放在/home/arch/i686/current,这将建立current软件库。db.tar.gz的文件名就是你想建立的软件库的名称,一般就用存放二进包的目录的名称。
5.使用如下命令校验数据库是否包含正确的软件包。tar -tzf current.db.tar.gz | less
6.如果你高兴,还可将软件包库(包含二进包及db.tar.gz文件的目录)放到ftp或nfs服务器上。7.将软件包库加入到pacman.conf中。db.tar.gz的文件名就是软件包库的名称。你可以直接使用file://引用。如果你通过ftp访问的话,就使用ftp://localhost/path/to/directory。