On Tue, Sep 1, 2009 at 8:43 AM, Allan McRae<allan@archlinux.org> wrote:
Allan McRae wrote:
Eric Bélanger wrote:
On Tue, Sep 1, 2009 at 1:43 AM, Allan McRae<allan@archlinux.org> wrote:
Eric Bélanger wrote: At least two are not yet, but I have them on a local working branch: - makechrootpkg: fixed copying of .install file to chroot for split packages - devtools: clean up of commitpkg
Let me know if there are any others that I missed.
These are the only ones that haven't been commited yet.
Great - I will push those when I get home from the office.
All pushed now. @Eric: you should look into creating git format patches. It makes applying them much easier (especially keeping attribution data - I didn't know how to keep you as the author so I added a Patch-by line).
Allan
Hi, Here's a patch inline and attachedfor split support in commitpkg. It's in git format. Let me know if the patch is incorrect git-wise. BTW, I haven't tested it as I don't have any split package to update. Eric ======
From 58ae91541350c5f7868420c3f09d8876ed5c406d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eric=20B=E9langer?= <snowmaniscool@gmail.com> Date: Tue, 1 Sep 2009 22:35:25 -0400 Subject: [PATCH] commitpkg: Added split package support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit
All packages created by the PKGBUILD are uploaded to the staging directory. The output and svn commit messages uses pkgbase instead of pkgname. Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> --- commitpkg | 112 +++++++++++++++++++++++++++++++----------------------------- 1 files changed, 58 insertions(+), 54 deletions(-) diff --git a/commitpkg b/commitpkg index a7078e7..4341507 100755 --- a/commitpkg +++ b/commitpkg @@ -26,76 +26,80 @@ if [ -z "$CARCH" ]; then fi source PKGBUILD -pkgfile=${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} -anypkgfile=${pkgname}-${pkgver}-${pkgrel}-any${PKGEXT} +pkgbase=${pkgbase:-${pkgname[0]}} -if [ ! -f $pkgfile ]; then - if [ -f $PKGDEST/$pkgfile ]; then - pkgfile=$PKGDEST/$pkgfile - anypkgfile=$PKGDEST/$anypkgfile - elif [ -f $anypkgfile ]; then - pkgfile=$anypkgfile - CARCH=any - elif [ -f $PKGDEST/$anypkgfile ]; then - pkgfile=$PKGDEST/$anypkgfile - CARCH=any - else - echo "File $pkgfile doesn't exist" - exit 1 +for _pkgname in ${pkgname[@]}; do + pkgfile=${_pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} + anypkgfile=${_pkgname}-${pkgver}-${pkgrel}-any${PKGEXT} + + if [ ! -f $pkgfile ]; then + if [ -f $PKGDEST/$pkgfile ]; then + pkgfile=$PKGDEST/$pkgfile + anypkgfile=$PKGDEST/$anypkgfile + elif [ -f $anypkgfile ]; then + pkgfile=$anypkgfile + CARCH=any + elif [ -f $PKGDEST/$anypkgfile ]; then + pkgfile=$PKGDEST/$anypkgfile + CARCH=any + else + echo "File $pkgfile doesn't exist" + exit 1 + fi fi -fi # set up repo-specific opts depending on how we were called -server="gerolde.archlinux.org" -if [ "$cmd" == "extrapkg" ]; then - repo="extra" -elif [ "$cmd" == "corepkg" ]; then - repo="core" -elif [ "$cmd" == "testingpkg" ]; then - repo="testing" -elif [ "$cmd" == "communitypkg" ]; then - repo="community" - server="aur.archlinux.org" -else - if [ $# -eq 0 ]; then - echo "usage: commitpkg <reponame> [-l limit] [commit message]" - exit 1 + server="gerolde.archlinux.org" + if [ "$cmd" == "extrapkg" ]; then + repo="extra" + elif [ "$cmd" == "corepkg" ]; then + repo="core" + elif [ "$cmd" == "testingpkg" ]; then + repo="testing" + elif [ "$cmd" == "communitypkg" ]; then + repo="community" + server="aur.archlinux.org" + else + if [ $# -eq 0 ]; then + echo "usage: commitpkg <reponame> [-l limit] [commit message]" + exit 1 + fi + repo="$1" + shift fi - repo="$1" - shift -fi # see if any limit options were passed, we'll send them to SCP -unset scpopts -if [ "$1" = "-l" ]; then - scpopts="$1 $2" - shift 2 -fi + unset scpopts + if [ "$1" = "-l" ]; then + scpopts="$1 $2" + shift 2 + fi # combine what we know into a variable -uploadto="staging/${repo}/$(basename ${pkgfile})" -scp ${scpopts} "${pkgfile}" "${server}:${uploadto}" -if [ "$(md5sum "${pkgfile}" | cut -d' ' -f1)" != "$(ssh ${server} md5sum "${uploadto}" | cut -d' ' -f1)" ]; then - echo "File got corrupted during upload, cancelled." - exit 1 -else - echo "File integrity okay." -fi + uploadto="staging/${repo}/$(basename ${pkgfile})" + scp ${scpopts} "${pkgfile}" "${server}:${uploadto}" + if [ "$(md5sum "${pkgfile}" | cut -d' ' -f1)" != "$(ssh ${server} md5sum "${uploadto}" | cut -d' ' -f1)" ]; then + echo "File got corrupted during upload, cancelled." + exit 1 + else + echo "File integrity okay." + fi -if [ $? -ne 0 ]; then - echo "Cancelled" - exit 1 -fi -echo "===> Uploaded $pkgfile" + if [ $? -ne 0 ]; then + echo "Cancelled" + exit 1 + fi + echo "===> Uploaded $pkgfile" +done if [ "$1" != "" ]; then - svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel + svn commit -m "upgpkg: $pkgbase $pkgver-$pkgrel $1" > /dev/null if [ $? -ne 0 ]; then echo "Cancelled" exit 1 fi - echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel + echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel $1\" message" else svn commit >/dev/null @@ -103,7 +107,7 @@ else echo "Cancelled" exit 1 fi - echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message" + echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel\" message" fi archrelease $repo-$CARCH -- 1.6.4.1