On 04/29/2011 11:59 PM, Calvin Morrison wrote: > Also Baho, > > you don't seem to have included mkarchchroot, so i can't even use your system. > > Calvin Morrison > by running make in the scripts directory gives you the instructions for using the system. All that is needed is to add the user to sudo - visudo, the build system requires sudo pacman -S devtools - install devtools for building in clean chroot mkdir -vp /home/build/scripts - create build directory cp -var <where scripts are> /home/build/scripts - copy the scripts into build directory cd /home/build/scripts - make mkchroot - uses mkarchroot to create clean chroot and checks out the svn code - if svn co failes then use make update to complete the svn check out make trinity - builds packages here is the entry in the Makefile that installs the archroot create a local repo and checks out the source mkchroot: sudo mkarchroot $(CHROOTDIR)/root base base-devel sudo sudo mkdir $(CHROOTDIR)/root/repo sudo chmod 777 $(CHROOTDIR)/root/repo sudo mkdir $(CHROOTDIR)/trinity.source sudo chmod 777 $(CHROOTDIR)/trinity.source sudo mkdir -vp $(CHROOTDIR)/root/trinity.source sudo chmod 777 $(CHROOTDIR)/root/trinity.source (cd $(CHROOTDIR)/trinity.source; svn checkout svn://anonsvn.kde.org/home/kde/branches/trinity ./) (cd $(CHROOTDIR)/trinity.source; svn cleanup) (cd $(CHROOTDIR)/trinity.source; svn update) The mkarchroot is handled by the Builder.sh script This updates the chroot ( sudo /usr/sbin/mkarchroot -u ${_chroot}/root 2>&1 | tee ${_date}build.log && exit ${PIPESTATUS} ) This builds the package in a clean chroot ( sudo /usr/sbin/makechrootpkg -c -r ${_chroot} 2>&1 | tee -a ${_date}build.log && exit ${PIPESTATUS} ) #!/bin/bash -e _pgm=${0##*/} # whoami _path=${0%/*} # fetch directory name = module name _pwd=$(pwd) _chroot="/home/build" _date=$(date +%F)"-"$(date +%R)"-" _repos="/home/build/root/repo" _pkgname="*.pkg.tar*" # Check parameters #[ -n ${1} ] || ( echo "Missing package name arg: ${1}";exit 1 ) #[ -d ${_svnsrc}/${_module} ] || ( echo "Missing source directory: ${_svnsrc}/${_module}";exit 1 ) [ -d ${_path} ] || ( echo "Missing directory: ${_path}";exit 2 ) [ -f "${_path}/PKGBUILD" ] ||( echo "Missing PKGBUILD";exit 3 ) cd ${_path} _date="" rm build.log namcap.log filelist.log || true # update chroot and build package echo "Building---> ${_path}" ( sudo /usr/sbin/mkarchroot -u ${_chroot}/root 2>&1 | tee ${_date}build.log && exit ${PIPESTATUS} ) ( sudo /usr/sbin/makechrootpkg -c -r ${_chroot} 2>&1 | tee -a ${_date}build.log && exit ${PIPESTATUS} ) # Namcap package _pkg=$(find . -name "${_pkgname}" -print) [ -f ${_pkg} ] || ( echo "Missing package: ${_pkgname}";exit 4 ) ( /usr/bin/namcap ${_pkg} 2>&1 | tee ${_date}namcap.log && exit ${PIPESTATUS} ) ( /bin/tar -tf ${_pkg} 2>&1 | tee ${_date}filelist.log && exit ${PIPESTATUS} ) # Me and my repo mv -vf ${_pkg} ${_repos} /usr/bin/repo-add ${_repos}/local.db.tar.gz ${_repos}/${_pkg} exit 0 If you want to build without a clean chroot then just set the following in each PKGBUILD file _source="/trinity.source" - where the source is ex: _source="/home/build/trinity.source/dependencies/tqtinterface" _prefix="/usr" - where you want the package to install _builddir=BUILD - where you want the out of source build directory ex: _builddir="/tmp/builddir" then makepkg -c - builds it package will be in the build directory