Backport hplip

De Cliss XXI
Révision datée du 19 octobre 2006 à 12:19 par imported>SylvainBeucler
Sauter à la navigation Sauter à la recherche

I needed a newer version of hpijs to support a new printer.

Notes to sort:

- PENSER D'ABORD À REGARDER CE QU'A FAIT LE MAINTENEUR PRÉCÉDENT!!!!!!
dget http://backports.org/debian/pool/main/h/hplip/hplip_0.9.7-3bpo1.dsc
dpkg-source -x hplip_0.9.7-3bpo1.dsc
debian/changelog:
  * Backport of sid release 0.9.7-4 (no changes needed)
-> Last backport was trivial. Let's hope this one will be as well :)

- apt-get build-dep complains about libsnmp9-dev missing... Weird.
Switching libsnmp9-dev | libsnmp5-dev to libsnmp5-dev | libsnmp9-dev in /var/lib/apt/... does the trick.

- missing python-support
-> apparently related to the new python policy. A recent discussion on the list concluded that it is best not to follow the new python policy and hence avoid requiring a backported python.

Comment the 'dh_pysupport' call in debian/rules.

- use debhelper/bpo, change debhelper (>= 5.0.37.2, needed for the new Python policy version) to debhelper (>= 5.0)


- debuild -us -uc
=> unknown option -U
(option -U, from debian/patches/00patch-opts)

need to use patch/bpo
-> fix build-deps
patch (>= 2.5.9-3bpo1)

- debuild -us -uc
=> xargs: invalid option -- d

need to use findutils/bpo
-> fix build-deps:
findutils (>= 4.2.28-1~bpo.1)

- After installation:
hp-print --help
error: This program may not function properly with the version of PyQt that is installed (3.13.0).
error: Incorrect version of pyQt installed. Ver. 3.14 or greater required.
error: PyQt/Qt initialization error. Please check install of PyQt/Qt and try again.

The package works fine with 3.13. We can safely downgrade the requirement to 3.13 in base/g.py.



sylvain@cliss21:/usr/src$ mkdir temp
sylvain@cliss21:/usr/src$ cd temp/
sylvain@cliss21:/usr/src/temp$ cp ../hplip_1.6.7-2~bpo.1.diff.gz .
sylvain@cliss21:/usr/src/temp$ wget http://ftp.debian.org/debian/pool/main/h/hplip/hplip_1.6.7-2.diff.gz
--12:30:47--  http://ftp.debian.org/debian/pool/main/h/hplip/hplip_1.6.7-2.diff.gz
           => `hplip_1.6.7-2.diff.gz'
Résolution de ftp.debian.org... 128.101.240.212
Connexion vers ftp.debian.org[128.101.240.212]:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 247,960 [text/plain]

100%[=================================================================================================================>] 247,960      202.63K/s

12:30:54 (202.10 KB/s) - « hplip_1.6.7-2.diff.gz » sauvegardé [247960/247960]

sylvain@cliss21:/usr/src/temp$ gunzip *
sylvain@cliss21:/usr/src/temp$ interdiff hplip_1.6.7-2.diff hplip_1.6.7-2~bpo.1.diff


mentors.debian.net:
E: hplip source: package-needs-python-policy-debhelper
N:
N:   The source package requests dh_python compatibility level 2 (or
N:   higher) in debian/pycompat but doesn't depend on a new enough
N:   debhelper. A Build-Depends on debhelper (>= 5.0.37.2) is required for
N:   this support.
N:

-> debian/pycompat -> s/2/1/



hplip (1.6.7-2~bpo.1) sarge-backports; urgency=low

  * Rebuild for Sarge - http://www.backports.org/
  * Added dependencies to patch/bpo and findutils/bpo
  * Downgraded pyqt-utils dependency from 3.14 to 3.13 (works ok)
  * Removed Python-policy-related python-support dependency and a
    dh_pysupport call.

 -- Sylvain Beucler <beuc@beuc.net>  Tue, 17 Oct 2006 20:04:28 +0200

In debian/control, add your name:

Uploaders: Torsten Landschoff <torsten@debian.org>, Sylvain Beucler <beuc@beuc.net>

Once you finished compiling your packages, you can try to install them using debi:

/usr/src/hplip-1.6.7$ su -c debi

This will install all the packages generated by the hplip source package :)

When testing and building your package, beware that the clean procedure is not complete. This means that if you build your package, fix something, and rebuild it, there will be a few extra changes. These changes are not functionnaly significants (usually they are non-removed parts of the Debian patches or the build process, but their existence makes your Debian diff unclean. Since sponsors tend to be picky about it (and they can control these changes easily using the interdiff technique), you'd better avoid those.

Therefore, between two compilation, I usually remove the working directory and recreate it using dpkg-source:

cd /usr/src/
rm -rf hplip-1.6.7/
dpkg-source -x hplip_1.6.7-2~bpo.1.dsc


To report to the package maintainer:

  • Switching libsnmp9-dev | libsnmp5-dev to libsnmp5-dev | libsnmp9-dev to work-around 'apt-get build-dep'.
  • sudo dpkg -i hplip... fails - probably because sudo cleans the environment.
  • Possibly precise the patch and findutils dependencies
  • Possibly precise the pyqt-utils dependency
    1. won't work directly w/o 3.14
    2. also work with 3.13, so maybe use 3.13