[arch-projects] [DEVTOOLS][PATCH 1/2] Allow makechroot options in archbuild

Dave Reisner d at falconindy.com
Tue Jan 1 19:55:14 EST 2013


On Tue, Jan 01, 2013 at 07:45:06PM -0500, Dave Reisner wrote:
> On Wed, Jan 02, 2013 at 01:42:44AM +0100, Sébastien Luttringer wrote:
> > This will allow, by example, to easily build a package with a custom pkg.
> > 
> > staging-x86_64-build -- -cI /var/cache/pacman/pkg/ldoc-1.2.0-1-any.pkg.tar.xz
> > staging-x86_64-build -- -n
> > 
> > Signed-off-by: Sébastien Luttringer <seblu at seblu.net>
> > ---
> >  archbuild.in | 16 ++++++++++++----
> >  1 file changed, 12 insertions(+), 4 deletions(-)
> > 
> > diff --git a/archbuild.in b/archbuild.in
> > index 10d33b8..44288df 100644
> > --- a/archbuild.in
> > +++ b/archbuild.in
> > @@ -3,6 +3,7 @@
> >  m4_include(lib/common.sh)
> >  
> >  base_packages=(base base-devel sudo)
> > +makechrootpkg_args=(-c -n)
> 
> You're proposing making cleaning the chroot the default? Definitely not
> needed or wanted...
> 

Nevermind. Not sure what I'm looking at.

> >  
> >  cmd="${0##*/}"
> >  if [[ "${cmd%%-*}" == 'multilib' ]]; then
> > @@ -18,13 +19,17 @@ chroots='/var/lib/archbuild'
> >  clean_first=false
> >  
> >  usage() {
> > -	echo "Usage: $cmd"
> > +	echo "Usage: $cmd [options] -- [makechrootpkg args]"
> > +	echo '    -h         This help'
> >  	echo '    -c         Recreate the chroot before building'
> >  	echo '    -r <dir>   Create chroots in this directory'
> > +	echo ''
> > +	echo "Default makechrootpkg args: ${makechrootpkg_args[*]}"
> > +	echo ''
> >  	exit 1
> >  }
> >  
> > -while getopts 'cr:' arg; do
> > +while getopts 'hcr:' arg; do
> >  	case "${arg}" in
> >  		c) clean_first=true ;;
> >  		r) chroots="$OPTARG" ;;
> > @@ -32,7 +37,10 @@ while getopts 'cr:' arg; do
> >  	esac
> >  done
> >  
> > -if [[ "$EUID" != '0' ]]; then
> > +# Pass all arguments after -- right to makepkg
> > +makechrootpkg_args=("${@:$OPTIND}")
> > +
> > +if (( EUID )); then
> >  	die 'This script must be run as root.'
> >  fi
> >  
> > @@ -71,4 +79,4 @@ else
> >  fi
> >  
> >  msg "Building in chroot for [${repo}] (${arch})..."
> > -exec setarch "${arch}" makechrootpkg -c -n -r "${chroots}/${repo}-${arch}"
> > +exec setarch "${arch}" makechrootpkg "${makechrootpkg_args[@]}" -r "${chroots}/${repo}-${arch}"
> > -- 
> > Sébastien "Seblu" Luttringer
> > 


More information about the arch-projects mailing list