[lsb-discuss] Generating Debian package repositories for apt-get

Till Kamppeter till.kamppeter at gmail.com
Fri Jun 6 08:28:49 PDT 2008


Hi,

I am currently trying to generate package repositories on our server 
which can be used with high-level package managers. The repositories are 
for the distribution-independent LSB-based printer driver packages. As 
talked about in Austin we need indexed repositories to support things 
like automatic updates in case of security bugs.

The plan is that printer manufacturers upload LSB RPM packages and that 
the server should then automatically alienise them to Debian packages 
and afterwards index the Debian package repository for apt-get. In 
addition, the RPMs should get directly indexed for yum and urpmi.

The server is parker, a 64-bit box. There I have no problem to alienise 
amd64/x86_64 packages, but trying to alienise i386/i486 packages the 
server complains with the following error:

--------------------------------------------------------------------------
till at parker:/srv/www/linuxprinting.org/download/printdriver/RPMS/i486$ 
fakeroot alien -ck splix-1.1.1-2lsb3.2.i486.rpm
Package build failed. Here's the log:
dh_testdir
dh_testdir
dh_testroot
dh_clean -k -d
dh_installdirs
dh_installdocs
dh_installchangelogs
find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
		xargs -0 -r -i cp -a {} debian/splix
dh_compress
dh_makeshlibs
dh_installdeb
dh_shlibdeps
/usr/bin/ldd: line 171: /lib/ld-linux.so.2: No such file or directory
ldd: /lib/ld-linux.so.2 exited with unknown exit code (127)
dpkg-shlibdeps: failure: ldd on 
`debian/splix/opt/splix/cups/lib/filter/rastertospl2' gave error exit 
status 1
dh_shlibdeps: command returned error code 256
make: [binary-arch] Error 1 (ignored)
dh_gencontrol
dpkg-gencontrol: error: current build architecture amd64 does not appear 
in package's list (i386)
dh_gencontrol: command returned error code 65280
make: *** [binary-arch] Error 1
find: splix-1.1.1: No such file or directory
till at parker:/srv/www/linuxprinting.org/download/printdriver/RPMS/i486$
--------------------------------------------------------------------------

With ia32-libs installed I get

--------------------------------------------------------------------------
till at parker:/srv/www/linuxprinting.org/download/printdriver/RPMS/i486$ 
fakeroot alien -ck splix-1.1.1-2lsb3.2.i486.rpm
Package build failed. Here's the log:
dh_testdir
dh_testdir
dh_testroot
dh_clean -k -d
dh_installdirs
dh_installdocs
dh_installchangelogs
find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
		xargs -0 -r -i cp -a {} debian/splix
dh_compress
dh_makeshlibs
dh_installdeb
dh_shlibdeps
/usr/bin/ldd: line 117: 
debian/splix/opt/splix/cups/lib/filter/rastertospl2: No such file or 
directory
dpkg-shlibdeps: failure: ldd on 
`debian/splix/opt/splix/cups/lib/filter/rastertospl2' gave error exit 
status 1
dh_shlibdeps: command returned error code 256
make: [binary-arch] Error 1 (ignored)
dh_gencontrol
dpkg-gencontrol: error: current build architecture amd64 does not appear 
in package's list (i386)
dh_gencontrol: command returned error code 65280
make: *** [binary-arch] Error 1
find: splix-1.1.1: No such file or directory
till at parker:/srv/www/linuxprinting.org/download/printdriver/RPMS/i486$
--------------------------------------------------------------------------

Has someone any idea how to convert these packages without needing a 
physical server for each architecture?

My simple but not perfect repository geerator script (mkrepo) is here:

http://www.linuxprinting.org/download/printdriver/debian/

In the same directory there are also the needed configuration files.

To download packages from this repo, add

deb http://www.openprinting.org/download/printdriver/debian/ lsb3.2 main

to your /etc/apt/sources.list and do

sudo apt-get update

Then you can "apt-get install":

splix
gutenprint
min12xxw
lm1100
cupsddk
cupsddk-drivers
sane-backends
sane-backends-devel
saned

from the OpenPrinting repository, but only for 64-bit PCs ...

    Till




More information about the lsb-discuss mailing list