Backport Gnash

De Cliss XXI
Révision datée du 21 juillet 2008 à 15:32 par imported>SylvainBeucler
Sauter à la navigation Sauter à la recherche

Almost all dependencies are available in Etch, so it's pretty easy to install.

Only 'base-files' needs to be backported, and it was already uploaded at backports.org by another backporter. This is an opportunity to try out automated and minimal dependency support for pbuilder.

Note: eventually this was a bit more complex than that; in particular, for licensing reasons, Qt3 needed to be backported as well (because that backported version was released under the GPLv3, while Etch's was GPLv2 only). See http://lists.backports.org/lurker-bpo/message/20080408.192906.84b6a444.en.html

  • Enable backports repository:
cowbuilder --login --save-after-login
echo "deb http://network/mirrors/debian-backports.org etch-backports main" > /etc/apt/sources.list.d/bpo.list
wget -O - http://backports.org/debian/archive.key | apt-key add -
aptitude update
  • In /etc/pbuilderrc, use the 'experimental' method to satisfy dependencies:
PBUILDERSATISFYDEPENDSCMD="/usr/lib/pbuilder/pbuilder-satisfydepends-experimental

Normally the backports repository will not be used, because it has a default priority of -1. With the 'experimental' method (meant for the Debian experimental repository), backports dependencies will be used, but only if no Stable dependency could be found first, which is exactly what we want.

The dependencies are already edited for use in backports.org (e.g. base-files (>= 4.0.1~)) so we don't have to do any change to the package. Marvelous. Build-Depends dependencies are not edited though so we still need to change it there (this will be fixed in the next package upload [1]).

We can proceed with the backport:

yes | dch -D etch-backports \
  --newversion $(dpkg-parsechangelog | sed -ne 's,^Version: ,,p')~bpo40+1 \
  --force-bad-version -- \
  "Rebuild for Debian Backports <http://www.backports.org/>"
sed -i -e "s/Uploaders:\(.*\)/Uploaders:\1, $DEBFULLNAME <$DEBEMAIL>/" debian/control
# TODO: --pbuildersatisfydepends doesn't work, why?
#pdebuild --pbuilder cowbuilder --pbuildersatisfydepends /usr/lib/pbuilder/pbuilder-satisfydepends-experimental
# Meanwhile we edit /etc/pbuilderrc manually
pdebuild --pbuilder cowbuilder --debbuildopts '-sa'
# If you're compiling from Lenny:
#pdebuild --pbuilder cowbuilder -- --basepath /var/cache/pbuilder/base-etch.cow --debian-etch-workaround --debbuildopts '-sa'

Back to Backports.