[arch-dev-public] rebuilding the whole core repo

Daniel Isenmann daniel.isenmann at gmx.de
Tue Nov 6 12:41:45 EST 2007


On Tue, 6 Nov 2007 17:32:48 +0100
Daniel Isenmann <daniel.isenmann at gmx.de> wrote:

> > > Let me do some more work on it. After the first run, I will post
> > > here some showstoppers for automatic rebuilds (e.g. source not
> > > found or wrong md5sums and such things for fixing it in the
> > > PKGBUILD).

Ok, here is a first list of packages which have wrong sources, md5sums
or dependencies. Only for category "core/base", rest is following (maybe
tonight or tomorrow):

e2fsprogs:	
	makedepends on 'bc', which is in extra
file:
	failure on getting source, server doesn't exist anymore
gcc-libs:
	==> Starting build()...
	You need the de_DE locale to build gcc.
	==> ERROR: Build Failed.  Aborting...
	very strange!!!!
glibc:
	failure on getting source, wrong:
	ftp://ftp.archlinux.org/other/glibc-patches-2.7-3.tar.bz2 right:
	ftp://ftp.archlinux.org/other/glibc/glibc-patches-2.7-3.tar.bz2
iputils:
	makedepends on 'jade', which is in extra
kernel26:
	wrong md5sum for file config
klibc-extras:
	failure on getting source, wrong:
	http://ftp.archlinux.org/other/klibc-extras/klibc-extras-2.3.tar.bz2
	right:
	ftp://ftp.archlinux.org/other/klibc-extras/klibc-extras-2.3.tar.bz2
pacman:
	makedepend on 'doxygen', which is in extra
reiserfsprogs:
	failure on getting source, connection timed out on server
syslog-ng:
	makedepend on 'glib2', which is in extra
vi:
		----snip---
	having patch file:7.1.147
        having patch file:7.1.148
	Number of patches does not match the patchlevel!
	Edit the PKGBUILD accordingly!
	==> ERROR: Build Failed.  Aborting...


That's all from core/base. I'm not saying, that I'm totally right on
that, but that are the errors which makepkg/makeworld reported.

> Even if it isn't fully complete, feel free to post it here for people
> to look it over and offer suggestions and maybe help. Of course, we
> don't want another bikeshed here, but a second (and third and...) set
> of eyes always helps.

Sure I can, but it is only very small. What I have said, need some
improvements. It was just a proof of concepts, if an automated rebuild
of a repo is scriptable. I know, that makeworld is a little bit
outdated, but it works very well for this. Here it comes:

---------------begin----------------
#!/bin/bash

#increment all pkgrel
for i in `find -name PKGBUILD`;do

        #getting pkgrel number after =
        package_pkgrel=`cat $i | grep pkgrel= | cut -d'=' -f 2`

        #extract number before dot in pkgrel
        beforedot=`echo $package_pkgrel | cut -n -d'.' -f 1`
        
        #add 1 to pkgrel
        new_pkgrel=$[$beforedot+1]

        #write it back to PKGBUILD
        sed -i "s:pkgrel=${package_pkgrel}:pkgrel=${new_pkgrel}:g" $i
done

build base
makeworld -S -r -i --noconfirm -c -f ~/packages_rebuild base
-------------end--------------------

Daniel






More information about the arch-dev-public mailing list