Bootstrap a debian build environment and build source packages with no root privileges
Posted
by
Erwan Queffélec
on Server Fault
See other posts from Server Fault
or by Erwan Queffélec
Published on 2012-11-10T23:46:33Z
Indexed on
2012/11/11
5:04 UTC
Read the original article
Hit count: 465
On debian squeeze
, I am trying to do the following :
- fetch sources package from the
wheezy
source repository - bootstrap a
squeeze
chroot for several architectures - build the packages for several architectures (
i386
,amd64
+all
andany
)
I want both the fetching, bootstrapping and build operation to be scriptable, repeatable, and run as a normal user. For the environment setup, I want to make as little use of the root
account as possible (install the necessary dependencies, and maybe some visudo
stuff). If possible I would like to avoid using a VM (pbuilder with user mode linux
)
So far I have tried several things with pbuilder
(require root
), debootstrap
(require root
) with little success.
Here is an example script of what I want to do (does not work):
#/bin/bash
set -e
set -x
this=`readlink -f $0`
this_dir=`dirname $this`
archs='i386 amd64 any all'
pushd $this_dir/src
# I actually want the following line to work with a repo that
# is not in /etc/apt/sources.list but that is another question
apt-get source cyrus-imapd-2.4
popd
for arch in $archs
do
build_dir=$this_dir/build/$arch/
pbuilder --create --configfile $build_dir/pbuilderrc --buildresult $build_dir/
pbuilder --build --configfile $build_dir/pbuilderrc --buildresult \
$build_dir/ $this_dir/src/*.dsc
# of course I want to use the .dput.cf in /home/myuser/
# and not in /root/
dput $build_dir/$arch/*.changes
done
© Server Fault or respective owner