On 16/02/2009, at 10:57 PM, Dan McGee wrote:
On Mon, Feb 16, 2009 at 3:32 AM, Sebastian Nowicki
<[email protected]> wrote:
On 16/02/2009, at 5:24 PM, Xavier wrote:
On Mon, Feb 16, 2009 at 4:17 AM, Dan McGee <[email protected]>
wrote:
Wow indeed, I always read the old version wrongly, I just realized
the
old for was split on two lines :
- for line in $(bsdtar -xOf "$pkgfile" .PKGINFO | \
- grep -v "^#" | sed 's|\(\w*\)\s*=\s*\(.*\)|
\1="\2"|'); do
How about keeping that part, and just `read`ing the values in:
for line in $(bsdtar -xOf "$pkgfile" .PKGINFO | \
grep -v "^#" | sed 's|\(\w*\)\s*=\s*\(.*\)|\1 "\2"|'); do
echo $line | read var val
declare $var="$val"
# Rest is just as in the patch
done
I haven't actually tested it since the regex is somewhat faulty on
Mac OS X
for some reason, and I'm too lazy to boot Arch up :P.
When you do test it, I would put my money on it being broken the same
way the original one is. :)
*pays up*
Indeed, it's broken. I didn't think that the for loop would be the
problem. Fortunately this lead to a slightly smaller, albeit less
legible, loop instead:
$ bsdtar -xOf "$pkgfile" .PKGINFO | grep -v "^#" | sed 's|\(\w*\)\s*=
\s*\(.*\)|\1 \2|' | while read var val; do echo declare $var=\"$val\";
done
declare pkgname="perl-bit-vector"
declare pkgver="6.4-3"
declare pkgdesc="Efficient bit vector, set of integers and "big int"
math library"
declare url="http://search.cpan.org/dist//"
declare builddate="1200021098"
declare packager="Eric Belanger <[email protected]>"
declare size="463896"
declare arch="x86_64"
declare license="GPL"
declare license="LGPL"
declare license="PerlArtistic"
declare depend="perl-carp-clan"
declare depend="perl>=5.10.0"
Seems to work fine on the package in question.
_______________________________________________
pacman-dev mailing list
[email protected]
http://www.archlinux.org/mailman/listinfo/pacman-dev