From e9190186a55c63363cf20cfbe6cf1121743f3a50 Mon Sep 17 00:00:00 2001 From: ranke Date: Sun, 12 May 2013 22:58:13 +0000 Subject: Build scripts used for the backport of R 3.0.0 to wheezy git-svn-id: svn+ssh://stiller/home/schatz/reps/r-backports@86 f247ebf9-aa24-0410-a698-f940e971ad2b --- README | 15 ++++++++++----- backport_others.sh | 18 +++++++++++------- backport_r-base.sh | 2 +- build_others.sh | 10 ++++++---- clean.sh | 2 +- move_wheezy64.sh | 5 +++++ 6 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 move_wheezy64.sh diff --git a/README b/README index 2e1b4b3..3d2d1fd 100644 --- a/README +++ b/README @@ -1,14 +1,16 @@ This directory contains my scripts to build backports of R software from Debian sid to older Debian distributions. -Currently (2013-04-04) I am using the following setup: +Currently I am using the following setup: ~/.pbuilderrc contains: NAME="$DIST-$ARCH" APTCACHEHARDLINK=yes DISTRIBUTION="$DIST" - DEBOOTSTRAPOPTS=("--arch" "$ARCH" "${DEBOOTSTRAPOPTS[@]}") + DEBOOTSTRAPOPTS=("--arch" "$ARCH" + "--keyring=/usr/share/keyrings/debian-archive-keyring.gpg" + "${DEBOOTSTRAPOPTS[@]}") BASETGZ="`dirname $BASETGZ`/$NAME-base.tgz" BUILDRESULT="/var/cache/pbuilder/$NAME/result/" APTCACHE="/var/cache/pbuilder/$NAME/aptcache/" @@ -27,7 +29,10 @@ backports repository setup in their /etc/apt/sources.list, as well as my local http package source where the r-base package build results are available. I have also imported the apt key of my repository inside the pbuilder chroots. -In the wheezey pbuilder images, the backports repository is not necessary. +In the wheezy pbuilder images, the backports repository is not necessary. -When using these scripts on Debian, I configure sudo to allow my normal user to use pbuilder, apt-get -and the backporting scripts +For some reason, the keyring option to debootstrap is not used (necessary on +Ubuntu) so I am passing this in the build scripts in this directory as well. + +When using these scripts on Debian, I configure sudo to allow my normal user to +use pbuilder, apt-get and the backporting scripts diff --git a/backport_others.sh b/backport_others.sh index dc74564..c154318 100644 --- a/backport_others.sh +++ b/backport_others.sh @@ -4,6 +4,7 @@ # sudo -E ./backport_others.sh # Preconditions: - shell variables DIST and ARCH +# - pbuilder chroot set up (see README) # - current R backport in /etc/apt/sources/list of pbuilder chroot # - sid sources in /etc/apt/sources/list # - ssed and cdbs installed (and maybe more) @@ -20,20 +21,23 @@ echo Architecture is $ARCH text="Recompiled on $DIST for CRAN" rbasedev="r-base-dev (>= $Rversion~$DIST$reposversion.0)" -echo $rbasedev -#apt-get update +# Update the Package listings of the host system +apt-get update +# Update the pbuilder chroot pbuilder update +# When doing a new repository, lattice, r-cran-mass and survival have to be +# built first, then nlme and rmatrix, then the rest + # single package: -for i in boot; do -# lenny packages: -#for i in boot cluster codetools foreign kernsmooth lattice mgcv nlme r-cran-class r-cran-spatial r-cran-nnet r-cran-mass rmatrix rodbc rpart survival littler; do +for i in r-cran-coda; do # squeeze/wheezy packages: -#for i in boot cluster codetools foreign kernsmooth lattice mgcv nlme r-cran-class r-cran-spatial r-cran-nnet r-cran-mass rmatrix rodbc rpart survival littler rpy rkward; do +#for i in mgcv boot cluster codetools foreign kernsmooth r-cran-class r-cran-spatial r-cran-nnet r-cran-mass rodbc rpart survival littler rpy rpy2 rkward; do +#for i in lattice nlme rmatrix mgcv boot cluster codetools foreign kernsmooth r-cran-class r-cran-coda r-cran-spatial r-cran-nnet r-cran-mass rodbc rpart survival littler rpy rpy2 rkward; do apt-get source $i cd $i-* - version=`dpkg-parsechangelog | grep ^Version | cut -f2 -d " "`~$DIST"cran".$Rversion + version=`dpkg-parsechangelog | grep ^Version | cut -f2 -d " "`~$DIST"cran3.0" dch -b -v $version --force-distribution -D $DIST-$reposversion $text ssed -i -R "/^Build-Depends/s/r-base-dev \(>= .*?\)/$rbasedev/" debian/control diff --git a/backport_r-base.sh b/backport_r-base.sh index 3dff4d1..bab72a2 100644 --- a/backport_r-base.sh +++ b/backport_r-base.sh @@ -57,7 +57,7 @@ then dch -a "debian/control: Change Build-Depends: from libtiff5-dev to libtiff-dev" fi -pbuilder update +pbuilder update --debootstrapopts "--keyring=/usr/share/keyrings/debian-archive-keyring.gpg" pdebuild --debbuildopts '-sa' --buildresult /home/ranke/svn/website/www/ranke/r-cran/$DIST-$reposversion/ -- --distribution $DIST --basetgz /var/cache/pbuilder/$DIST-$ARCH-base.tgz --aptcache /var/cache/pbuilder/$DIST-$ARCH/aptcache --buildplace /var/cache/pbuilder/$DIST-$ARCH/build if [ $? -ne 0 ]; then exit diff --git a/build_others.sh b/build_others.sh index 9d207c7..75fde95 100644 --- a/build_others.sh +++ b/build_others.sh @@ -3,10 +3,12 @@ apt-get update apt-get upgrade -# squeeze -# The first three packages are needed for others -for i in r-cran-rjags; do -#for i in cluster foreign r-cran-class r-cran-coda r-cran-spatial r-cran-nnet r-cran-mass kernsmooth mgcv rodbc rpart survival littler rpy rkward r-cran-rjags; do +# When doing a new repository, lattice, r-cran-mass and survival have to be +# built first, then nlme and rmatrix, then the rest + +# squeeze/wheezy +#for i in rmatrix survival; do +for i in cluster foreign r-cran-class r-cran-coda r-cran-spatial r-cran-nnet kernsmooth mgcv rodbc rpart littler rpy rpy2 rkward r-cran-rjags; do #for i in lattice rmatrix nlme cluster foreign r-cran-class r-cran-coda r-cran-spatial r-cran-nnet r-cran-mass kernsmooth mgcv rodbc rpart survival littler rpy rkward r-cran-rjags; do apt-get --no-install-recommends build-dep $i apt-get source $i diff --git a/clean.sh b/clean.sh index e70cb08..c880f6a 100644 --- a/clean.sh +++ b/clean.sh @@ -1,6 +1,6 @@ # Author: Johannes Ranke -for i in boot cluster codetools foreign kernsmooth lattice mgcv nlme r-cran-class r-cran-coda r-cran-mass r-cran-nnet r-cran-spatial rmatrix rodbc rpart survival littler rpy rkward jags r-cran-rjags; do +for i in boot cluster codetools foreign kernsmooth lattice mgcv nlme r-cran-class r-cran-coda r-cran-mass r-cran-nnet r-cran-spatial rmatrix rodbc rpart survival littler rpy rpy2 rkward jags r-cran-rjags; do rm -rf $i-* # build directories leftover from backporting rm $i*.dsc # source package descriptions from Debian unstable rm $i*.diff.gz # source package diffs from Debian unstable diff --git a/move_wheezy64.sh b/move_wheezy64.sh new file mode 100644 index 0000000..9e4ac37 --- /dev/null +++ b/move_wheezy64.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +# Move binary packages built in a chroot to the local repository + +mv *wheezycran3*_amd64.deb ~/svn/website/www/ranke/r-cran/wheezy-cran3 -- cgit v1.2.1