[aur-dev] [PATCH] Commit version of communitypkg in current use.

Loui louipc.ist at gmail.com
Mon Nov 3 21:46:24 EST 2008


I'm going ahead and pushing this.

-------------- next part --------------
>From 100451a9665cb387eeae2cb06cc22870cfd57c82 Mon Sep 17 00:00:00 2001
From: Loui Chang <louipc.ist at gmail.com>
Date: Sun, 2 Nov 2008 18:26:43 -0500
Subject: [PATCH] Commit version of communitypkg in current use.

Signed-off-by: Loui Chang <louipc.ist at gmail.com>
---
 tupkg/client/communitypkg |  163 +++++++++++++++++++++++++++++----------------
 1 files changed, 105 insertions(+), 58 deletions(-)

diff --git a/tupkg/client/communitypkg b/tupkg/client/communitypkg
index 5073dcc..8579273 100644
--- a/tupkg/client/communitypkg
+++ b/tupkg/client/communitypkg
@@ -1,85 +1,132 @@
 #!/bin/bash
 
-source /etc/makepkg.conf
+# Source makepkg.conf; fail if it is not found
+if [ -r "/etc/makepkg.conf" ]; then
+	source "/etc/makepkg.conf"
+else
+    echo "/etc/makepkg.conf not found!"
+    exit 1
+fi
 
-#cmd=`basename $0`
+# Source user-specific makepkg.conf overrides
+if [ -r ~/.makepkg.conf ]; then
+	source ~/.makepkg.conf
+fi
 
-#if echo *.pkg.tar.gz | grep ' ' >/dev/null 2>&1; then
-#	echo "Too many packages in current dir"
-#	exit 1
-#fi
-#
-#if [ ! -f *.pkg.tar.gz ]; then
-#	echo "No package file"
-#	exit 1
-#fi
-#
-#pkgfile=`echo *.pkg.tar.gz`
-#pkg=`echo *.pkg.tar.gz | rev | cut -d- -f 3- | rev`
-#ver=`echo *.pkg.tar.gz | rev | cut -d- -f -2 | rev | sed 's/\.pkg\.tar\.gz//'`
+cmd=`basename $0`
 
 if [ ! -f PKGBUILD ]; then
-	echo "No PKGBUILD file"
-	exit 1
+    echo "No PKGBUILD file"
+    exit 1
+fi
+
+# define tags and staging areas based on architecture
+if [ "$CARCH" = "i686" ]; then
+    currenttag='CURRENT'
+    testingtag='TESTING'
+    suffix=''
+elif [ "$CARCH" = "x86_64" ]; then
+    currenttag='CURRENT-64'
+    testingtag='TESTING-64'
+    suffix='64'
+else
+    echo "CARCH must be set to a recognized value!"
+    exit 1
 fi
 
 source PKGBUILD
-pkgfile=${pkgname}-${pkgver}-${pkgrel}.pkg.tar.gz
+pkgfile=${pkgname}-${pkgver}-${pkgrel}-${CARCH}.pkg.tar.gz
+oldstylepkgfile=${pkgname}-${pkgver}-${pkgrel}.pkg.tar.gz
 
 if [ ! -f $pkgfile ]; then
-	echo "File $pkgfile doesn't exist"
-	exit 1
+    if [ -f $PKGDEST/$pkgfile ]; then
+        pkgfile=$PKGDEST/$pkgfile
+        oldstylepkgfile=$PKGDEST/$oldstylepkgfile
+    elif [ -f $oldstylepkgfile ]; then
+        pkgfile=$oldstylepkgfile
+    elif [ -f $PKGDEST/$oldstylepkgfile ]; then
+        pkgfile=$PKGDEST/$oldstylepkgfile
+    else
+        echo "File $pkgfile doesn't exist"
+        exit 1
+    fi
 fi
 
