|
I've managed to hack abs so it will sync testing. Here are the files:
>>我修改了abs的一些文件以使它同步testing分支,下面就是这些文件:
--- /usr/bin/abs --
- #!/bin/bash
- [ -f /etc/abs/abs.conf ] && source /etc/abs/abs.conf
- usage() {
- echo "Arch Build System -- synchronization utility"
- echo "usage: $0 [repository1 [repository2 ...]]"
- echo
- echo "abs will synchronize PKGBUILD scripts from the CVS
- repository"
- echo "into $ABSROOT. You can follow different package trees
- by"
- echo "editing /etc/abs/supfile.* files. If no argument is
- given, abs "
- echo "will synchronize from supfiles specified in
- /etc/abs/abs.conf"
- }
- update() {
- cd $ABSROOT
- for sup in "${SUPFILES[@]}"; do
- if [ "$sup" != "testing" ]; then
- if [ "$sup" = "${sup#!}" ]; then
- cvsup -L 1 -r 0 -g -b $ABSROOT -c .sup
- /etc/abs/supfile.$sup
- fi
- elif [ "$sup" = "testing" ]; then
- if [ ! -d /var/abs/testing ]; then
- mkdir /var/abs/testing; fi
- cd $ABSROOT/testing
- cvsup -L 1 -r 0 -g -b $ABSROOT/testing
- -c .sup /etc/abs/supfile.testing
- cd $ABSROOT
- fi
- done
- }
- if [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
- usage
- exit 0
- fi
- if [ ! -w $ABSROOT ]; then
- echo "abs: no write permissions in $ABSROOT"
- exit 1
- fi
- if [ ! `type -p cvsup` ]; then
- echo "abs: cvsup was not found in PATH. Install cvsup"
- exit 1
- fi
- if [ ! -d "$ABSROOT" ]; then
- echo "abs: directory $ABSROOT does not exist"
- exit 1
- fi
- if [ "$#" -ne "0" ]; then
- SUPFILES=("$@")
- fi
- update
- exit 0
复制代码
--- /etc/abs/supfile.testing ---
- #
- # /etc/abs/supfile
- #
- # this is the host containing the master ABS files
- *default host=cvs.archlinux.org
- *default release=cvs
- *default delete
- *default use-rel-suffix
- *default compress
- *default tag=TESTING
- arch
- extra
复制代码
Whack those into their appropriate places, pop 'testing' into the
supfiles array in abs.conf, and run abs. You should be golden.
>>把这些文件放到应在的位置(别忘了改权限)。再在/etc/abs/abs.conf里的SUPFILES
>>里加入testing,然后执行abs。
~Celti |
|