-repo="community"
-tag="CURRENT"
-#if [ "$cmd" == "extrapkg" ]; then
-#	repo="extra"
-#	tag="CURRENT"
-#elif [ "$cmd" == "currentpkg" ]; then
-#	repo="current"
-#	tag="CURRENT"
-#elif [ "$cmd" == "testingpkg" ]; then
-#	repo="testing"
-#	tag="TESTING"
-#elif [ "$cmd" == "unstablepkg" ]; then
-#	repo="unstable"
-#	tag="CURRENT"
-#fi
+if [ "$cmd" == "extrapkg" ]; then
+    repo="extra"
+    tag="$currenttag"
+elif [ "$cmd" == "corepkg" ]; then
+    repo="core"
+    tag="$currenttag"
+elif [ "$cmd" == "testingpkg" ]; then
+    repo="testing"
+    tag="$testingtag"
+elif [ "$cmd" == "unstablepkg" ]; then
+    repo="unstable"
+    tag="$currenttag"
+elif [ "$cmd" == "communitypkg" ]; then
+    repo="community"
+    tag="$currenttag"
+fi
 
-#scp $pkgfile archlinux.org:/home/ftp/$repo/os/$CARCH
-if [ ! -f ~/.tupkg ]; then
-	echo "Must configure tupkg via ~/.tupkg, cancelled"
-	exit 1
+# 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
+
+if [ "$repo" != "community" ]; then
+    # combine what we know into a variable (suffix defined based on $CARCH)
+    uploadto="staging/${repo}${suffix}/add/$(basename ${pkgfile})"
+    scp ${scpopts} "${pkgfile}" "archlinux.org:${uploadto}"
+    if [ "$(md5sum "${pkgfile}" | cut -d' ' -f1)" != "$(ssh archlinux.org md5sum "${uploadto}" | cut -d' ' -f1)" ]; then
+        echo "File got corrupted during upload, cancelled."
+        exit 1
+    else
+        echo "File integrity okay."
+    fi
+else
+    if [ ! -f ~/.tupkg ]; then
+        echo "Must configure tupkg via ~/.tupkg, cancelled"
+        exit 1
+    fi
+    if [ "$(basename $pkgfile)" != "$(basename $oldstylepkgfile)" ]; then
+        echo "Renaming makepkg3 package for compatability"
+        mv $pkgfile $oldstylepkgfile
+        pkgfile=$oldstylepkgfile
+    fi
+    tupkg $pkgfile
 fi
-tupkg $pkgfile
 if [ $? -ne 0 ]; then
-	echo "Cancelled"
-	exit 1
+    echo "Cancelled"
+    exit 1
 fi
 echo "===> Uploaded $pkgfile"
 
 if [ "$1" != "" ]; then
-cvs commit -m "upgpkg: $pkgname $pkgver-$pkgrel
-$1" > /dev/null
-if [ $? -ne 0 ]; then
-	echo "Cancelled"
-	exit 1
-fi
-echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel
-$1\" message"
+    cvs commit -m "upgpkg: $pkgname $pkgver-$pkgrel
+    $1" > /dev/null
+    if [ $? -ne 0 ]; then
+        echo "Cancelled"
+        exit 1
+    fi
+    echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel
+    $1\" message"
 else
-cvs commit -m "upgpkg: $pkgname $pkgver-$pkgrel" > /dev/null
-if [ $? -ne 0 ]; then
-	echo "Cancelled"
-	exit 1
-fi
-echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message"
+    cvs commit -m "upgpkg: $pkgname $pkgver-$pkgrel" > /dev/null
+    if [ $? -ne 0 ]; then
+        echo "Cancelled"
+        exit 1
+    fi
+    echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message"
 fi
 
 cvs tag -c -F -R $tag > /dev/null
 if [ $? -ne 0 ]; then
-	echo "Cancelled"
-	exit 1
+    echo "Cancelled"
+    exit 1
 fi
 echo "===> Tagged as $tag"
+
+# vim:ft=sh:ts=4:sw=4:et:
-- 
1.6.0.3



More information about the aur-dev mailing list